stm32f103 example sıkıntıları

Başlatan Tanrın Oğlu, 11 Eylül 2013, 19:15:45

camby

Example'lar ilgili çipin sayfasında var. Perip_lib diye bitiyor olması lazım zipli bir dosya.

İçinde keil için de örnekler ve library'ler var.

Tanrın Oğlu

indirdim. aynı lib ler. yeni proje açıp, o libleri projeme dahil edince keil derlemiyor. sıkıntım budur.

camby


pisayisi

St den std perip examples olarak indirdiğiniz örnekler ilave bir ayar gerektirmeden kolayca sorunsuz derlenir. Benim yaşadığım , bazan windows7 ve üstü sistemlerde doğrudan masaüstüne klasörleri açtığınızda izin ile ilgili anlaşılmaz sorunlar derleme hatası yapabilmekte, ya da proje ayarlar C++ alt menusundan ilgili klasörleri tek tek derleyiciye dahil etmeniz gerekebilir...
Murat

X-Fi

Alıntı yapılan: Tanrın Oğlu - 11 Eylül 2013, 22:44:03


mıhıttin libraryleri projeme ekleyince derleme yapmıyor ve c dosyaları üzerinde anahtar(kilitli düşüncesi oluşturuyor insanda) işareti var.

librarylerdeki kilit işareti salt okunur anlamına gelir. Dosyaların özelliklerinden salt okunur seçeneğini kaldırabilirsin.
http://www.coskunergan.dev/    (Yürümekle varılmaz, lakin varanlar yürüyenlerdir.)

Tanrın Oğlu

salt okunur u kaldırdım. halen derlemiyor. şuradaki https://www.picproje.org/index.php/topic,43088.0.html şekilde  projeme dahil etmeye çalıştım yine derlemedi. v4.72 de keil in sitesinden inmemiş dün gece. v4.72 elinde olanlar biryerlere upload edebilirlermi?




muhittin_kaplan

hocam derlemiyor derken,
main.c dosyasına main.h ı eklediniz mi
main.h a istediğiniz dosyaları eklediniz mi ?

yldzelektronik

Alıntı yapılan: Tanrın Oğlu - 12 Eylül 2013, 11:12:07
salt okunur u kaldırdım. halen derlemiyor. şuradaki https://www.picproje.org/index.php/topic,43088.0.html şekilde  projeme dahil etmeye çalıştım yine derlemedi. v4.72 de keil in sitesinden inmemiş dün gece. v4.72 elinde olanlar biryerlere upload edebilirlermi?

Gerçi bakmışsın ama belki farklılıkarı yada atladığın noktaları vardır diyerek http://emrahbudak.com/2013/01/19/keil-ile-proje-olusturmak/ şeklinde bir yardım denemesinde bulunayım.Muhtemelen projene dosyaları dahil edemiyorsun.

http://safaunalmis.blogspot.com/2013/02/stm32f4-discovery-icin-keil-ayarlari.html

Bu da olabilir.
Kişinin başına gelen hayır Allah'tandır. Kişinin başına gelen şer nefsindendir. Nefislerimizle kendimize zulüm ediyoruz.

Tanrın Oğlu

#23
Alıntı yapılan: yldzelektronik - 12 Eylül 2013, 11:38:17
Gerçi bakmışsın ama belki farklılıkarı yada atladığın noktaları vardır diyerek http://emrahbudak.com/2013/01/19/keil-ile-proje-olusturmak/ şeklinde bir yardım denemesinde bulunayım.Muhtemelen projene dosyaları dahil edemiyorsun.

http://safaunalmis.blogspot.com/2013/02/stm32f4-discovery-icin-keil-ayarlari.html

Bu da olabilir.

bire bir adım adım yaptım yinede sıkıntı geçmedi. derlemiyor. printscreen i,



mesaj birleştirme:: 12 Eylül 2013, 12:37:53

keilimi bozmuşlar  :'(



ayrıca şuan aynen böyle hissediyorum :)


yldzelektronik

Alıntı yapılan: Tanrın Oğlu - 12 Eylül 2013, 12:26:44
ayrıca şuan aynen böyle hissediyorum :)

(Resim gizlendi görmek için tıklayın.)

Hepsini boşver de bu güzelmiş :D

İlk resimde derleme yağmış?

İkinci resimde ise hiçbir dosya eklememişsin ki mübarek?
Kişinin başına gelen hayır Allah'tandır. Kişinin başına gelen şer nefsindendir. Nefislerimizle kendimize zulüm ediyoruz.

mistek

Alıntı yapılan: Tanrın Oğlu - 12 Eylül 2013, 12:26:44
keilimi bozmuşlar  :'(




Bu hatanın çözümü için.

Options for target kısmını açın C/C++ sekmesinde Preprocessor Symbols altındaki Define yazan yerin karşısına STM32F10X_MD yazın kaydedin.
boş işlerin adamı ---- OHM Kanunu: I = V/R ---- Güç Formülü: P = V*I = I^2*R = V^2/R

Tanrın Oğlu

evet mistek. sağolasın. ilk sıkıntı halloldu. şimdi ne yaptığımızı anlatabilirmisin bizlere? bu nedir? ne yaptık?

mistek

Alıntı yapılan: Tanrın Oğlu - 12 Eylül 2013, 13:48:46
evet mistek. sağolasın. ilk sıkıntı halloldu. şimdi ne yaptığımızı anlatabilirmisin bizlere? bu nedir? ne yaptık?

Bu tanımlamayla kesin olarak ne yaptığımız bende bilmiyorum ancak genel olarak şöyle özetlenebilir.

stm32f10x serisinde her işlemcide farklı hafıza çözünürlükleri(?) mevcut. Bizde tanımlama ile derleyiciye diyoruz ki benim işlemcim şunlardan biri. Bundan sonra stm32f10x.h dosyasında ve diğer dosyalarda bunu göz önünde bulundururak kodları derle. stm32f10x.h dosyasını incelerseniz ne demek istediğim daha iyi anlaşılır. Hafızaya program yerleştirme algoritmasıyla alakalı bir durum sanırım. Yanlışım varsa kusura bakmayın.

  /* #define STM32F10X_LD */     /*!< STM32F10X_LD: STM32 Low density devices */
  /* #define STM32F10X_LD_VL */  /*!< STM32F10X_LD_VL: STM32 Low density Value Line devices */ 
  /* #define STM32F10X_MD */     /*!< STM32F10X_MD: STM32 Medium density devices */
  /* #define STM32F10X_MD_VL */  /*!< STM32F10X_MD_VL: STM32 Medium density Value Line devices */ 
  /* #define STM32F10X_HD */     /*!< STM32F10X_HD: STM32 High density devices */
  /* #define STM32F10X_HD_VL */  /*!< STM32F10X_HD_VL: STM32 High density value line devices */ 
  /* #define STM32F10X_XL */     /*!< STM32F10X_XL: STM32 XL-density devices */
  /* #define STM32F10X_CL */     /*!< STM32F10X_CL: STM32 Connectivity line devices */

  Tip: To avoid modifying this file each time you need to switch between these
        devices, you can define the device in your toolchain compiler preprocessor.

- Low-density devices are STM32F101xx, STM32F102xx and STM32F103xx microcontrollers
   where the Flash memory density ranges between 16 and 32 Kbytes.
- Low-density value line devices are STM32F100xx microcontrollers where the Flash
   memory density ranges between 16 and 32 Kbytes.
- Medium-density devices are STM32F101xx, STM32F102xx and STM32F103xx microcontrollers
   where the Flash memory density ranges between 64 and 128 Kbytes.
- Medium-density value line devices are STM32F100xx microcontrollers where the
   Flash memory density ranges between 64 and 128 Kbytes.   
- High-density devices are STM32F101xx and STM32F103xx microcontrollers where
   the Flash memory density ranges between 256 and 512 Kbytes.
- High-density value line devices are STM32F100xx microcontrollers where the
   Flash memory density ranges between 256 and 512 Kbytes.   
- XL-density devices are STM32F101xx and STM32F103xx microcontrollers where
   the Flash memory density ranges between 512 and 1024 Kbytes.
- Connectivity line devices are STM32F105xx and STM32F107xx microcontrollers.
boş işlerin adamı ---- OHM Kanunu: I = V/R ---- Güç Formülü: P = V*I = I^2*R = V^2/R

Tanrın Oğlu

#28
Alıntı yapılan: yldzelektronik - 12 Eylül 2013, 12:58:37
Hepsini boşver de bu güzelmiş :D

İlk resimde derleme yağmış?

İkinci resimde ise hiçbir dosya eklememişsin ki mübarek?


ilk resimdeki proje farklı idi. çirçok yerini kurcaladığım için ikinci resimdeki projeyi oluşturdum ama daha hiçbirşey dahil etmeden gördüm ki işlemcinin header ını yazınca derleme yapmıyor.. ne oluyoruz dedim. mistek çözümü buldu ama ben halen ne oluyoruz diyorum :) ne olduğunu anladıktan sonra libraryleri eklemeye geçeceğim

mesaj birleştirme:: 12 Eylül 2013, 14:56:11

Alıntı yapılan: mistek - 12 Eylül 2013, 14:51:14
Bu tanımlamayla kesin olarak ne yaptığımız bende bilmiyorum ancak genel olarak şöyle özetlenebilir.

stm32f10x serisinde her işlemcide farklı hafıza çözünürlükleri(?) mevcut. Bizde tanımlama ile derleyiciye diyoruz ki benim işlemcim şunlardan biri. Bundan sonra stm32f10x.h dosyasında ve diğer dosyalarda bunu göz önünde bulundururak kodları derle. stm32f10x.h dosyasını incelerseniz ne demek istediğim daha iyi anlaşılır. Hafızaya program yerleştirme algoritmasıyla alakalı bir durum sanırım. Yanlışım varsa kusura bakmayın.

  /* #define STM32F10X_LD */     /*!< STM32F10X_LD: STM32 Low density devices */
  /* #define STM32F10X_LD_VL */  /*!< STM32F10X_LD_VL: STM32 Low density Value Line devices */ 
  /* #define STM32F10X_MD */     /*!< STM32F10X_MD: STM32 Medium density devices */
  /* #define STM32F10X_MD_VL */  /*!< STM32F10X_MD_VL: STM32 Medium density Value Line devices */ 
  /* #define STM32F10X_HD */     /*!< STM32F10X_HD: STM32 High density devices */
  /* #define STM32F10X_HD_VL */  /*!< STM32F10X_HD_VL: STM32 High density value line devices */ 
  /* #define STM32F10X_XL */     /*!< STM32F10X_XL: STM32 XL-density devices */
  /* #define STM32F10X_CL */     /*!< STM32F10X_CL: STM32 Connectivity line devices */

  Tip: To avoid modifying this file each time you need to switch between these
        devices, you can define the device in your toolchain compiler preprocessor.

- Low-density devices are STM32F101xx, STM32F102xx and STM32F103xx microcontrollers
   where the Flash memory density ranges between 16 and 32 Kbytes.
- Low-density value line devices are STM32F100xx microcontrollers where the Flash
   memory density ranges between 16 and 32 Kbytes.
- Medium-density devices are STM32F101xx, STM32F102xx and STM32F103xx microcontrollers
   where the Flash memory density ranges between 64 and 128 Kbytes.
- Medium-density value line devices are STM32F100xx microcontrollers where the
   Flash memory density ranges between 64 and 128 Kbytes.   
- High-density devices are STM32F101xx and STM32F103xx microcontrollers where
   the Flash memory density ranges between 256 and 512 Kbytes.
- High-density value line devices are STM32F100xx microcontrollers where the
   Flash memory density ranges between 256 and 512 Kbytes.   
- XL-density devices are STM32F101xx and STM32F103xx microcontrollers where
   the Flash memory density ranges between 512 and 1024 Kbytes.
- Connectivity line devices are STM32F105xx and STM32F107xx microcontrollers.


mistek biliyormusun şuan keilden acayip soğudum ve bu soğukluk nefret seviyesine ulaştı.. yahu bunları kullanıcıya neden uğraştırır ki bir ide?

X-Fi

Alıntı yapılan: Tanrın Oğlu - 12 Eylül 2013, 14:53:51
mistek biliyormusun şuan keilden acayip soğudum ve bu soğukluk nefret seviyesine ulaştı.. yahu bunları kullanıcıya neden uğraştırır ki bir ide?

Keil sadece bir ide değil aynı zamanda tüm arm işlemcilerini destekleyen compilier. Bunlarla uğraşmanıza sebep olan aslında ST'nin kütüpane yapısı kütüpanelerin kullanımındaki kolaylıklarına sahip olabilmek için birkaç ufak tefek ayar gerekiyor hepsi bu.

Belkide siz kütüpaneleri kullanmadan keili başlatıp MCU yu seçip CMSIS kullanıp REG->REG=x; yapısında kod yazmalısınız. Ama buseferde 32 bit işlemcinin mimarisi kafanızı patlatacak. Konuyu doğru anlamak lazım. Seçim sizin.
http://www.coskunergan.dev/    (Yürümekle varılmaz, lakin varanlar yürüyenlerdir.)