![PIC Mikrodenetleyiciler için ICSP'yi Anlamak: 4 Adım (Resimlerle) PIC Mikrodenetleyiciler için ICSP'yi Anlamak: 4 Adım (Resimlerle)](https://i.howwhatproduce.com/images/002/image-3283-93-j.webp)
2025 Yazar: John Day | [email protected]. Son düzenleme: 2025-01-23 15:14
![PIC Mikrodenetleyicileri için ICSP'yi Anlamak PIC Mikrodenetleyicileri için ICSP'yi Anlamak](https://i.howwhatproduce.com/images/002/image-3283-94-j.webp)
Mikrodenetleyicileri programlamak zor değil. Bir programcı inşa etmek harika bir ilk elektronik projesidir. Bu talimatın amacı, Microchip PIC'ler ile kullanılan basit 'devre içi seri programlama' yöntemini açıklamaktır.
Adım 1: Neden ICSP?
![Neden ICSP? Neden ICSP?](https://i.howwhatproduce.com/images/002/image-3283-95-j.webp)
Büyük bir DIP (delikten geçen) çipi programlamak kolaydır. Soketli bir programlayıcıya yerleştirin, yakın ve uygulama devresine geri dönün. Test edin ve tekrarlayın.
Daha küçük (yüzeye monte) yongalarla işler daha da zorlaşıyor. QFN, SSOP, QFP ve hatta büyük SOIC.300 paketleri için standart soket yoktur. Bu çiplere bağlanabilen ve programlanabilen gerçekten pahalı (100 dolar) klipler var. Kullandığınız her chip türü ve pin sayısı için farklı bir klips gerekir. Bir alternatif var. Adı ICSP. ICSP, 'devrede seri programlayıcı(ing?)' anlamına gelir. Uygulama devresine bağlıyken bir PIC'yi programlamanın bir yoludur. Bu doğru, artık çip değişimi yok. Neden ICSP? 1. Küçük paket çipler için programlama soketi yoktur. Klipler pahalıdır. 2. Geliştirme sırasında çipleri programlayıcının içine ve dışına taşımak acı vericidir. Yüzeye monte parçalar için imkansız.
Adım 2: ICSP Nedir?
![ICSP Nedir? ICSP Nedir?](https://i.howwhatproduce.com/images/002/image-3283-96-j.webp)
![ICSP Nedir? ICSP Nedir?](https://i.howwhatproduce.com/images/002/image-3283-97-j.webp)
![ICSP Nedir? ICSP Nedir?](https://i.howwhatproduce.com/images/002/image-3283-98-j.webp)
![ICSP Nedir? ICSP Nedir?](https://i.howwhatproduce.com/images/002/image-3283-99-j.webp)
Bir uygulama devresine bağlıyken bir PIC'yi programlamak için beş bağlantı gereklidir. Bu bağlantıyı hızlı ve kolay hale getirmek için devre kartlarıma 5 pinli bir başlık ekliyorum. PIC programlamanın temelleri. Bir PIC'yi programlamak için beş bağlantı gereklidir. Güç, toprak, bir programlama voltajı, saat ve veri.+ (Vdd)/-(Vss) Bunlar güç ve toprak bağlantılarıdır (Vdd, Vss). Oldukça standart. 'Gerçek' voltaj seviyelerine sahip bir programlayıcı kullanıyorsanız (JDM2 DEĞİL!), uygulamanız programlandığında bu bağlantıları ortadan kaldırarak kendi güç kaynağından çalışabilir. Vpp Bu, programlama voltajıdır. PIC'ler, MCLR/Vpp pimine ~13 volt yerleştirildiğinde programlama moduna girer (genellikle modern PIC'lerde pim 1, daha fazlası aşağıdadır). Saat/Veri veya PGC/PGD Saat ve veri hatları PIC'yi yazmak ve okumak için kullanılır bellenim. Bunlar genellikle PORTB6 ve PORTB7 ile aynı pinlerdir. Alıştırma: Aşağıdaki resimlerde PIC'ler üzerindeki ICSP bağlantı noktalarını belirleyin. PIC uyuyorsa, onu takın. Talimatlarla ilgili JDM2 tasarımım hakkında birçok soru alıyorum. En sık "PIC X programlayacak mı?""' şeklindedir - işte bunu nasıl anlayabilirsiniz: 1) Veri sayfasına bakın. Aşağıdaki resme benzeyen 'Pin Şeması'nı bulun.2) Programlama için bağlanması gereken pinlerin (Vpp, Vdd, Vss, Data, & Clock) yerini belirleyin.3) Üzerindeki soket bağlantısına bakın. programcı. Gerekli pinleri programlayıcıdaki bir soketle eşleştirebilir misiniz?
Adım 3: Nasıl ICSP?
![Nasıl ICSP? Nasıl ICSP?](https://i.howwhatproduce.com/images/002/image-3283-100-j.webp)
![Nasıl ICSP? Nasıl ICSP?](https://i.howwhatproduce.com/images/002/image-3283-101-j.webp)
![Nasıl ICSP? Nasıl ICSP?](https://i.howwhatproduce.com/images/002/image-3283-102-j.webp)
![Nasıl ICSP? Nasıl ICSP?](https://i.howwhatproduce.com/images/002/image-3283-103-j.webp)
Tasarımınıza bağlı olarak artık gerekli tüm bağlantıları yapabilir ve PIC'inizi programlayabilirsiniz. Bilmeniz gereken birkaç yakalama var. ICSP için tasarım önemlidir. Microchip, ICSP için tasarım hakkında güzel bir PDF uygulama notu sağlar. https://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1824&appnote=en011744İşte önceki talimatlarımdan bazı ipuçları ve ICSP tasarım örnekleri. Tip #1, Tehdit düzeyi: ÖnemliSAAT'e başka hiçbir şey bağlamayın ve DATA pinleri (genellikle RB6 & RB7, PGC & PGD). Sadece yapma. Çok zeki mühendislik tiplerinin paçayı sıyırdığı ama yapmadığı durumlar vardır. Pimlere bağlı bileşenler, saati ve veri sinyallerini çarpıtarak öngörülemeyen programlamaya neden olur. Ek olarak, bir devre içi seri hata ayıklayıcı kullanmak isterseniz, yapamazsınız. Sadece bunu yapmayın. İpucu #2 Tehdit seviyesi: PatlayıcıHer zaman programlama voltajı ile sistem voltajı arasında bir diyot kullanın. Bir PIC'de MCLR (master clear) kullanıyorsanız, 10Kish'lik bir direnç aracılığıyla MCLR pinine biraz voltaj sağlamalısınız. Bu aynı zamanda programlama moduna girmek için ~13 volt uygulayacağınız pindir. Direnç ile MCLR/Vpp pin arasına 1n4148 (eşdeğer) diyot koydum (şemada ve aşağıda gösterildiği gibi). Bu, programlama voltajını Vpp pininde tutar ve kartınızdaki diğer bileşenlerin tahrip olmasını önler. Tip #3 Tehdit seviyesi: (yeniden)yorgunDüşük voltaj programlaması sizi engelliyor dostum. LVP ile hiç başarılı olamadım. Kendi gözlerimle (sürekli) çalıştığını hiç görmedim. Sadece mermiyi ısır ve bir JDM2 programcısı oluşturmak için 2,50 dolar harca.
Adım 4: ICSP Programcıları
![ICSP Programcıları ICSP Programcıları](https://i.howwhatproduce.com/images/002/image-3283-104-j.webp)
![ICSP Programcıları ICSP Programcıları](https://i.howwhatproduce.com/images/002/image-3283-105-j.webp)
ICSP, farklı bir programlama protokolü gerektirmez. Soket tabanlı bir programcı gerekli sinyali zaten üretir, ancak kablolar yerine sokete gönderir. Çoğu soket programcısı, kabloları soketten uygulama devresine bağlayarak bir ICSP olarak kullanılabilir. Örneğin, orijinal JDM2 programcısı (burada: https://www.jdm.homepage.dk/newpic.htm) kullanılabilir. Gerekli 5 sinyali bir başlığa getirerek ICSP programlaması yapın. Bu, programcıda burada görülebilir: https://www.belza.cz/digital/jdm.htm. İşleri el altında tutmak için bu tasarımı Eagle Cad'de yeniden yaptım ve bu talimata ekledim. Transistörün yönünü izleyin, ayak izlerinden biri yanlış olabilir (bunu bir yıldan fazla bir süre önce yaptım, artık hatırlamıyorum). Benzer şekilde, güncellenmiş JDM2 programlayıcım (burada: https://www.instructables.com/id/EN28KZDDYVEP286GRI/), kabloları DIP soketlerine yapıştırarak ve bunları hedef PIC'ye bağlayarak ICSP için kullanılabilir. *****JDM2'ler korkak voltajlar kullanır…devreye uygulama devresine bağlı harici güç (veya hatta toprak) OLMADAN bağlayın. Güç uygulamadan önce ICSP bağlantılarını çıkarın. Bunu yapmamak yıkıcı değildir, ancak başarısız programlamaya neden olacaktır******** Diğer bir seçenek (yarı) uygun bir ICD programlayıcıdır. ICD, kodda kesme noktaları ayarlayarak veya bellek ve bağlantı noktası değerlerini okuyarak PIC'nizde ürün yazılımının yürütülmesini kontrol etmenizi sağlar. Bir ICD ayrıca kodun yürütülmesini canlandırabilir, uygulama devresine güç sağlayabilir ve PIC'yi programlayabilir. Bütün bunları tartıştığımız aynı 5 pinli ICSP bağlantısı üzerinden yapıyor. Kendiniz yapabileceğiniz birkaç ICSP klonu burada görülebilir: https://www.icd2clone.com/wiki/Main_Page. PiCS'yi (rev B) birkaç ay önce kurdum ve sevdim.
Önerilen:
74LS273 Octal D Flip-Flop IC'yi Anlamak: 5 Adım
![74LS273 Octal D Flip-Flop IC'yi Anlamak: 5 Adım 74LS273 Octal D Flip-Flop IC'yi Anlamak: 5 Adım](https://i.howwhatproduce.com/images/002/image-3697-61-j.webp)
74LS273 Octal D Flip-Flop IC'yi anlamak: Eski bir uydu alıcısından bazı bileşenleri kurtarırken ellerimi 74LS273 IC'ye aldım, projeler arasında yaptığım ve biraz para biriktirdiğim bir şey….Bu IC kontrol panelindeydi ve kabloluydu 4 Haneli 7 Segmentli LED ekran, bazı trans
Mikrodenetleyiciler İçin Başlangıç Kılavuzu: 10 Adım (Resimlerle)
![Mikrodenetleyiciler İçin Başlangıç Kılavuzu: 10 Adım (Resimlerle) Mikrodenetleyiciler İçin Başlangıç Kılavuzu: 10 Adım (Resimlerle)](https://i.howwhatproduce.com/images/002/image-4694-35-j.webp)
Mikrodenetleyiciler için Başlangıç Kılavuzu: Uzaktan kumandalar, yönlendiriciler ve robotların hepsinin ortak noktası nedir? Mikrodenetleyiciler! Bu günlerde, yeni başlayanlar için uygun mikrodenetleyicilerin kullanımı kolaydır ve yalnızca bir dizüstü bilgisayar, bir USB kablosu ve bazı (ücretsiz) açık kaynaklı yazılımlarla programlanır. Woohoo!! Hepsi
Ucuz 433MHz RF Modülleri ve Pic Mikrodenetleyiciler Kullanan Kablosuz İletişim. Bölüm 2: 4 Adım (Resimlerle)
![Ucuz 433MHz RF Modülleri ve Pic Mikrodenetleyiciler Kullanan Kablosuz İletişim. Bölüm 2: 4 Adım (Resimlerle) Ucuz 433MHz RF Modülleri ve Pic Mikrodenetleyiciler Kullanan Kablosuz İletişim. Bölüm 2: 4 Adım (Resimlerle)](https://i.howwhatproduce.com/images/002/image-5328-94-j.webp)
Ucuz 433MHz RF Modülleri ve Pic Mikrodenetleyiciler Kullanan Kablosuz İletişim. Bölüm 2: Bu talimatın ilk bölümünde, ucuz TX/RX 433MHz modüllerini kullanarak kablosuz olarak basit bir dize göndermek için MPLAB IDE ve XC8 derleyici kullanarak bir PIC12F1822'nin nasıl programlanacağını gösterdim. Alıcı modülü bir USB aracılığıyla UART TTL'ye bağlandı. kablo reklamı
Patates Pili: Kimyasal ve Elektrik Enerjisini Anlamak: 13 Adım (Resimlerle)
![Patates Pili: Kimyasal ve Elektrik Enerjisini Anlamak: 13 Adım (Resimlerle) Patates Pili: Kimyasal ve Elektrik Enerjisini Anlamak: 13 Adım (Resimlerle)](https://i.howwhatproduce.com/images/002/image-4478-97-j.webp)
Patates Pili: Kimyasal ve Elektrik Enerjisini Anlamak: Bir ampulü sadece bir veya iki patatesle çalıştırabileceğinizi biliyor muydunuz? İki metal arasındaki kimyasal enerji elektrik enerjisine çevrilir ve patates yardımıyla bir devre oluşturur! Bu, olabilecek küçük bir elektrik yükü oluşturur
Pic 16F676 ICSP PICkit 2 Programlayıcı için Programlama Soketi: 6 Adım
![Pic 16F676 ICSP PICkit 2 Programlayıcı için Programlama Soketi: 6 Adım Pic 16F676 ICSP PICkit 2 Programlayıcı için Programlama Soketi: 6 Adım](https://i.howwhatproduce.com/images/004/image-10323-10-j.webp)
Pic 16F676 PICkit 2 Programcısı için ICSP Programlama Soketi: Robot projem için bu çift DC motor modülünü oluşturmaya çalışıyorum ve PCB'ye ICSP pin başlığı yerleştirmek için yerim yoktu. Bu yüzden bu tasarımı çabucak alay ettim