Merhabalar. 24 v bir akü ile robotun ön ve arkadındaki toplam 4 ledi yakacağım. Stm32 board kullanmaktayım. Lambalar uzaktan kumandalı joystick ile yansın istiyorum bununla ilgili nasıl bir yol izlemeliyim?
Nasıl bir kumanda belirtmemişsiniz ama uzaktan kumanda standart 50 Hz ppm sinyalle çalışıyorsa;
Alıcının ilgili kanalını stm'nin kesme üretecek bir pinine girin. EXTI pinlerinden biri.
İlgili kesmeyi hem düşen hemde yükselen kenarda kesme üretecek şekilde yapılandırın.
Bir de 1mikro saniyede 1 artacak timer kurun.
Yani mcu 72Mhz de çalışıyorsa TIMx->PSC değeri (72-1) olsun.
Kesme içerisinde yükselen kenarda timer'ın sayıcısını sıfırlayın.
TIMx->CNT = 0;
Kesme içerisinde düşen kenarda TIMx-CNT değerini okuyun.
Bu şekilde yaptığınızda; genel olarak alıcıdan gelen PPM sinyalinde joystick orta konumda iken timer'dan okuduğunuz değer 1500 olacaktır. Min 1000 max 2000 değeri okunur.
Okuduğunuz değere göre lambaları yakarsınız.
Joystick konumuna göre farklı parlaklık vs. isterseniz bir timer daha kullanıp okuduğunuz değerle orantılı Duty oranı olan PWM üretmeniz gerekir.