stm32f407 stdlib proje ağacını ekleyebilirmisiniz

Başlatan fryrmnd, 25 Kasım 2013, 11:20:46

fryrmnd

Arkadaşlar konu anlatılmış ama V1.3 de beceremedim. Aldığım hata ..\STM32F4xx_DSP_StdPeriph_Lib_V1.3.0\Libraries\STM32F4xx_StdPeriph_Driver\src\stm32f4xx_gpio.c(178): error:  #20: identifier "GPIOJ" is undefined

Benim proje ağacım şu şekilde

teşekkürler

Klein

STM32F4'tw GPIOJ ve GPIOK  olmadığı için hata variyor.  Program içerisinde bir yerlerde kullanılmış, ama kütüphanede yok.

fryrmnd

 Klein  hocam main dosyası sizin örnekte verdiğiniz dosya. Hatayı verdiği dosya "stm32f4xx_gpio.c" dosyası.

"stm32f4xx_gpio.h" dosyasında

#define IS_GPIO_ALL_PERIPH(PERIPH) (((PERIPH) == GPIOA) || \
                                    ((PERIPH) == GPIOB) || \
                                    ((PERIPH) == GPIOC) || \
                                    ((PERIPH) == GPIOD) || \
                                    ((PERIPH) == GPIOE) || \
                                    ((PERIPH) == GPIOF) || \
                                    ((PERIPH) == GPIOG) || \
                                    ((PERIPH) == GPIOH) || \
                                    ((PERIPH) == GPIOI) || \
                                    ((PERIPH) == GPIOJ) || \
                                    ((PERIPH) == GPIOK))


şeklinde bir bölüm var. Bu dosya başta "stm32f4xx.h"  dosyasını include ediyor. Onda da GPIOJ ve GPIOK yok.

Klein

farklı kaynaklardan indirdiğim kütüphane dosyalarını inceledim.  hiç birisinde GPIOJ ve GPIOK tanımlarını bulamadım. Muhtemelen sizin kütüphane üzerinde oynanmış. Bence başka bir kaynaktan indirip deneyin.
Hangi örnek olduğunu bulamadım. Link var mı?

fryrmnd

Hocam main dosyası sizin anlatımınızdan
https://www.picproje.org/index.php/topic,43088.0.html

Hocam kullandığınız kütüphanenin linkini verebilirmisiniz? Ben yanlış kullanıyor olabilirim. Benim ki bu http://www.st.com/web/en/catalog/tools/PF257901

olemiss

Bir öneri: eğer GPIOJ ve GPIOK uygulamanız tarafından kullanılmıyorsa, bunları comment-out edebilirsiniz.
Yazılım Mühendisi, Çevirmen.


fryrmnd

@Sabuncu

hocam ben kullanmıyorum ama kütüphane ile orjinalde gelen kod parçalı. comment out sağlıklı olur mu bilemiyorum.

@Klein hocam hemen deniyicem. Teşekkürler.

olemiss

Söz konusu GPIO'lar elinizdeki çip modeli üzerinde var mı?  Yoksa, sağlıklı olmama sorunu bulunmuyor.  Varsa bile, derleme adımında yol alabilmek için geçici bir çözüm olarak kabul edilebilir.
Yazılım Mühendisi, Çevirmen.

fryrmnd

Yok Sabuncu hocam. Olmadı öyle yapcaz da kesin doğru bir yolu olmalı.

fgokcegoz

STM32 nin yeni ailesi olan F429/F439 serileriyle beraber library ler de güncellendi. Ondan dolayı kütüphane dosyalarında problem yaşıyor olabilirsiniz. Kullandığınız işlemci ailesini proje ayarlarından define ederseniz muhtemelen sorun ortadan kalkacaktır.
"Vicdanın ziyası, ulûm-u diniyedir. Aklın nuru, fünun-u medeniyedir. İkisinin imtizacıyla hakikat tecelli eder." (Bediüzzaman Said Nursi)

fryrmnd

Enteresandır 7 warning ile derlerdim. Sözde yüklemeye yüklüyor ama ledlerde tık yok  >:(

fgokcegoz hocam options dan  device olarak stm32f407vg seçiyorum.

fgokcegoz

Options taki, devices kısmından değil, C/C++ sekmesi altında, ön işlemci komutlarının define ettiğimiz yer varya (preprocessor symbols-define) orada kullanılan STM32F4 ailesini bildirmek gerekiyor... Örneğin,

STM32F40_41xxx
veya
STM32F427_437xx
veya
STM32F429_439xx
veya
STM32F401xx gibi....

Siz STM32F40VG için "STM32F40_41xxx" yi define kısmına eklemeniz gerekiyor...
"Vicdanın ziyası, ulûm-u diniyedir. Aklın nuru, fünun-u medeniyedir. İkisinin imtizacıyla hakikat tecelli eder." (Bediüzzaman Said Nursi)

fryrmnd

Bir terslik var. Program Size: Code=2736 RO-data=424 RW-data=24 ZI-data=1632  . Program boyutu küçük değil mi.

USE_STDPERIPH_DRIVER şeklide  preprocessor komutu vardı. Sizinkini de eklediim. derleme düzgün ama hala sonuç yok.

fryrmnd

Hocam ekteki projeyi bir kartta deneme imkanınız var mı. Kullandığım kütüphaneyi de ekledim.

http://s3.dosya.tc/server14/ctCpBF/keil.zip.html