Picproje Elektronik Sitesi

DİJİTAL & ANALOG ELEKTRONİK => Malzeme Bilgisi => Konuyu başlatan: Karamel - 24 Temmuz 2014, 11:34:34

Başlık: stm external interrupt sorusu
Gönderen: Karamel - 24 Temmuz 2014, 11:34:34
merhaba. STM32F103R8T6 icin semalar olusturuyorum. 6 adet button a ihtiyacim var ve buttonlari external interrupt ile okumak istiyorum. reference manual dan anladigim kadari ile stm lerin butun pinleri ex.interrupt a confugre edilebiliyor. ayrica AFIO_EXTICRX ilede EXTI source u secilebiliyor. yani ben buradan sunu anliyorum ki: butun butonlarimi atiyorum C portuna baglasam yazilimda tek bir interrupt rutini icersinde butonlarimin hepsini okuyabilecegim? dogrumudur ki?


(http://s8.postimg.cc/a42xl4whd/st_sorusu.jpg) (http://postimg.cc/image/a42xl4whd/)
Başlık: Ynt: stm external interrupt sorusu
Gönderen: AsHeS - 24 Temmuz 2014, 12:03:53
Butonları exti ile okursanız debounce problemini çözmek için daha fazla efor harcarsınız mumkun olduğu kadar bir timer içerisinde buton tarama yapın 10 ms den buyuk bir periyotta olsun.

Böylelikle EXTI hattınız daha işe yarar entegrelerin kullanımına kalır.
Başlık: Ynt: stm external interrupt sorusu
Gönderen: Karamel - 24 Temmuz 2014, 12:05:38
hocam bunu forumda okumustum. sanirim muhittin kaplan boyle bir soru sormus. pcb de alternatif olmasi acisindan boyle yapmak istemistim.
Başlık: Ynt: stm external interrupt sorusu
Gönderen: AsHeS - 24 Temmuz 2014, 12:14:47
Alıntı yapılan: Karamel - 24 Temmuz 2014, 12:05:38
hocam bunu forumda okumustum. sanirim muhittin kaplan boyle bir soru sormus. pcb de alternatif olmasi acisindan boyle yapmak istemistim.
STM32F103VB ile yaptığım çalışmadan hatırladığım kadarıyla 16 kanal EXTI var bu kanallardan bazılarının kendine ait interrupt vektörü varken bazılarının vektörü ortak. 0.EXTI kanalı için bütün portların 0.bitleri bağlanabiliyor. İçlerinden birini seçip bağlıyorsun.
İlla ki bütün EXTI ları tek bir fonksiyondan yönetmek istiyorsan startup dosyasında ki vektör tablosuna ya da kesme fonksiyonunun içerisinde aynı fonksiyonu çağırabilirsin.