STM32 Programlama - Kesmeler -4 - EXTI Birimi Kullanarak Buton ile Kesme Oluşturma Örneği

  Рет қаралды 10,307

Coşkun Taşdemir

Coşkun Taşdemir

Күн бұрын

Пікірлер: 47
@volkankasikci2608
@volkankasikci2608 4 жыл бұрын
Bilgilerini aktarmakta çekinmeyen türkiyedeki sayılı insalardansınız.Elinize sağlık
@recepturkyilmaz5243
@recepturkyilmaz5243 4 жыл бұрын
Çok verimli bir interrupt serisi oldu hocam. Teşekkür ederim. Eğitim Serilerinin devamını bekliyorum. 👏👏👏
@mucod1613
@mucod1613 4 жыл бұрын
hocam sayenizde temel mantıkları gayet iyi anladım serileriniz için teşekkür ederim
@furkanozcan6124
@furkanozcan6124 4 жыл бұрын
Hocam eğitimler çok verimli oluyor emeğinize sağlık.
@ceyhunuysal5307
@ceyhunuysal5307 4 жыл бұрын
Çok temiz ve açıklayıcı bir video olmuş. Elinize sağlık hocam.
@ahmetserdr2920
@ahmetserdr2920 4 жыл бұрын
Hocam sizi çok beğeniyorum, hakkınız ödenmez gercekten. Hocam sizden ricam olacak, bir videonuzda da gizlilik ilkesi olmayan yaptığınız buyuk projeleri gösterebilir misiniz? Fikir sahibi olmamız için
@coskuntasdemirYoutube
@coskuntasdemirYoutube 4 жыл бұрын
Aslında kendi yaptığım büyük proje pek yok. İçinde çalıştığım projeler oldu, onlardan bahsederim belki ileride.
@beyhandagitan2246
@beyhandagitan2246 26 күн бұрын
Kesme örneğinde anlattığınız PR bayrak resetlemeyi, HAL zaten otomatik yapıyor . RAIN SENSOR, OPTIC SENSOR ve SWITCH üçlü bağladım. Çalıştı ama dediğiniz gibi SWITCH gürültü yapıyor. Ama hangi GPIO den geldiğini ayırt edebilmek için ek kontrol işlemleri yapmak gerekiyor. HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin) de bu ayrım edebilme mümkün. Teşekkürler
@wolfteam_deliKurt
@wolfteam_deliKurt Жыл бұрын
Kesmeler videosundaki her şeyi inceledim ve kendi notlarımı alarak kodları yazdım ama ledi yakamıyorum. Acaba ".ioc" uzantısından kesmeler için ekstra bir ayar yapmamız gerekiyor? SYSCFG artık yok. Bu yüzden EXTI 13'ü “ AFIO->EXTICR[4] |= AFIO_EXTICR4_EXTI13_PC; “ halinde seçmem gerekti.
@unalfaruk
@unalfaruk 3 жыл бұрын
Merhaba Hocam, Kesme tetiklendiğinde meydana gelen pending bitinin "1" olması durumunu ne zaman sıfırlamak uygundur? Bunun bir önemi var mı? Sizin örneğinizde mesela, fonksiyona girer girmez sıfırladınız (16:08) sonra LED durumunu değiştirdiniz, bunun özel bir sebebi var mı? Bu biti interrupt sonlandırıcı olarak hayal etmiştim. Geliştirici tüm işlemleri yapar, bu biti sıfırlar ve ana program dönüşünü tetikler gibi. Sanıyorum bununla alakalı değil, ana program için interrupt fonksiyonun sonlanması bekleniliyor, bu bite bakılmıyor.
@coskuntasdemirYoutube
@coskuntasdemirYoutube 3 жыл бұрын
En başta sıfırlamakta faydar var. Bu bitin yazılması ile interruptan çıkılması arasında çok kısa bir süre olursa tekrar "boş yere" interrupta girme gibi durumlar oluşabilir. Pending biti "interrupt isteği gelmiş ama henüz CPU tarafından işleme alınmamış durumunu" gösterir. Eğer interruptan çıktıktan sonra hala pending biti sıfırlanmamışta tekrar interrupta girilir.
@tutankamon31
@tutankamon31 2 жыл бұрын
Teşekkürler, oldukça faydalı.
@semihsenyuz7436
@semihsenyuz7436 2 жыл бұрын
MerhabaHocam SYSCFG ve GPIO'ların clocklarını açıyoruz fakat EXTI çevre biriminin neden Clock'u yok o konu hakkında bilginiz var mıdır?Yoksa Reference Manuel'de ne ise o mudur? Kolay gelsin
@coskuntasdemirYoutube
@coskuntasdemirYoutube 2 жыл бұрын
Uzun zaman oldu bu konulara bakmayalı ama hatırladığım kadarıyla EXTI için SYSCFG'deki seçim ve ilgili IO'nun clock'unu açmak yetiyordu.
@beratyldzer5992
@beratyldzer5992 3 жыл бұрын
Hocam emekleriniz için çok teşekkürler, genel kültür açısından öğrenmek istiyorum, nvic için priority ayarlarını yapabileceğimiz registerları reference manuel de bulamadım. Acaba bununla ilgili register ismi veya sayfa numarası yazabilir misiniz?
@coskuntasdemirYoutube
@coskuntasdemirYoutube 3 жыл бұрын
NVIC birimi de Cortex-Mx çekirdeği gibi Arm tarafından tasarlanan bir birim olduğundan farklı bir dökümanda yer alıyor: cortex m0 programming manual (kullandığın modele göre m0, m3, m4 vs.. olabilir)
@coderhex1675
@coderhex1675 4 жыл бұрын
Kaliteli bir içerik olmuş... Tesekkur ederim. CMSIS-Driver API'ı ile ayni kodun farklı marka mcularda calisabilecek sekilde firmware yazabilmek icin tutorial bulmakta sıkıntı yasiyorum. Boyle bir video dusunurmuydunuz?
@coskuntasdemirYoutube
@coskuntasdemirYoutube 4 жыл бұрын
CMSIS-Driver API'lerini hiç kullanmadım. Aslında yazılımınızı geliştirirken katmanlara ayırıp geliştirdiğinizde farklı modele uyarlamak da en az eforla gerçekleşebilir. Yani butonu okuyan fonksiyonla IO'lara erişen kısımlar ayrı katmanlar olmalı.
@motosohpet9325
@motosohpet9325 4 жыл бұрын
Hemen beğenelimde sabah izlerim
@fatihsatlms4971
@fatihsatlms4971 2 жыл бұрын
Hocam no pull up no pull down ne demek tam olarak? Bir buton ikisinden biri olmak zorunda değil mi?
@coskuntasdemirYoutube
@coskuntasdemirYoutube 2 жыл бұрын
Fatih bunun için biraz elektronik konularına bakman lazım pull-up ve pull-down direnci diye aratabilirsin.
@furkanozturk9577
@furkanozturk9577 4 жыл бұрын
Coşkun hocam endüstriyel ürün tasarımı için esp32s stm32f1xx'den hangisi daha iyidir bilgi verir misiniz? İyi ve sağlıklı günler dilerim :)
@coskuntasdemirYoutube
@coskuntasdemirYoutube 4 жыл бұрын
İkisi de kullanılıyor gördüğüm kadarıyla. Ama kategorileri biraz farklı: ESP32 daha çok internet bağlantılı projelerde kullanılıyor.
@mursitkc5328
@mursitkc5328 4 жыл бұрын
Hocam Allah razi olsun🙏🙏. Kesme fonksiyonun icinde HAL_Delay() calistiramiyirum. Bir oneriniz var midir?
@coskuntasdemirYoutube
@coskuntasdemirYoutube 4 жыл бұрын
Kesme içinde uzun işlemler yapmak ve hal delay kullanmak iyi bir fikir değil. Kesmede en kısa işi yapıp uzun işi ana fonksiyonda halledebilirsin
@enesklc247
@enesklc247 3 жыл бұрын
hocam iyi günler şu satırda "void EXTI0_IRQHandler(void)" 'EXTI0_IRQHandler' defined but not used [-Wunused-function] böyle bir hata alıyorum nasıl çözebilirim hatayı ?
@coskuntasdemirYoutube
@coskuntasdemirYoutube 3 жыл бұрын
Fonksiyonun ismi ..startup.s dosyasında yer aldığı haliyle birebir aynı olmalı, muhtemelen farklılık var. Dosyadan copy-paste yaparak alabilirsin ismi.
@wolfteam_deliKurt
@wolfteam_deliKurt Жыл бұрын
Hocam, AFIO->EXTICR[4] |= AFIO_EXTICR4_EXTI13_PC; yerine AFIO->EXTICR[4] |= (1
@coskuntasdemirYoutube
@coskuntasdemirYoutube Жыл бұрын
AFIO_EXTICR4_EXTI13_PC tanımına gidip baktığında aynı değeri görüyorsan kullanabilirsin demektir.
@wolfteam_deliKurt
@wolfteam_deliKurt Жыл бұрын
@@coskuntasdemirKZbin tamamdır hocam çok teşekkür ederim
@enesbaydan6206
@enesbaydan6206 4 жыл бұрын
Hocam Merhabalar aynı çalışmayı stm32f429zi nucleo kartında yaptım expected hataları veriyor. error: expected identifier or '(' before 'GPIO_TypeDef' aynı hatayı SYSCFG_BASE ve EXTI içinde verdi hata koduna basınca stm32f429xx.h'nın large file dosyasını gidiyor. Hata tam olarak nerde acaba cevaplarsanız sevinirim.
@coskuntasdemirYoutube
@coskuntasdemirYoutube 4 жыл бұрын
Hataya göre bir yazım hatası var muhtemelen. EXTI hatlarının tanımları kullandığın işlemcide farklı olabilir, onları da kontrol etmek gerekiyor.
@enesbaydan6206
@enesbaydan6206 4 жыл бұрын
@@coskuntasdemirKZbin parantez işaretlerin de yazım hatası yapmışım bu arada videolar için sağ olun hocam umarım devamı gelir. Takipteyiz
@furkangungor6723
@furkangungor6723 4 жыл бұрын
Hocam iyi günler,GPIO ayarlamalarında MODER ayarını yaparken |= kullanmak yerine neden &=~ şeklinde yazdınız ?
@coskuntasdemirYoutube
@coskuntasdemirYoutube 4 жыл бұрын
GPIO pinini giriş olarak ayarlamak için bunu yapıyoruz. &=~ bit sıfırlama için kullanılıyor. GPIO hakkındaki videolarda ayrıntıları bulabilirsin.
@furkangungor6723
@furkangungor6723 4 жыл бұрын
Hocam datasheetde reset durumda geliyor diye hatırlıyorum registerlar.biti 0 yapmak gerekli mi bu durumda zaten reset durumda.Ayrıca bu yöntemle tanımlama yapmak datasheetde yazılan üretici tarafından rezerve edilen bit kısımlarında sıkıntı yaratır mı yani and yaptığımız için o kısımları set etme durumu olur mu?
@coskuntasdemirYoutube
@coskuntasdemirYoutube 4 жыл бұрын
@@furkangungor6723 Evet default durumda 0 olarak geliyor. Ama bunun istisnaları da olabiliyor. Bir de bizim bu ayarları yaptığımız noktada herşeyin default değerlerde olduğunu varsayamayız. %90 doğru çıkabilir ama böyle olmayacağı durumlar da olabilir. Reserved bölgelerle ilgili hiç bir işlem yapmamak gerekir. Son sorunu tam anlamadım ama orada sadece VE işlemi yok. VE işlemi ve tersleme kullanılarak sadece belirli bit ya da bitlerin sıfırlaması yapılıyor.
@furkangungor6723
@furkangungor6723 4 жыл бұрын
@@coskuntasdemirKZbintüm sorularımın cevaplarını aldım teşekkürler Hocam
@mustafagarip4644
@mustafagarip4644 2 жыл бұрын
Teşekkürler hocam.
@abdurrahmanfirat6579
@abdurrahmanfirat6579 10 ай бұрын
@berktuncer477
@berktuncer477 4 жыл бұрын
Hocam merhaba, EXTICR[3] olarak yazdığımız satırda 3 ne anlama geliyor neye göre üç yazıyoruz
@coskuntasdemirYoutube
@coskuntasdemirYoutube 4 жыл бұрын
EXTICR ayarları için 4 tane register var bunlar dizi şeklinde tanımlanmış. EXTICR1..2..3..4 gibi de tanımlanabilirdi hatta bazı modeller de böyle yapmışlar. Birşey farketmiyor yani. Bizim ilgilendiğimi 13 nolu pine ait ayarlar 4. register'da o yüzden EXTICR[3] registeri ile ilgileniyoruz.
@berktuncer477
@berktuncer477 4 жыл бұрын
@@coskuntasdemirKZbin Anladım hocam çok teşekkürler.
@wolfteam_deliKurt
@wolfteam_deliKurt Жыл бұрын
@@coskuntasdemirKZbin hocam ben anlayamadım da rica etsem yeniden açıklayabilir misiniz? Eğitimler için çok teşekkür ederim, çok faydalı oluyor.
@wolfteam_deliKurt
@wolfteam_deliKurt Жыл бұрын
onun yerine EXTICR[4] yazdım
She made herself an ear of corn from his marmalade candies🌽🌽🌽
00:38
Valja & Maxim Family
Рет қаралды 18 МЛН
My scorpion was taken away from me 😢
00:55
TyphoonFast 5
Рет қаралды 2,4 МЛН
Сестра обхитрила!
00:17
Victoria Portfolio
Рет қаралды 906 М.
Interrupts | #8 STM32 GPIO button interrupt
23:48
Terminal Two
Рет қаралды 59 М.
STM32 GPIO HAL Kütüphanesi İncelemesi
21:44
Coşkun Taşdemir
Рет қаралды 10 М.
STM32 Programlama - Seri Haberleşme - 1 - Giriş
16:43
Coşkun Taşdemir
Рет қаралды 19 М.
C++ Dersleri - 1 Saatte Tamamen C++ Öğren!
1:08:26
Kavax
Рет қаралды 37 М.
50 ADIMDA GÖMÜLÜ SİSTEMLERE GİRİŞ YAP | STM32
29:11
Electrobrains
Рет қаралды 8 М.
STM32CubeIDE ve STM32 HAL Kütüphanesi ile EXTI Kesme Vektörü Otomatik Konfigürasyon
55:26
Gömülü Sistemler Mühendislik Eğitimi (GomuluSistemler.Org)
Рет қаралды 2,5 М.
STM32 Programlama -1- GPIO Birimi Yapısı ve Register'ları
25:49
Coşkun Taşdemir
Рет қаралды 31 М.
She made herself an ear of corn from his marmalade candies🌽🌽🌽
00:38
Valja & Maxim Family
Рет қаралды 18 МЛН