Arkadaşlar, tiny85'de değişken pwm çıkışı nasıl yapılır ?
frekansını ve duty oranını potansiyometre ile nasıl değiştirebilirim ? Bunun standart kodlarla yapılamayacağını öğrendim, işlemcinin datasheet dosyasını okuyarak bunu yapabilmem neredeyse imkansız, arduino uno'da pwm.h kütüphanesi ile, derin kodlara girmeden kolayca yapabiliyorduk ama bu kütüphane tiny85'de çalışmıyor, var mı yardımcı olabilecek ? Yada, şu dersleri öğrenirsen yaparsın diyebileceğiniz bir kaynak var mı ? İnternette araştırınca tccr, tccr, cs, wgm gibi özel kısaltmalarla yazılmış tuhaf kodlar görüyorum, deniyorum çalışmıyor.
Ben zaten 1024'e bölmüştüm. Hepsini 1 yaparsan 16384'e böler.
O koddaki sözcüklerin hiçbiri C diline ait değil, hepsi mikrodenetleyiciye özel sembolik isimler. Amaçları kodu daha anlaşılabilir hale getirmekten ibaret. C dilindeki "macro" özelliği ile karmaşık ifadeleri daha akılda kalıcı ifadelerle değiştirmek mümkün oluyor. https://nongnu.org/avr-libc/user-manual/group__avr__sfr.html
Şu linkte birkaç tanımlanmış macroya bakabilirsin. Gördüğün gibi _BV(bit) macrosu derlenmeden önce (1 << (bit)) şeklinde açılıyor. Bu hem okunabilirliği arttırır hem de bazı hataları önler.
TCCR1 = _BV(CS13) | _BV(CS11) | _BV(CS10); ifadesini TCCR1 = 11; şeklinde yazarak ta geçebilirdik. Ama koda 3 gün sonra bakınca ne anlama geldiğini hatırlayamazdık.
Öğrenme konusunda şunu söyleyeyim. Burada 2 ana başlık var. Birisi C prog. dili, diğeri mikrodenetleyici. Öncelikle bilgisayarda C çalışmanı tavsiye ederim. Öğrendiklerinin %99'u mikrodenetleyicilerde de geçerli olacak.
tiny85'de değişken pwm çıkışı nasıl yapılır ?
frekansını ve duty oranını potansiyometre ile nasıl değiştirebilirim ?
Bunun standart kodlarla yapılamayacağını öğrendim,
işlemcinin datasheet dosyasını okuyarak bunu yapabilmem neredeyse imkansız,
arduino uno'da pwm.h kütüphanesi ile, derin kodlara girmeden kolayca yapabiliyorduk
ama bu kütüphane tiny85'de çalışmıyor, var mı yardımcı olabilecek ?
Yada, şu dersleri öğrenirsen yaparsın diyebileceğiniz bir kaynak var mı ?
İnternette araştırınca tccr, tccr, cs, wgm gibi özel kısaltmalarla yazılmış tuhaf kodlar görüyorum, deniyorum çalışmıyor.
Attiny85 Datasheet
DH forumlarında vakit geçirmekten keyif alıyor gibisin ancak giriş yapmadığını görüyoruz.
Üye Ol Şimdi DeğilÜye olduğunda özel mesaj gönderebilir, beğendiğin konuları favorilerine ekleyip takibe alabilir ve daha önce gezdiğin konulara hızlıca erişebilirsin.
< Bu mesaj bu kişi tarafından değiştirildi limbesh -- 25 Mart 2020; 16:9:38 >