Picproje Elektronik Sitesi

PICPROJE PROGRAMLAMA DERSLERİ => STM32 Örnekleri => Konuyu başlatan: mfatihkoseoglu - 11 Haziran 2019, 01:49:57

Başlık: STM32F4 DİSCOVERY KARTI İLE ARM PROGRAMLAMA DERSLERİ
Gönderen: mfatihkoseoglu - 11 Haziran 2019, 01:49:57
Merhaba arkadaşlar, yeterli türkçe kaynağın olmadığı bu alanda bir nebze de benim katkım olsun diye, youtube üzerinden derslere başladım. Derslerde, registerlar/ Std periph kütüphaneleri / hal kütüphaneleri kullanarak mantığını kavramaya/kavratmaya çalışıyorum. Sizlerinde desteklerini bekliyorum. Umarım hepimiz için faydalı bir ders serisi olur. İyi çalışmalar dilerim. (Abone olmayı unutmayınız)

Ders 1: Gömülü Sistem Nedir?


Başlık: Ynt: STM32F4 DİSCOVERY KARTI İLE ARM PROGRAMLAMA DERSLERİ
Gönderen: mfatihkoseoglu - 14 Haziran 2019, 18:32:20
Mikroişlemci Nedir Ve Nasıl Çalışır? #Ders2

Başlık: Ynt: STM32F4 DİSCOVERY KARTI İLE ARM PROGRAMLAMA DERSLERİ
Gönderen: mfatihkoseoglu - 14 Haziran 2019, 18:32:57
Mikrodenetleyici Nedir Ve Nasıl Çalışır? #Ders3

Başlık: Ynt: STM32F4 DİSCOVERY KARTI İLE ARM PROGRAMLAMA DERSLERİ
Gönderen: mfatihkoseoglu - 14 Haziran 2019, 18:33:26
STM32F407VG DİSCOVERY BOARD TANITIMI #Ders4

Başlık: Ynt: STM32F4 DİSCOVERY KARTI İLE ARM PROGRAMLAMA DERSLERİ
Gönderen: mfatihkoseoglu - 14 Haziran 2019, 18:34:10
STM32F4 Programlamak İçin Gerekli Olan Dosyaların İndirilmesi #Ders5

Başlık: Ynt: STM32F4 DİSCOVERY KARTI İLE ARM PROGRAMLAMA DERSLERİ
Gönderen: mfatihkoseoglu - 14 Haziran 2019, 18:34:56
ATOLLIC TRUE STUDİO VE DİĞER PROGRAMLARIN KURULMASI #Ders6

Başlık: Ynt: STM32F4 DİSCOVERY KARTI İLE ARM PROGRAMLAMA DERSLERİ
Gönderen: mfatihkoseoglu - 14 Haziran 2019, 18:36:13
STM32F4 DISCOVERY CLOCK CONFİGURASYON VE PLL AYARLARI #Ders7

Başlık: Ynt: STM32F4 DİSCOVERY KARTI İLE ARM PROGRAMLAMA DERSLERİ
Gönderen: mfatihkoseoglu - 14 Haziran 2019, 18:36:35
STM32F4 İçin STM32CubeMx ile Clock Configurasyonu #Ders8

Başlık: Ynt: STM32F4 DİSCOVERY KARTI İLE ARM PROGRAMLAMA DERSLERİ
Gönderen: mfatihkoseoglu - 14 Haziran 2019, 18:36:57
STM32F4 İçin Registerlar ile Clock Configurasyonu #Ders9

Başlık: Ynt: STM32F4 DİSCOVERY KARTI İLE ARM PROGRAMLAMA DERSLERİ
Gönderen: mfatihkoseoglu - 14 Haziran 2019, 18:37:22
STM32F407VG İle Led Blink Uygulaması Registerlar İle #Ders10

Başlık: Ynt: STM32F4 DİSCOVERY KARTI İLE ARM PROGRAMLAMA DERSLERİ
Gönderen: Tagli - 14 Haziran 2019, 19:36:18
Videolarınız güzel olmuş, elinize sağlık. Şahsen ben de Cube kullanmadan doğrudan register seviyesinde programlamayı tercih ediyorum.

Ancak her bit için hesap makinesine bakmak zorunda değilsiniz. Hem bu şekilde yazıldığında kodun okunurluğu büyük ölçüde azalıyor. Bunun yerine header dosyalarında ön tanımlanmış bit isimlerini kullanmak daha iyi olacaktır. Elbette bu şekilde kod daha ekranda (işlemci hafızasında değil) daha çok satır kaplayacaktır ama bu sorun değil bence.

Aşağıda STM32F407VG için örnek bir clock ve GPIO ayar kodu var. Kod bu şekilde yazıldığında, sadece koda bakarak hangi bacağın ne işe yaradığını belirlemek daha kolay olacaktır.
	
// Enabling Clock Signals
	
RCC->AHB1ENR |= RCC_AHB1ENR_GPIOAEN // Enable PortA
	
	
	
RCC_AHB1ENR_GPIOBEN // Enable PortB
	
	
	
RCC_AHB1ENR_GPIODEN // Enable PortD
	
	
	
RCC_AHB1ENR_DMA1EN// Enable DMA1
	
RCC->APB1ENR |= RCC_APB1ENR_TIM3EN // Enable TIM3
	
	
	
RCC_APB1ENR_TIM6EN // Enable TIM6
	
	
	
RCC_APB1ENR_SPI2EN // Enable SPI2
	
	
	
RCC_APB1ENR_USART2EN// Enable USART2
	
// USB Clock is activated in its own module

// GPIO Settings
	
GPIOA->AFR[0] |= (<< GPIO_AFRL_AFSEL2_Pos// PA2: (AF7) USART2 TX
	
	
	
| (
<< GPIO_AFRL_AFSEL3_Pos); // PA3: (AF7) USART2 RX
	
GPIOA->AFR[1] |= (10 << GPIO_AFRH_AFSEL11_Pos// PA11: (AF10) OTG_FS_DM
	
	
	
| (
10 << GPIO_AFRH_AFSEL12_Pos); // PA12: (AF10) OTG_FS_DP
	
GPIOA->MODER |= (0b10 << GPIO_MODER_MODE2_Pos// PA2: (AF7) USART2 TX
	
	
	
| (
0b10 << GPIO_MODER_MODE3_Pos// PA3: (AF7) USART2 RX
	
	
	
| (
0b10 << GPIO_MODER_MODE11_Pos// PA11: (AF10) OTG_FS_DM
	
	
	
| (
0b10 << GPIO_MODER_MODE12_Pos); // PA12: (AF10) OTG_FS_DP
	
GPIOA->PUPDR |= (0b01 << GPIO_PUPDR_PUPD3_Pos); // PA3: (PU) USART2 RX
	
GPIOA->OSPEEDR |= (0b01 << 4// PA2: (Medium Speed) USART2 TX
	
	
	
| (
0b01 << 22// PA11: (Medium Speed) OTG_FS_DM
	
	
	
| (
0b01 << 24); // PA12: (Medium Speed) OTG_FS_DP

Başlık: Ynt: STM32F4 DİSCOVERY KARTI İLE ARM PROGRAMLAMA DERSLERİ
Gönderen: bit01 - 15 Haziran 2019, 14:32:09
İçerikler çok güzel ve anlaşılır. Register düzeyinde çalışıp, hal liblerle hiç uğraşmadan detaylı projelerle usart, spi, i2c, dac, pwm vs her konuya değinilirse türkçe en sağlam kaynak olur bence. Ayrıca döküman üzerinden her konunun gösterilmesi çok güzel. Bir çok kişi eğitim çekiyor ama yarım kalıyor hep. İnşallah devam edersiniz. Kolay gelsin emeğinize sağlık.
Başlık: Ynt: STM32F4 DİSCOVERY KARTI İLE ARM PROGRAMLAMA DERSLERİ
Gönderen: mfatihkoseoglu - 16 Haziran 2019, 19:15:06
Alıntı yapılan: Tagli - 14 Haziran 2019, 19:36:18Videolarınız güzel olmuş, elinize sağlık. Şahsen ben de Cube kullanmadan doğrudan register seviyesinde programlamayı tercih ediyorum.

Ancak her bit için hesap makinesine bakmak zorunda değilsiniz. Hem bu şekilde yazıldığında kodun okunurluğu büyük ölçüde azalıyor. Bunun yerine header dosyalarında ön tanımlanmış bit isimlerini kullanmak daha iyi olacaktır. Elbette bu şekilde kod daha ekranda (işlemci hafızasında değil) daha çok satır kaplayacaktır ama bu sorun değil bence.

Aşağıda STM32F407VG için örnek bir clock ve GPIO ayar kodu var. Kod bu şekilde yazıldığında, sadece koda bakarak hangi bacağın ne işe yaradığını belirlemek daha kolay olacaktır.
	
// Enabling Clock Signals
	
RCC->AHB1ENR |= RCC_AHB1ENR_GPIOAEN // Enable PortA
	
	
	
RCC_AHB1ENR_GPIOBEN // Enable PortB
	
	
	
RCC_AHB1ENR_GPIODEN // Enable PortD
	
	
	
RCC_AHB1ENR_DMA1EN// Enable DMA1
	
RCC->APB1ENR |= RCC_APB1ENR_TIM3EN // Enable TIM3
	
	
	
RCC_APB1ENR_TIM6EN // Enable TIM6
	
	
	
RCC_APB1ENR_SPI2EN // Enable SPI2
	
	
	
RCC_APB1ENR_USART2EN// Enable USART2
	
// USB Clock is activated in its own module

// GPIO Settings
	
GPIOA->AFR[0] |= (<< GPIO_AFRL_AFSEL2_Pos// PA2: (AF7) USART2 TX
	
	
	
| (
<< GPIO_AFRL_AFSEL3_Pos); // PA3: (AF7) USART2 RX
	
GPIOA->AFR[1] |= (10 << GPIO_AFRH_AFSEL11_Pos// PA11: (AF10) OTG_FS_DM
	
	
	
| (
10 << GPIO_AFRH_AFSEL12_Pos); // PA12: (AF10) OTG_FS_DP
	
GPIOA->MODER |= (0b10 << GPIO_MODER_MODE2_Pos// PA2: (AF7) USART2 TX
	
	
	
| (
0b10 << GPIO_MODER_MODE3_Pos// PA3: (AF7) USART2 RX
	
	
	
| (
0b10 << GPIO_MODER_MODE11_Pos// PA11: (AF10) OTG_FS_DM
	
	
	
| (
0b10 << GPIO_MODER_MODE12_Pos); // PA12: (AF10) OTG_FS_DP
	
GPIOA->PUPDR |= (0b01 << GPIO_PUPDR_PUPD3_Pos); // PA3: (PU) USART2 RX
	
GPIOA->OSPEEDR |= (0b01 << 4// PA2: (Medium Speed) USART2 TX
	
	
	
| (
0b01 << 22// PA11: (Medium Speed) OTG_FS_DM
	
	
	
| (
0b01 << 24); // PA12: (Medium Speed) OTG_FS_DP



Sayın hocam cevap için teşekkür ederim, bilmeyen arkadaşlar için daha anlaşılır olsun diye hesap makinesi ile gösteriyorum, yani seviyeyi çok daha temel tutuyorum. Yine de tavsiyelerinizi dikkate alacağım.
Başlık: Ynt: STM32F4 DİSCOVERY KARTI İLE ARM PROGRAMLAMA DERSLERİ
Gönderen: mfatihkoseoglu - 16 Haziran 2019, 19:16:13
Alıntı yapılan: bit01 - 15 Haziran 2019, 14:32:09İçerikler çok güzel ve anlaşılır. Register düzeyinde çalışıp, hal liblerle hiç uğraşmadan detaylı projelerle usart, spi, i2c, dac, pwm vs her konuya değinilirse türkçe en sağlam kaynak olur bence. Ayrıca döküman üzerinden her konunun gösterilmesi çok güzel. Bir çok kişi eğitim çekiyor ama yarım kalıyor hep. İnşallah devam edersiniz. Kolay gelsin emeğinize sağlık.

Hocam teşekkür ederim, malesef o dersler deki eksikleri gördüğüm için bu tarzda ilerliyorum, umarım faydası olur. Güzel yorumunuz için teşekkür ederim. İyi çalışmalar.
Başlık: Ynt: STM32F4 DİSCOVERY KARTI İLE ARM PROGRAMLAMA DERSLERİ
Gönderen: mfatihkoseoglu - 16 Haziran 2019, 19:17:42
STM32F407VG İle Led Blink Uygulaması STDPeriph Kütüphaneleri İle #Ders11

Başlık: Ynt: STM32F4 DİSCOVERY KARTI İLE ARM PROGRAMLAMA DERSLERİ
Gönderen: mfatihkoseoglu - 17 Haziran 2019, 13:35:26
STM32F407VG İle Led Örneği STDPeriph Kütüphaneleri İle #Ders12

Başlık: Ynt: STM32F4 DİSCOVERY KARTI İLE ARM PROGRAMLAMA DERSLERİ
Gönderen: Halil Gök - 17 Haziran 2019, 17:20:56
Hocam bende de stm32f051 geliştirme kiti var aynı kit olmasada mantığını kavrayarak uygulamalarınızı yapablilirmiyim
Başlık: Ynt: STM32F4 DİSCOVERY KARTI İLE ARM PROGRAMLAMA DERSLERİ
Gönderen: mfatihkoseoglu - 19 Haziran 2019, 23:36:35
Alıntı yapılan: Halil Gök - 17 Haziran 2019, 17:20:56Hocam bende de stm32f051 geliştirme kiti var aynı kit olmasada mantığını kavrayarak uygulamalarınızı yapablilirmiyim

Evet hocam, sadece ben her derste datasheet okurken sizde kendi boardunuzun serisindeki önemli noktaların ne olduğunu görün yeter. Programlama temel mantığı aynı. İyi çalışmalar
Başlık: Ynt: STM32F4 DİSCOVERY KARTI İLE ARM PROGRAMLAMA DERSLERİ
Gönderen: mfatihkoseoglu - 19 Haziran 2019, 23:37:36
STM32F407VG İle Led Örneği HAL Kütüphaneleri İle #Ders13

Başlık: Ynt: STM32F4 DİSCOVERY KARTI İLE ARM PROGRAMLAMA DERSLERİ
Gönderen: mfatihkoseoglu - 19 Haziran 2019, 23:38:26
STM32F4 Pull Up, Pull Down Nedir ve Buton Bilgisi #Ders14

Başlık: Ynt: STM32F4 DİSCOVERY KARTI İLE ARM PROGRAMLAMA DERSLERİ
Gönderen: mfatihkoseoglu - 19 Haziran 2019, 23:53:02
STM32F407VG Buton İle Led Kontrolü Dijital Giriş #Ders15

Başlık: Ynt: STM32F4 DİSCOVERY KARTI İLE ARM PROGRAMLAMA DERSLERİ
Gönderen: mfatihkoseoglu - 23 Haziran 2019, 16:33:45
STM32F407VG Buton İle Led Örneği #Ders16

Başlık: Ynt: STM32F4 DİSCOVERY KARTI İLE ARM PROGRAMLAMA DERSLERİ
Gönderen: osman_ - 23 Haziran 2019, 21:44:12
Elinize sağlık hocam benim gibi yeni başlayanlar için çok güzel kaynak oluyor. Günde en az 1 video gelse bence çok makbule geçer. Hem de hızlı ilerler.

Videoları izlerken şu noktada takıldım. Saçma bir soru belki bilmiyorum.
RCC->CR
RCC->PLLCFGR

gibi kodları yazarken kodların isimlerinin bunlar olduğunu nereden öğreniyoruz?
Mesela dökümanda PLL configuration bölümünde örnek C kodu yok. Doğrudan register isimlerini mi kullanıyoruz? Yoksa register isimlerine başka bir dökümandan mı ulaşıyoruz?
Başlık: Ynt: STM32F4 DİSCOVERY KARTI İLE ARM PROGRAMLAMA DERSLERİ
Gönderen: Tagli - 24 Haziran 2019, 20:36:05
Bunlar genelde reference manual'deki donanım adları ve register isimleri oluyor. Yani "donanım->register" şeklinde. TIM3->CR1 gibi.

Bit isimleri de "donanım_register_bit" gibi oluyor. Bit isimlerinde TIM1, TIM2 gibi ayrımlar olmuyor, sadece TIM yazılıyor örneğin. Veya GPIOA, GPIOB değil de sadece GPIO yazılıyor. Sonlarına _Msk veya _Pos gibi ekler gelebiliyor. Örnek: TIM_CR1_CEN

Bu genel kuralların istisnaları var ancak bunlara tek tek değinmek zor. Örneğin GPIOA->AFR[0] gibi dizi biçiminde olanlar var. OTG_FS modülünde de bir dolu istisna ve hatta hiç tanımlanmamış şeyler var. Modern bir IDE'de kod tamamlama özelliği bu konuda çok yardımcı olacaktır.

Emin olmak için işlemcinin ilgili header dosyasına bakılabilir. Örneğin stm32f407xx.h gibi. Dosya isimleri işlemciye göre değişir tabi.
Başlık: Ynt: STM32F4 DİSCOVERY KARTI İLE ARM PROGRAMLAMA DERSLERİ
Gönderen: osman_ - 24 Haziran 2019, 23:19:53
Alıntı yapılan: Tagli - 24 Haziran 2019, 20:36:05Bunlar genelde reference manual'deki donanım adları ve register isimleri oluyor. Yani "donanım->register" şeklinde. TIM3->CR1 gibi.

Bit isimleri de "donanım_register_bit" gibi oluyor. Bit isimlerinde TIM1, TIM2 gibi ayrımlar olmuyor, sadece TIM yazılıyor örneğin. Veya GPIOA, GPIOB değil de sadece GPIO yazılıyor. Sonlarına _Msk veya _Pos gibi ekler gelebiliyor. Örnek: TIM_CR1_CEN

Bu genel kuralların istisnaları var ancak bunlara tek tek değinmek zor. Örneğin GPIOA->AFR[0] gibi dizi biçiminde olanlar var. OTG_FS modülünde de bir dolu istisna ve hatta hiç tanımlanmamış şeyler var. Modern bir IDE'de kod tamamlama özelliği bu konuda çok yardımcı olacaktır.

Emin olmak için işlemcinin ilgili header dosyasına bakılabilir. Örneğin stm32f407xx.h gibi. Dosya isimleri işlemciye göre değişir tabi.

Çok teşekkürler hocam çok yararlı oldu.
Başlık: Ynt: STM32F4 DİSCOVERY KARTI İLE ARM PROGRAMLAMA DERSLERİ
Gönderen: osman_ - 24 Haziran 2019, 23:22:57
system_stm32f4xx.c dosyasını her projeye otomatik dahil etmiş oluyoruz. Bu dosya içinde çeşitli PLL ayarları var.
main.c içinde tekrardan PLL ayarı yapmak gerekiyor mu? Yoksa system_stm32f4xx.c içinden konfigürasyonu gerekli şekilde ayarlamak yeterli mi? Hangi yöntem daha sağlıklı olur?
Başlık: Ynt: STM32F4 DİSCOVERY KARTI İLE ARM PROGRAMLAMA DERSLERİ
Gönderen: Tagli - 24 Haziran 2019, 23:35:42
system_stm32f4xx.c üretici tarafından veriliyor ve ben bunu hiç kurcalamamayı tercih ediyorum. CubeMX kullanıcı tercihlerine göre bunu değiştirip her seferinde ayrı mı oluşturuyor onu bilmiyorum (CubeMX'i kod üretmek için kullanmıyorum). Ben kendi yazdığım başlangıç kodunun içinde yapıyorum ayarları.

Dilersen kendi kodun içinde SystemCoreClockUpdate() fonksiyonunu çağırarak SystemCoreClock global değişkeninin güncellenmesini sağlayabilirsin. Ancak clock değeri kararlı rejime oturmadan bu fonksiyonu çağırırsan hatalı bir değer üretir. Gerçi geçeceğin hızı zaten biliyorsan fonksiyon çağırmadan elle de güncelleyebilirsin bu değişkeni. Şahsen ben genelde kullanmıyorum bile bunu. Ama bazı kütüphane fonksiyonları veya RTOS'ların çalışması SystemCoreClock'a doğru değer atanmasına bağlı olabilir.
Başlık: Ynt: STM32F4 DİSCOVERY KARTI İLE ARM PROGRAMLAMA DERSLERİ
Gönderen: osman_ - 24 Haziran 2019, 23:46:48
Alıntı yapılan: Tagli - 24 Haziran 2019, 23:35:42system_stm32f4xx.c üretici tarafından veriliyor ve ben bunu hiç kurcalamamayı tercih ediyorum. CubeMX kullanıcı tercihlerine göre bunu değiştirip her seferinde ayrı mı oluşturuyor onu bilmiyorum (CubeMX'i kod üretmek için kullanmıyorum). Ben kendi yazdığım başlangıç kodunun içinde yapıyorum ayarları.

Dilersen kendi kodun içinde SystemCoreClockUpdate() fonksiyonunu çağırarak SystemCoreClock global değişkeninin güncellenmesini sağlayabilirsin. Ancak clock değeri kararlı rejime oturmadan bu fonksiyonu çağırırsan hatalı bir değer üretir. Gerçi geçeceğin hızı zaten biliyorsan fonksiyon çağırmadan elle de güncelleyebilirsin bu değişkeni. Şahsen ben genelde kullanmıyorum bile bunu. Ama bazı kütüphane fonksiyonları veya RTOS'ların çalışması SystemCoreClock'a doğru değer atanmasına bağlı olabilir.

Anladım hocam. O dosyaya hiç dokunmadan Clock_Config() gibi bir fonksiyon oluşturup içinde HSE, PLL vb. ayarlamak benim için en basit ve en garanti yöntem olacak sanırım şu anlık.

Yeri gelmişken öğrenmek istediğim bir mesele daha var. Register düzeyinde ve stdperiph lib ile kod yazmak arasında geliştirme sırasında çok ciddi zaman ve performans farkı oluyor mu? Register ile kodlamak daha kolay ve anlaşılır gibi geliyor. Stdlib kullanınca bir çok kalıbı ezberlemek gerekiyor sanki. Bu konuda ne düşünüyorsunuz? Ne tavsiye edersiniz?
Başlık: Ynt: STM32F4 DİSCOVERY KARTI İLE ARM PROGRAMLAMA DERSLERİ
Gönderen: Emou - 25 Haziran 2019, 22:44:51
Elinize sağlık hocam ilk defa iki kütüphane ve register kısmına ayrı ayrı değinen birisini gördüm. Kanalınıza da abone oldum müsait zamanlarımda da çektiğiniz videoları açıp izlerim  ::ok

Videoların devamını diliyorum. Umarım hepimiz için faydalı olur.
Başlık: Ynt: STM32F4 DİSCOVERY KARTI İLE ARM PROGRAMLAMA DERSLERİ
Gönderen: mfatihkoseoglu - 26 Haziran 2019, 02:30:30
Alıntı yapılan: Emou - 25 Haziran 2019, 22:44:51Elinize sağlık hocam ilk defa iki kütüphane ve register kısmına ayrı ayrı değinen birisini gördüm. Kanalınıza da abone oldum müsait zamanlarımda da çektiğiniz videoları açıp izlerim  ::ok

Videoların devamını diliyorum. Umarım hepimiz için faydalı olur.

Sayın Emou güzel yorumunuz için teşekkür ediyorum ve takipte kalmanızı temenni ediyorum, daha güzel dersler inşallah gelecek (:
Başlık: Ynt: STM32F4 DİSCOVERY KARTI İLE ARM PROGRAMLAMA DERSLERİ
Gönderen: mfatihkoseoglu - 26 Haziran 2019, 02:33:23
STM32F4 Buton İle Led Kontrolü Dijital Giriş Registerlar ile #Ders17

Başlık: Ynt: STM32F4 DİSCOVERY KARTI İLE ARM PROGRAMLAMA DERSLERİ
Gönderen: osman_ - 26 Haziran 2019, 14:06:10
@mfatihkoseoglu hocam aklıma takılan bir kaç nokta var.

Mesela Control Register ayarlarını yaparken 24 numaralı PLLON bitine dokunmadık. Bunu neden aktif hale getirmemiz gerekmiyor? PLLON ön değer olarak 1 yüklü mü geliyor?

HSEON için 16 numaralı biti 1 yaptık. Ama 0 numaralı biti 0 durumuna getirip dahili osilatörü kapatmadık.

Mesela PLL Configuration için 22 numaralı bit yardımıyla PLLSRC değerini HSE ya da HSI olarak ayarlamadık. Bunlar kullandığımız birimler ama ayar yapmadık buna neye göre karar veriyoruz?
Başlık: Ynt: STM32F4 DİSCOVERY KARTI İLE ARM PROGRAMLAMA DERSLERİ
Gönderen: mfatihkoseoglu - 04 Temmuz 2019, 01:03:58
Kesme (Interrupt) Nedir? STM32F407 Dersleri #Ders20

Başlık: Ynt: STM32F4 DİSCOVERY KARTI İLE ARM PROGRAMLAMA DERSLERİ
Gönderen: mfatihkoseoglu - 04 Temmuz 2019, 01:11:57
Alıntı yapılan: osman_ - 26 Haziran 2019, 14:06:10@mfatihkoseoglu hocam aklıma takılan bir kaç nokta var.

Mesela Control Register ayarlarını yaparken 24 numaralı PLLON bitine dokunmadık. Bunu neden aktif hale getirmemiz gerekmiyor? PLLON ön değer olarak 1 yüklü mü geliyor?

HSEON için 16 numaralı biti 1 yaptık. Ama 0 numaralı biti 0 durumuna getirip dahili osilatörü kapatmadık.

Mesela PLL Configuration için 22 numaralı bit yardımıyla PLLSRC değerini HSE ya da HSI olarak ayarlamadık. Bunlar kullandığımız birimler ama ayar yapmadık buna neye göre karar veriyoruz?

@osman_  hocam PLL ON biti 1 yapılabilirdi, onu atlamışız. Doğru seçim.

-> HSI biti HSE biti aktif olduktan sonra isterseniz 0 yapın datasheette de şöyle söylüyor: "Durdurma veya Bekleme modundan çıkarken veya sistem saati olarak doğrudan veya dolaylı olarak kullanılan HSE osilatörünün arızalanması durumunda HSI osilatörünü AÇIK yapmak için donanıma göre ayarlayın. HSI doğrudan veya dolaylı olarak sistem saati olarak kullanılıyorsa, bu bit silinemez."

-> Yine Pll konfigurasyonlarında atladığımız nokta, sistem otomatik olarak bu değerleri atasa bile kendimiz bunu hse için seçmemiz daha doğru idi.

Güzel sorularınız ve eksikleri giderdiğiniz için ayrıca teşekkür ederim.
Başlık: Ynt: STM32F4 DİSCOVERY KARTI İLE ARM PROGRAMLAMA DERSLERİ
Gönderen: mfatihkoseoglu - 07 Temmuz 2019, 15:26:28
STM32F4 External Interrupt - Harici Kesme - STDPeriph Kütüphaneleri Ile #Ders21

Başlık: Ynt: STM32F4 DİSCOVERY KARTI İLE ARM PROGRAMLAMA DERSLERİ
Gönderen: OptimusPrime - 08 Temmuz 2019, 20:30:48
Ufak bir duzeltme:  ::ok

Ders #7, 17:08 xtal frekansinin degistirildigi yer zaten kapali. Bu deger preprocessor olarak proje ayarlarinda verilmis, 8000000 olarak.  ::ok

Bu arada faydali buldum. Emegine ellerine saglik.
Başlık: Ynt: STM32F4 DİSCOVERY KARTI İLE ARM PROGRAMLAMA DERSLERİ
Gönderen: mfatihkoseoglu - 12 Temmuz 2019, 14:55:38
Alıntı yapılan: OptimusPrime - 08 Temmuz 2019, 20:30:48Ufak bir duzeltme:  ::ok

Ders #7, 17:08 xtal frekansinin degistirildigi yer zaten kapali. Bu deger preprocessor olarak proje ayarlarinda verilmis, 8000000 olarak.  ::ok

Bu arada faydali buldum. Emegine ellerine saglik.

Düzeltme ve güzel yorumunuz için teşekkür ederim. İyi çalışmalar olsun.
Başlık: Ynt: STM32F4 DİSCOVERY KARTI İLE ARM PROGRAMLAMA DERSLERİ
Gönderen: mfatihkoseoglu - 12 Temmuz 2019, 14:56:01
STM32F4 Multi External Interrupt - Çoklu Harici Kesme - STDPeriph Kütüphaneleri Ile #Ders22

Başlık: Ynt: STM32F4 DİSCOVERY KARTI İLE ARM PROGRAMLAMA DERSLERİ
Gönderen: mfatihkoseoglu - 16 Temmuz 2019, 16:10:02
STM32F4 External Interrupt - Harici Kesme - Register Ile #Ders23

Başlık: Ynt: STM32F4 DİSCOVERY KARTI İLE ARM PROGRAMLAMA DERSLERİ
Gönderen: mfatihkoseoglu - 17 Temmuz 2019, 18:13:03
STM32F4 Multi External Interrupt - Çoklu Harici Kesme - Register Ile #Ders23

Başlık: Ynt: STM32F4 DİSCOVERY KARTI İLE ARM PROGRAMLAMA DERSLERİ
Gönderen: mfatihkoseoglu - 19 Temmuz 2019, 19:15:20
STM32F4 Multi External Interrupt - Çoklu Harici Kesme - HAL Kütüphaneleri Ile #Ders24

Başlık: Ynt: STM32F4 DİSCOVERY KARTI İLE ARM PROGRAMLAMA DERSLERİ
Gönderen: mfatihkoseoglu - 31 Temmuz 2019, 14:50:17
STM32F4 Multi External Interrupt - Çoklu Harici Kesme - HAL Kütüphaneleri Ile #Ders25

Başlık: Ynt: STM32F4 DİSCOVERY KARTI İLE ARM PROGRAMLAMA DERSLERİ
Gönderen: mfatihkoseoglu - 31 Temmuz 2019, 14:51:20
STM32F4 Discovery Kartı İle HC-SR04 Ultrasonik Sensor Kullanımı #Ders26

Başlık: Ynt: STM32F4 DİSCOVERY KARTI İLE ARM PROGRAMLAMA DERSLERİ
Gönderen: mfatihkoseoglu - 31 Temmuz 2019, 14:51:51
STM32F4 İle ADC(Analog Digital Converter) Nedir? #Ders27

Başlık: Ynt: STM32F4 DİSCOVERY KARTI İLE ARM PROGRAMLAMA DERSLERİ
Gönderen: mfatihkoseoglu - 31 Temmuz 2019, 14:52:40
STM32F4 ADC REFERANCE MANUAL ve DATASHEET OKUMA #Ders28

Başlık: Ynt: STM32F4 DİSCOVERY KARTI İLE ARM PROGRAMLAMA DERSLERİ
Gönderen: mfatihkoseoglu - 31 Temmuz 2019, 14:53:20
STM32F4 ADC Değer Okuma STDPeriph Kütüphaneleri İle #Ders29

Başlık: Ynt: STM32F4 DİSCOVERY KARTI İLE ARM PROGRAMLAMA DERSLERİ
Gönderen: mfatihkoseoglu - 02 Eylül 2019, 17:32:31
STM32F4 ADC Değer Okuma Ve Kontrol İşlemleri STDPeriph Kütüphaneleri İle #Ders30

Başlık: Ynt: STM32F4 DİSCOVERY KARTI İLE ARM PROGRAMLAMA DERSLERİ
Gönderen: mfatihkoseoglu - 02 Eylül 2019, 17:32:59
STM32F4 ADC Değer Okuma Register (Kaydediciler) İle #Ders31

Başlık: Ynt: STM32F4 DİSCOVERY KARTI İLE ARM PROGRAMLAMA DERSLERİ
Gönderen: mfatihkoseoglu - 02 Eylül 2019, 17:33:31
STM32F4 ADC Değer Okuma HAL Kütüphanesi İle #Ders32

Başlık: Ynt: STM32F4 DİSCOVERY KARTI İLE ARM PROGRAMLAMA DERSLERİ
Gönderen: mfatihkoseoglu - 02 Eylül 2019, 17:36:04
STM32F4 Gerçek ADC Değeri Okuma | Real ADC Value | #Ders33

Başlık: Ynt: STM32F4 DİSCOVERY KARTI İLE ARM PROGRAMLAMA DERSLERİ
Gönderen: mfatihkoseoglu - 02 Eylül 2019, 17:36:28
STM32F4 Çoklu ADC Okuma ve Sıcaklık Sensörü Kullanımı #Ders34

Başlık: Ynt: STM32F4 DİSCOVERY KARTI İLE ARM PROGRAMLAMA DERSLERİ
Gönderen: mfatihkoseoglu - 02 Eylül 2019, 17:38:03
STM32F4 DAC Nedir Ve Nasıl Çalışır #Ders35

Başlık: Ynt: STM32F4 DİSCOVERY KARTI İLE ARM PROGRAMLAMA DERSLERİ
Gönderen: OG - 03 Eylül 2019, 21:29:24
@mfatihkoseoglu kısa sürede birçok eğitim videosu yayınlamışsın, tebrik ederim.
Umarım devam eder.
Başlık: Ynt: STM32F4 DİSCOVERY KARTI İLE ARM PROGRAMLAMA DERSLERİ
Gönderen: mfatihkoseoglu - 05 Eylül 2019, 13:47:49
Alıntı yapılan: OG - 03 Eylül 2019, 21:29:24@mfatihkoseoglu kısa sürede birçok eğitim videosu yayınlamışsın, tebrik ederim.
Umarım devam eder.

Teşekkür ederim, tam gaz devam etmeye çalışıyorum, yakın zamanda bitirmiş olacağım. İyi çalışmalar.