Haberler:

Foruma Resim Yükleme ve Boyut Sınırlaması ( ! )  https://bit.ly/2GMFb8H

Ana Menü

st32f407VG

Başlatan selvi, 16 Şubat 2015, 21:29:29

selvi

  ST32F407VG islemcisinde giris ve cikis yonlendirmesi hangi mantikla yapiliyor.z hocam biraz bahsetmis ama tam karsiliklarini cikaramadim.asagida  tanimlanan durumlari biraz acabilirmisiniz.GPIOA  A0,A1 ve A2 karsiliklari nasil o degerleri aliyor.
Her bir GPIO 16 Adet I/O ya sahip olduğundan, her bir I/O nun yapısı 2 bitle tanımlandığından toplam 32 bite ihtiyaç vardır.
 
GPIOA nın en düşük pozisyondaki pinini A0, Output tanımlamak için GPIO_MODER  registerine 0x00000001 yazmamız yeterlidir.
 
A0'a ilave olarak A1 pini de output tamamlamak istersek bu kez GPIO_MODER  registerine 0x00000005 yazmamız gerekir.
 
Bunlara ilave olarak A2 pini Alternatif fonksiyon tanımlayacaksak bu kez GPIO_MODER  registerine 0x00000025 yazmalıyız.
Yaşam anlamlandırıldıkça kutsaldır....

selimkoc

Her pin 4 fonksiyona sahip olabilir. Bunun için 2^2=4 eder yani 2-bit ile pinin yönlendirmesi yapılır. Örnek alternetif fonk için kullanılacaksa 0b10   (2), analog olarak kullanılacaksa 0b11  (3) yapılıyor dolayısı ile 15 pin için 32-bit gerekir. GPIOA_MODER=0x00000003 yaptığımda A Portunun 1. pinini analog, diğer pinleri dijital giriş olarak ayarlamış olurum. (GPIOA_MODER=3 ile aynı değer.)

magnetron

hocam bu registerlerle uğraşırken insan kafayı yer

niye standart peripheral library kullanmıyorsunuz ?

orda herşey isimlendirilmiş

işte aşağıdaki pin timer çıkışı olarak alternate function olarak set edilmiş

    GPIO_InitStructure.GPIO_Pin = GPIO_Pin_5;
    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF;
    GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;
    GPIO_InitStructure.GPIO_Speed = GPIO_Speed_2MHz;
    GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_NOPULL;
    GPIO_Init(GPIOA, &GPIO_InitStructure);

    GPIO_PinAFConfig(GPIOA,GPIO_PinSource5,GPIO_AF_TIM2);

selvi

  ogrenmek acisindan sordum.diger islemcilerde cok basit olan giris ve cikis port ayarlamalari arm de epey ayrintili  oldugu icin tam olarak nasil yapildigini anlamak istiyorum.sorunu puf noktasi : "Her bir GPIO 16 Adet I/O ya sahip olduğundan, her bir I/O nun yapısı 2 bitle tanımlandığından toplam 32 bite ihtiyaç vardır".bu tam olarak nasil oldugunu sormak istiyorum.
Her bir GPIO 16 Adet I/O ya sahip olduğundan, her bir I/O nun yapısı 2 bitle tanımlandığından toplam 32 bite ihtiyaç vardır.
 
GPIOA nın en düşük pozisyondaki pinini A0, Output tanımlamak için GPIO_MODER  registerine 0x00000001 yazmamız yeterlidir.
 
A0'a ilave olarak A1 pini de output tamamlamak istersek bu kez GPIO_MODER  registerine 0x00000005 yazmamız gerekir.
 
Bunlara ilave olarak A2 pini Alternatif fonksiyon tanımlayacaksak bu kez GPIO_MODER  registerine 0x00000025 yazmalıyız.
Yaşam anlamlandırıldıkça kutsaldır....