Teşekkürler emeğinize sağlık , bn özellikle pic ile birçok Arge gelistiriyorum ama çok yakında STM kartlarına geçiş yapıcam . Pic mikrodenetleyiciler ile hertürlü donanımı defalarca kullandığım için STM de çok zorlanacagimi düşünmüyorum açıkçası . Arm tabanlı mikrodenetleyicilere tam olarak başladığımda çok daha yakın bi öğrenciniz olucam işallah ☺
Hocam bu PSC ve ARR'nin degerlerinin özel bir sebebi var mı? Yani 48MHz'den 48'e bölüp 1MHz'e çekip ordan 50'ye bölüp 20kHz çeksek de aynı mı olacaktı?
pwm sinyali yazılımdan bağımsız olarak timer donanımında üretiliyor. Peki while döngüsünün içine yazılan pwm_sweep fonksiyonundaki örneğin pwm_set_duty_cycle(sweep, CHANNEL1); satırının çalıştığı toplam süre ile onun bir altındaki pwm_set_duty_cycle(100-sweep, CHANNEL2); satırının çalıştırıldığı süreyi kim ayarlıyor. Şöyle bir durum olabilir mi, ilk satır x kadar saniye çalışıyor, altındaki 3/2*x kadar saniye çalışıyor?
pwm_set_duty_cycle fonksiyonları sadece PWM sinyalinin duty cycle'ının değiştirilmesi gerektiğinde çağrılan fonksiyonlar. Onun dışında PWM sinyali zaten en son duty cycle değeri ile üretilmeye devam ediliyor.
@@coskuntasdemirUA-cam Anladım fakat videodaki örnekte pwm'in duty cycle'ını değiştiren kod while(1)'in içinde olduğu için, duty cycle'ın değiştirilme sıklığı kesin olarak bilinemiyor. İşlemcinin yoğunluğuna bağlı olarak farklı zaman aralıklarında çalışacaktır while(1)'in içindeki kod. Bunun yerine pwn duty cycle'ını değiştiren kodu, çağırılma frekansı sabit olarak ayarlanmış bir timer interrupt'ının callback fonksiyonunun içine koyarsak, duty cycle değişimlerinin sabit ve aynı aralıkta olacağından emin olabiliriz degil mi?
@@maliakbulut Kesinlikle doğru. Aksi halde istediğimiz zarfı üretemeyiz. Bunun iki yolu var: Birisi bir zamanlayıcı kesmesinde bu duty cycle'ı yönetebilirsiniz, diğeri de main döngünüzün frekansının sabit kaldığını garanti edersiniz.
Çok faydalı bir iş yapıyorsun hocam; ancak lütfen ARDUNYO deme. Bu, PALYANÇO gibi geliyor kulağa. Son derece itici. Doğru okunuşunu siz söyleyeceksiniz ki, izleyen gençler de doğrusunu öğrenecek. Aslında basit: Ne görüyorsak onu okuıyacağız: ar-du-i-no. İngilice'de, Almanca'da, İtalyanca'da hep böyle.
Çok kıymetli bir şey yapıyorsunuz hocam emekleriniz için çok teşekkür ederim.
sen nası bir kralsın
Teşekkürler emeğinize sağlık , bn özellikle pic ile birçok Arge gelistiriyorum ama çok yakında STM kartlarına geçiş yapıcam . Pic mikrodenetleyiciler ile hertürlü donanımı defalarca kullandığım için STM de çok zorlanacagimi düşünmüyorum açıkçası .
Arm tabanlı mikrodenetleyicilere tam olarak başladığımda çok daha yakın bi öğrenciniz olucam işallah ☺
hangi pin çıkış olarak alındı. 4 tane kanal yok mu
Hocam bu PSC ve ARR'nin degerlerinin özel bir sebebi var mı? Yani 48MHz'den 48'e bölüp 1MHz'e çekip ordan 50'ye bölüp 20kHz çeksek de aynı mı olacaktı?
İstediğin frekansı elde ettikten sonra farklı kombinasyonlar kullanılabilir
pwm sinyali yazılımdan bağımsız olarak timer donanımında üretiliyor. Peki while döngüsünün içine yazılan pwm_sweep fonksiyonundaki örneğin pwm_set_duty_cycle(sweep, CHANNEL1); satırının çalıştığı toplam süre ile onun bir altındaki pwm_set_duty_cycle(100-sweep, CHANNEL2); satırının çalıştırıldığı süreyi kim ayarlıyor. Şöyle bir durum olabilir mi, ilk satır x kadar saniye çalışıyor, altındaki 3/2*x kadar saniye çalışıyor?
pwm_set_duty_cycle fonksiyonları sadece PWM sinyalinin duty cycle'ının değiştirilmesi gerektiğinde çağrılan fonksiyonlar. Onun dışında PWM sinyali zaten en son duty cycle değeri ile üretilmeye devam ediliyor.
@@coskuntasdemirUA-cam Anladım fakat videodaki örnekte pwm'in duty cycle'ını değiştiren kod while(1)'in içinde olduğu için, duty cycle'ın değiştirilme sıklığı kesin olarak bilinemiyor. İşlemcinin yoğunluğuna bağlı olarak farklı zaman aralıklarında çalışacaktır while(1)'in içindeki kod.
Bunun yerine pwn duty cycle'ını değiştiren kodu, çağırılma frekansı sabit olarak ayarlanmış bir timer interrupt'ının callback fonksiyonunun içine koyarsak, duty cycle değişimlerinin sabit ve aynı aralıkta olacağından emin olabiliriz degil mi?
@@maliakbulut Kesinlikle doğru. Aksi halde istediğimiz zarfı üretemeyiz.
Bunun iki yolu var: Birisi bir zamanlayıcı kesmesinde bu duty cycle'ı yönetebilirsiniz, diğeri de main döngünüzün frekansının sabit kaldığını garanti edersiniz.
Çok faydalı bir iş yapıyorsun hocam; ancak lütfen ARDUNYO deme. Bu, PALYANÇO gibi geliyor kulağa. Son derece itici. Doğru okunuşunu siz söyleyeceksiniz ki, izleyen gençler de doğrusunu öğrenecek. Aslında basit: Ne görüyorsak onu okuıyacağız: ar-du-i-no. İngilice'de, Almanca'da, İtalyanca'da hep böyle.
sıkıntılı mısın birader