18F452 tqfp kılıf programlama hakkında

Başlatan BAHAR, 07 Ocak 2012, 22:50:16

BAHAR

Merhabalar, bir kart üzerinde tqfp kılıf yapısına sahip bir 18F452 denetleyicisini dışarıdan program atmak için aşağıda resimde gördüğünüz ICSP kısmı var ve diyodların değeri 1N4148, denetleyicinin bulunduğu kart üzerine beslemeli bir jmd programlayıcıdan +5, GND, RB5, RB6, RB7 uçlarını karta taşısam, program atabilir miyim? Öyle ise, ICSP soketinde gördüğünüz 1. pin, diyodlara bağlı olan ucu programlayıcıda nereye bağlamam gerek?


mozkan87

Evet bu şekilde program atabilirsiniz ama programlayıcı kartı çalıştırmak için yeterli akımı sağlayamayabilir. O nedenle devreyi harici güç kaynağı ile besleyip, program atabilirsiniz. Bu durumda, işlemcinin PGD PGC MCLR ve GND uçlarını bağlamanız yeterli olacaktır.

BAHAR

#2
Alıntı yapılan: mozkan87 - 07 Ocak 2012, 23:34:25
Evet bu şekilde program atabilirsiniz ama programlayıcı kartı çalıştırmak için yeterli akımı sağlayamayabilir. O nedenle devreyi harici güç kaynağı ile besleyip, program atabilirsiniz. Bu durumda, işlemcinin PGD PGC MCLR ve GND uçlarını bağlamanız yeterli olacaktır.

Yanıt için teşekkürler, programlayıcının beslemesi dışarıdan 12V'luk adaptör ile yapılmış, programlayıcının üzerinde zif soket var ve o yüzden zif soketten kablo ile gerekli uçları karta taşıyacağım, pic beslemesi dahil tüm uçları taşırım.

bir de pic'in bulunduğu karta programlayıcıdan değil de harici bir besleme ile kaynak sağladığımızda, programlayıcının gnd kısmını karta taşımaya gerek yok sanırım değil mi?

mozkan87

Hayır. GND lerin kesinlikle taşınması gerekli. Eğer iki farklı besleme kayanağı var ise bu ikisinin GND leri mutlaka ortak olmalı. Eğer 18f452 kartında çok fazla devre elemanı yoksa daha doğrusu bu kart çok fazla akım çekmiyorsa, programlayıcıdan bu kartın ICSP pinlerine Vdd, GND, PGD, PGC ve MCLR uçlarını taşıyarak programlama yapabilirsiniz. 6. pin aslında LVP(low voltage programming) için kullanılıyor bu nedenle LVP kullanılmayacaksa ilk 5 pinin bağlanması yeterli olacaktır. Ama eğer 18f452 kartı çok akım çekebilir gibi bir düşünceniz var ise bukartı ayrı bir kaynaktan besleyip, ICSP pinlerinden GND, PGD, PGC ve MCLR olmak üzere 4 tanesini bağlamız yeterli olacaktır.

BAHAR

teşekkürler sizi anladım, ama yanlız sormak istediğim bir soru daha var.

Elimde ki dahili beslemeli JMD programlayıcı da icsp desteği yok yada böyle soket. Bu programlayıcının zif soketinden bahsedilen gerekli pinleri, tqfp 18F452'nin bulunduğu karta taşıyacağım. Anlamadığım nokta şu ki, programlayıcıdan programlama yapacağım için yukarıda ki resimde gördüğünüz 2 adet 1N4148 diyodlarını kaldırıp mcrl ucuna direk mi bağlamalıyım? Ama benim düşünceme göre kaldırmalıyım çünkü, tqfp kılıfı dip kılıf gibi programlanacak doğru mu düşünüyorum sizce,

mozkan87

Aslında işe temelden başlamak gerekirse programlayıcılar için TQPF olmuş DIP olmuş farketmez. Programlayıcıların (LVP yi saymazsak) 5 adet bağlantı noktası var. Temel buradan gelir. Daha sonradan bunlara ek olarak kolaylık olsun diye ziff soket yapısı yerleştirilir. Mesela microchip'in programlayıcılarının hiç birinde ziff soket yoktur, sadece 6 adet pin çıkışı vardır. 3. parti programlayıcılar doğrudan ziff soket yapısındadır. Ama onlar içinde durum aynıdır aslında. Bazı programlayıcılarda hem ziff soket hem ICSP bağlantısı bulunur örneğin Brenner8. Neyse sizin yapacağınıza gelirsek
1) DIP kılıf 18f452 için GND, Vcc, PGD, PGC ve MCLR pinlerini dataheetten bulacaksınız.
2) Bu pinleri doğru sıra ile karttaki ICSP bağlantısına bağlayacaksınız.
3) Programlayıcıdan 18f452'yi seçeceksiniz.
4) Programı yükleyeceksiniz.
hepsi bu kadar.
1N4148 leri kaldırmanız gerekmez diye düşünüyorum ama programlayıcı gerekli olan Vpp voltajını MCLR pinine iletemezse programlayamaz, bu durumda sökmeniz gerekebilir. Ama MCLR bacağındaki C5 kapasitörünü kaldırmanız gerekebilir. Ama önce hiçbir şeyi sökmeden programlamayı deneyin programlayıcı hata verirse sırayla önce C5'i sökün eğer gene hata verirse diyotları soküp kısa devre edin, hala hata veriyorsa R13 pull up direncini sökün.

Aslında bu tasarım yanlış bir tasarım çünki, sadece bir adet 1N4148 MCLR bacağına bağlayıp daha sonra C5'in ve R13'ün bağlanması daha doğru. Ve ICSP için MCLR ucu 1n4148 ile MCLR pini arasından alınırsa C5 ve R13 ün sökülmesine gerek kalmaz. Bununla ilgili microchipin ICD için olan datasheetini inceleyebilirsiniz.

BAHAR

Herkese merhaba, programlayıcım tqfp pic'i programlamıyor hatta hiç görmüyor bile. Karttaki gerekli uçları programlayıcı üzerinde ki zif sokete aşağıdaki gibi aktardım. Bağlantım aşağıda eksik nerede acaba?


elektronikhobi

Herşeyden önce PIC üzerinde Vss ve VDD uçları takılmamış.

Hangi programlayıcıyı kullandığını bilmiyorum ama kartının devre üzerinde seri programlama özelliği varsa sorunsuz programlanacağını düşünüyorum.

Devre üzerinde seri programlamada uçlar şu şekilde:
1->Vpp
2->Vdd
3->Vss
4->ICSPDAT
5->ICSPCLK
6->Aux (Kullanılmıyor)

http://picprojects.org.uk/projects/ICSP/icsp-info.pdf

Devre üzerinde seri programlama devresi de şu şekilde oluyor:


Devre üzerinde seri programlama by elektronikhobi, on Flickr
"Yirminci asrın akıllara hayret veren keşiflerinden birisi de hiç şüphesiz transistörlerdir."


BAHAR

Merhaba, programlayıcıda ICSP için bir soket bulunmuyor. O yüzden gerekli uçları zif soketten tqfp'ye aktardım. Bu zıf soket bir seri programlayıcı ve dip kılıfta ki 18F serilerinin tümünü programlayabilen çok amaçlı deney seti. Ben tqfp kılıfta ki pic'i bir dip kılıf gibi programlayıcının zif soketine bağladım. Şuan da programlayıcı pic'i tanımıyor bu yüzden okuma yada yazma yapmıyor programlama yaparken aşağıda ki hata ile karşılaşıyorum.

VDD ve VSS uçlarını bağlanmamış demişsiniz ama ben tqfp'nin VDD ve VSS uçlarını zif soketten karşıladım. Ölçtüğüm zaman +5V görüyorum?

Zıf soketten tüm uçları olduğu gibi tqfp'ye aktardım. Çünkü o soket dip kılıf 18F452 programlayabiliyor. Bu yüzden gerekli uçlar tqfp kılıfıda programlar düşüncesindeydim.

Hata mesajı:


justice_for_all

peki picin vdd leri ve vss leri baglimi?
Deneyip de başaramayanları değil, yalnızca denemeye bile kalkışmayanları yargıla.   Gökhan Arslanbay

elektronikhobi

Alıntı yapılan: BAHAR - 03 Şubat 2012, 21:47:05
Şuan da programlayıcı pic'i tanımıyor bu yüzden okuma yada yazma yapmıyor programlama yaparken aşağıda ki hata ile karşılaşıyorum.

Ben de ilk kez devre üzerinde seri programlama yaparken böyle hatalarla karşılaşmıştım. Ama benim kullandığım PICKit2 oldukça yetenekli bir programlayıcı ve sil deyince silebildim.



Alıntı yapılan: BAHAR - 03 Şubat 2012, 21:47:05
VDD ve VSS uçlarını bağlanmamış demişsiniz ama ben tqfp'nin VDD ve VSS uçlarını zif soketten karşıladım. Ölçtüğüm zaman +5V görüyorum?

Devre şemasında 26 nolu uç VDD 5V'a 29 numaralı uç VSS toprağa bağlanması gerekiyor. Ya da bağladınız ama devre şemasında çizmediniz.

Bende de sizin gösterdiğiniz programlayıcı gibi zif soket uçları bulunan ikinci bir programlayıcı var. Ama üzerinde devre üzerinde seri programlama çıkışı da var. Seri programlama ("ICSP") çıkışı olduğuna göre onun da programlama yapması lazım. Ama PICKit2 o kadar yetenekli ki (örneğin Ubuntu altında da programlama yapabiliyor) diğerinin daha bir kere bile denemedim  :)

Sizin de bahsettiğiniz gibi PIC'nin paket tipi önemli değil. Örneğin PICKit2 44 uçlu ("THIN FLATPACK") TQFP şeklinde paketlenen denetçileri de programlayabiliyor.
"Yirminci asrın akıllara hayret veren keşiflerinden birisi de hiç şüphesiz transistörlerdir."


BAHAR

Alıntı yapılan: justice_for_all - 03 Şubat 2012, 21:51:23
peki picin vdd leri ve vss leri baglimi?
Evet hocam bağlı programcı dip kılıfı beslediği gibi tqfp kılıfınıda besliyor. +5V var.

BAHAR

@elektronikhobi, 26, 29. uçlar değil de, 28 ve 29. uçlar 6 ve 7. uçlar ile aynı olduğu için bağlamadım. Söylediğiniz programlayıcı çok güzelmiş. Güle güle kullanın ama bende yok :)

elektronikhobi

Alıntı yapılan: BAHAR - 03 Şubat 2012, 22:45:07
@elektronikhobi, 26, 29. uçlar değil de, 28 ve 29. uçlar 6 ve 7. uçlar ile aynı olduğu için bağlamadım.

Evet haklısınız. Ama o uçları da bağlamak gerekiyor diye biliyorum.

İlk verdiğiniz resimde de 1  nolu uç için şemasını verdiğim şekilde düzenleyebilirsiniz. 2 nolu uç +5V, 3 toprak, 4 nolu uç sizin verdiğiniz resme göre 40 nolu uca PGD/ICSP_DATA ve 5 nolu uç 39 numaralı uca PGC/ICSP_CLOCK bağlanacak. 6 numaralı uç boşta kalıyor.

En azından seri programlama için böyle  :)

Ben PICKit2'yi Farnell'den aldım. 90 liraya kargo falan hepsi içinde ek olarak yanlışlıkta 44 uçlu bir test kartı da var. 3 günde geldi.
"Yirminci asrın akıllara hayret veren keşiflerinden birisi de hiç şüphesiz transistörlerdir."


BAHAR

@elektronikhobi, söylediğin gibi 5 uç yetiyor ve pgm ucu(RB5) boşa çıkıyor. Şuan dediğin gibi mclr'ye 470R yerine bir diyod ekledim ama yine olmadı. Şöyle söyliyim, zaten tqfp pic'in olduğu kart her hangi bir harici beseleme ile beslenmiyor bunun için de diyod yada 470R gibi bir direnç gerekmiyor düşüncesindeyim. Niye programlanmıyor anlamadım :(