Merhaba. Stm32f103 ile bir pcb dizaynı yapıyorum. Aklıma takılan konu şu. Pcb yi ürün haline getirirken kod yükleme esnasında boot 0 ve boot 1 bacakları belli konumlarda olması gerekiyor.
(https://i.ibb.co/rm25Y2p/Ads-z.png) (https://ibb.co/rm25Y2p)
Blue pill modülünde bu headerla halledilmiş.
İşlemciyi pcb ye monte ettikten sonra bu bacakları header ile 1 veya 0 konumlarına getirmek bana çok pratik gelmedi. Kod yükleme işlemini pratik olarak yapmak için headersız pratik bi çözümünüz var mı? Yani st linki direk takıp kodu yükleyip işi bitirecek bir çözüm. Tecrübe eden arkadaşlardan yardım bekliyorum.
Dogrudan flash'dan boot edecek yapi isini gorecektir.
Boot0 pinini lowa baglaman yetecek.
boot0 0 da iken ne st link utility nede stm32cube ide bağlanamıyor.
Gozden kacirdigin baska bir sebep vardir. STM32F103 ile yaptigim butun devrelerim bu sekilde calisiyor. Asagidaki semada oldugu gibi boot 0 pininin low olmasi yeterli.
STlink cihazini bagla. Bir elin reset butonuna basiyor olsun. Connect de ve bu anda parmagini resetten cekmeyi dene.
(http://www.cncdesigner.com/wordpress/wp-content/uploads/MCU1.png)
Evet resete basılı tutup connect dediğimde bağlantı olduı. fakat bu defada pcb ye reset butonumu eklemeliyim.
Yok yok reset butonuna gerek yok.
Bu resete basip kod atabildigine gore en azindan donanim vs calisiyor.
Yeni monte ettigim kartlar, pasta vs kullandigim icin bahsettigin sekilde kod yuklemede cok nazlaniyor.
Tiner, alkol vs ile temizlik yaptiktan sonra resete basmaya gerek kalmadan da kod sorunsuz yukleniyor.
Senin de oyle sorunlarin olabilir.
Haa bir de STLink cihazinda da sorun olabilir. Yani cihazin kodu yukler tamam stlink cihazim saglam calisiyor dersin ama aslinda sorunu vardir.
Mesela son projemde tam anlamiyla ot yoldum. En son care kendi jtag cihazimi yapmak oldu ve bahsettigin turdeki ve daha kotusu debug asamasindaki tum sorunlarim kokunden bitti.
@yktronik ve
@a.zorba'ya aklima geldikce dua ediyorum.
Cunku Jtag sorunumu onlar sayesinde 4x4 cozmus durumdayim. (https://www.picproje.org/index.php/topic,77548.0.html)
http://www.cncdesigner.com/wordpress/?p=8972
bende tüm forum la beraber muhittin kaplan ve size ayrıca teşekkur ederim sayenizde ögrendim.
şöyleki daha pcb yi yapmadım pcb çizme aşamasındayım. işimi sağlama almak için blue pill üzerinde denemelerimi yapıyorum. donanım olarak sorun olduğunu o yüzden düşünmüyorum.ilginiz için çok teşekkür ederim.verdiğiniz linkteki bilgileri inceliyor ve deniyorum sonuç olarak yine sizlere dönüş yaparım.Ayrıca elimdeki st limk klon. orjinalini alsam yine aynı sorunla karşılaşırmıyım.
Orjinal STlink cihazlari kaldirip attim. Orjinal STlink V2 ve Stlink V3 kullaniyordum simdi hepsi cop.
Sitemde verdigim duzenegi yap ve STlink sorununa el salla. Dua edeceksin.
Bu arada sitemde yazmamisim ilk firsatta oraya da ekleyeyim. STlink cihazindan cikip ana kartimin SWD pinlerine giden kablonun boyunu sadece 3 cm boyunda yaptim.
malesef dünden beri uğraşıyorum. stlinkten farkı yok. reset tuşuna basarak bağlanıyor.
Kartinin temizligini yap ardindan StLinkte Settings altinda ki Reset mode seceneklerini tek tek dene.
Software System Reset gibi secenekler goreceksin.
hepsini denedim bi değişiklik yok galiba header lı halledeceğim
Headerla nasil bir sey yapacaksin?
(https://i.ibb.co/Db50QxN/DSC-5474.jpg) (https://ibb.co/Db50QxN)
buradaki sistemin aynısını yapayım diye düşünüyorum. kod atarken bir kere konum değiştirip sonradan boot0'ı 0'a çekerim
Merhaba,
Gozden kacırdığınız noktalar olabilir. Size 3 sene önce yapmış olduğum bir cihaz için cizimi ekliyorum. Buradan bakabilirsiniz. Cubeide kod yazıp da attığım oldu , bu şekilde çizdim. Kod yüklemede sorun olmuyor.
(https://i.ibb.co/g64fCrx/103-cizim.jpg) (https://ibb.co/g64fCrx)
(https://i.ibb.co/GWJjKfQ/103-swd-port.png) (https://ibb.co/GWJjKfQ)
yaptığım bağlantı en basitinden aşağıdaki gibi. blue pillde zaten gerekli bağlantılar var.bir eksik var mı diye multimetre ile kontrol ettim. artık kendimden şüphe etmeye başladım. :du:
(https://i.ibb.co/HFyZgVL/DSC-5474.jpg) (https://ibb.co/HFyZgVL)
geliştirme yaparken sys den debug ı single wire şeklinde ayarladım. bu şekilde geliştirme esnasında bi sorun yaşamadım. fakat alınan sıfır çipler de bu ayar yapılmamış olacak. bu yüzden bu araştırmaya girdim. bilgi olarak bunuda yazmak istedim.
Ciplerde SWD diye bir ayar yapilmiyor.
StLink cihazini yazilim senin tanimlamana gore ya Jtag yada SWD uzerinden kullaniyor.
Keil'de debug ayarlarinda swd mi yoksa jtag mi kullanacagini tanimliyorsun. STlinkte de ayni ayar var.
Eger yazdigin program SWD/jtag pinlerini baska amaclar icin tanimliyorsa programi bir kere cipe yazdinmi artik o pinler program calisir calismaz alikonulacagi icin swd Jtag programlamada sorun yasarsin. Bu durumda yapilacak sey cipi hard reset atarak programlamaktir.
Sunu da dene. STlink ile cipi komple sil. Normal reset ayarini yap. Cipi resetlemeden programlamayi dene.
Yada cipe kendi yazdigin bir programi degil bir baska programi atmayi dene.
bahsettiğim kısım burası.tuhaf şeyler oldu kafam karıştı biraz. Dediğiniz gibi chipe stlinkten bağlanıp full erase ettim. sonrasında stlinkten rahatca connect oldu. fakat stmcube ide den debug kısmı no debug seçip yükleme yaparsam sonraki bağlantılarda hardware reset gerekiyor. Sebebini anlamadım ama kendimce bi çözüm oldu. Full erase yaptığımda fabrika çıkışına dönüyorsa bağlandığımda herhangibir sorun olmuyor. ilk yüklemede ise debug kısmında serial wire seçerek bu sorundan kurtulmuş oldum.
(https://i.ibb.co/G01hCfj/dasdasd.png) (https://ibb.co/G01hCfj)
Alıntı yapılan: saban88 - 15 Haziran 2020, 14:32:49... fakat stmcube ide den debug kısmı no debug seçip yükleme yaparsam sonraki bağlantılarda hardware reset gerekiyor.
...
Tuhaf bir şey yok.
No debug deyip programlama bacakları yok, ben kullanacağım onları demiş oluyorsun.
Mcu enerjilenince bu bacaklara bakıp programlayıcı takılımı kontrol etmiyor veya
enerjiliyken programlama bacaklarından programlama ile ilgili sinyaller gelsede umursamıyor.
Bu halde bile reset pinine basılı olarak programlamaya başlarsan
mcu programlama bacaklarına bakar ve programlayıcı program yükleyecekse yükleyebilir.
Alıntı yapılan: saban88 - 15 Haziran 2020, 14:32:49... ilk yüklemede ise debug kısmında serial wire seçerek bu sorundan kurtulmuş oldum.
...
Kendin problem çıkarıp olması gerektiği gibi yapıp çözdüm diyorsun.
Çipe program yüklerken
daha sonrada program yükleyeceksen
hangi bacaklardan ne yöntemle programlama yapacağını yüklediğin kodda belirteceksin.
İşte bu debug kısmında serial wire seçmek bir yolu,
Swdio Swclk pinlerini programlama pinleri olarak kullanacağım demiş oluyorsun.
Aynıları yazılmış zaten önceki mesajlarda.
Alıntı yapılan: RaMu - 15 Haziran 2020, 15:42:45Tuhaf bir şey yok.
No debug deyip programlama bacakları yok, ben kullanacağım onları demiş oluyorsun.
Mcu enerjilenince bu bacaklara bakıp programlayıcı takılımı kontrol etmiyor veya
enerjiliyken programlama bacaklarından programlama ile ilgili sinyaller gelsede umursamıyor.
Bu halde bile reset pinine basılı olarak programlamaya başlarsan
mcu programlama bacaklarına bakar ve programlayıcı program yükleyecekse yükleyebilir.
Kendin problem çıkarıp olması gerektiği gibi yapıp çözdüm diyorsun.
Çipe program yüklerken
daha sonrada program yükleyeceksen
hangi bacaklardan ne yöntemle programlama yapacağını yüklediğin kodda belirteceksin.
İşte bu debug kısmında serial wire seçmek bir yolu,
Swdio Swclk pinlerini programlama pinleri olarak kullanacağım demiş oluyorsun.
Aynıları yazılmış zaten önceki mesajlarda.
hacı abi verdiğin bilgiler için sağol ama yanında olsam temiz sopanı yerdim galiba. Bunları bilsem zaten sormam. Problemi çıkardığımın farkında değilim. Tırmalayarak öğreniyorum. Yardımlarınız için
@RaMu ve
@z teşekkürler.
Alıntı yapılan: saban88 - 15 Haziran 2020, 16:16:58hacı abi verdiğin bilgiler için sağol ama yanında olsam temiz sopanı yerdim galiba. Bunları bilsem zaten sormam. Problemi çıkardığımın farkında değilim. Tırmalayarak öğreniyorum. Yardımlarınız için @RaMu ve @z teşekkürler.
Yok hacım ne sopası öyle zulumler bizde yok.
Bizde aynı tırmanışlardan geçtik,
@z nin trt spikeri ahengiyle anlatımından anlaşılmayınca
birde halk ağzı ile anlatayım dedim.
merhaba forum,
yeni konu açmiyim dedim
bu aşağıdaki hata nerden kaynaklanır ?
orijinal st-link v2 SWD bacaklarını blue pill e bağladım
blue pill orijinalindeki blink led çalışıyor (yani canlı)
st-link in ışığı sabit kırmızı yanıyor driveri aygıt yöneticisinde çalışıyor gözüküyor
https://i.imgyukle.com/2020/09/07/xXWynv.png
blue pill in 3.3 voltu ST-Link in VCC ucuna bağlayınca işlemciye program atabildim
attım ama CUBEIDE den start butona basınca uC çalışmaya başlıyor
ama SWD bağlantısı kopuyor breakpointlerde durmuyor
( basit LED blink uygulaması - compile de debug seçili )
aşağı resimdeki mesajı veriyor - SWD hızını dibine kadar düşürdüm gene aynı
neden olabilir ? teşekkür
https://i.imgyukle.com/2020/09/09/xmXyBs.png
reset baglımı . degilse baglayıp reset ayarını connet under reset ile deneyebilirmisin.