Mündəricat:
Video: PIC mikro nəzarətçiləri üçün ICSP -ni anlamaq: 4 addım (şəkillərlə)
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:48
Mikro nəzarətçiləri proqramlaşdırmaq çətin deyil. Bir proqramçı qurmaq böyük bir elektronika layihəsi edir. Bu təlimatın məqsədi Microchip PIC ilə istifadə edilən sadə 'dövrə ardıcıl proqramlaşdırma' metodunu izah etməkdir.
Addım 1: Niyə ICSP?
Böyük bir DIP çipini proqramlaşdırmaq asandır. Yuvalı bir proqramçıya atın, yandırın və tətbiq sxeminə qayıdın. Test edin və təkrarlayın.
Kiçik (səthə montaj) çiplərlə işlər çətinləşir. QFN, SSOP, QFP, hətta böyük SOIC.300 paketləri üçün standart prizlər yoxdur. Bu fişləri bağlaya və proqramlaşdıra biləcək həqiqətən bahalı ($ 100s) kliplər var. İstifadə etdiyiniz hər bir çip növü və pin sayı üçün fərqli bir klip lazımdır. Alternativ var. ICSP adlanır. ICSP 'dövrə serial proqramçısı (ing?)' Deməkdir. Bu, hələ də tətbiq dövrəsinə bağlı ikən bir PIC proqramlaşdırmağın bir yoludur. Düzdü, artıq çip dəyişdirmə yoxdur. Niyə ICSP? 1. Kiçik paket çipləri üçün proqramlaşdırma prizləri yoxdur. Kliplər bahadır. 2. İnkişaf edərkən çipləri proqramçıya daxil etmək və xaric etmək onun ağrısıdır. Səth montaj hissələri üçün mümkün deyil.
Addım 2: ICSP nədir?
Bir tətbiq dövrəsinə qoşularkən bir PIC proqramlaşdırmaq üçün beş əlaqə lazımdır. Bu əlaqəni tez və asan etmək üçün elektron lövhələrimə 5 pinli başlıq əlavə edirəm. PIC proqramlaşdırmanın əsasları. Bir PIC proqramlaşdırmaq üçün beş əlaqə lazımdır. Güc, torpaq, proqramlaşdırma gərginliyi, saat və məlumatlar.+ (Vdd)/-(Vss) Bunlar güc və torpaq əlaqələridir (Vdd, Vss). Olduqca standart. 'Həqiqi' gərginlik səviyyəsi olan bir proqramçıdan istifadə edirsinizsə (JDM2 DEĞİLDİR!), Proqramlaşdırıldıqda tətbiqiniz öz enerji təchizatı ilə işləyə bilər, bu əlaqələri aradan qaldırır. Vpp Bu proqramlaşdırma gərginliyidir. MCLR/Vpp pininə ~ 13 volt yerləşdirildikdə PIC -lər proqramlaşdırma rejiminə daxil olurlar (adətən müasir PIC -lərdə pin 1, daha çox aşağıda). Saat/Məlumat və ya PGC/PGD Saat və məlumat xətləri PIC yazmaq və oxumaq üçün istifadə olunur. firmware. Bunlar ümumiyyətlə PORTB6 və PORTB7 ilə eyni sancaqlardır. Təlim: Aşağıdakı şəkillərdəki PIC -lərdə ICSP əlaqə nöqtələrini müəyyənləşdirin. PIC uyğun gəlirsə, geyinin. JDM2 dizaynımla bağlı çoxlu suallar alıram. Ən çox rast gəlinən "PIC X proqramlayacaqmı?" Aşağıdakı şəkilə bənzəyən 'Pin Şemasını' tapın.2) Proqramlaşdırma üçün bağlanmalı olan pinlərin yerini müəyyənləşdirin (Vpp, Vdd, Vss, Data, & Clock).3) proqramçı. Proqramçıdakı bir yuva ilə tələb olunan sancaqları uyğunlaşdıra bilərsinizmi?
Addım 3: ICSP necə?
Dizaynınızdan asılı olaraq, indi bütün lazımi əlaqələri qura və PIC -ni proqramlaşdıra bilərsiniz. Bilməli olduğunuz bir neçə tutma var. ICSP üçün dizayn vacibdir. Microchip, ICSP üçün dizayn haqqında gözəl bir PDF tətbiq qeydini təqdim edir. https://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1824&appnote=en011744 Burada əvvəlki təlimatlarımdan ICSP dizaynına dair bəzi məsləhətlər və nümunələr var. Məsləhət #1, Təhlükə səviyyəsi: Vacibdir və DATA pinləri (adətən RB6 & RB7, PGC & PGD). Sadəcə bunu etməyin. Çox ağıllı mühəndislik növlərinin bu işdən yaxa qurtardığı hallar var, amma bunu etməyin. Pimlərə yapışdırılan komponentlər saatı və məlumat siqnallarını əyər və nəticədə proqnozlaşdırıla bilməyən proqramlaşdırma ilə nəticələnir. Əlavə olaraq, dövrədə bir serial ayıklayıcı istifadə etmək istəyirsinizsə, edə bilməzsiniz. İpucu #2 Təhlükə səviyyəsi: Partlayıcı Həmişə proqramlaşdırma gərginliyi ilə sistem gərginliyi arasında bir diod istifadə edin. Bir PIC -də MCLR (master clear) istifadə edirsinizsə, 10Kish rezistor vasitəsilə MCLR pinində bir qədər gərginlik təmin etməlisiniz. Bu da proqramlaşdırma rejiminə girmək üçün ~ 13 volt tətbiq edəcəyiniz pindir. Rezistorla MCLR/Vpp pin arasına 1n4148 (ekvivalent) bir diod qoydum (aşağıda sxemdə göstərildiyi kimi). Bu, proqramlaşdırma gərginliyini Vpp pinində saxlayır və lövhənizdəki digər komponentlərin məhv edilməsinin qarşısını alır. Tip #3 Təhlükə səviyyəsi: (yenidən) yorğun Aşağı gərginlik proqramlaşdırması sizi geri çəkir, dostum. LVP ilə heç vaxt uğur qazanmamışam. Mən öz işimlə (ardıcıl olaraq) heç vaxt görməmişəm. Bir güllə dişləyin və bir JDM2 proqramçısı qurmaq üçün 2,50 dollar xərcləyin.
Addım 4: ICSP Proqramçıları
ICSP fərqli bir proqramlaşdırma protokolu tələb etmir. Soket əsaslı bir proqramçı artıq lazım olan siqnalları istehsal edir, ancaq tellər vasitəsilə deyil, yuvaya göndərir. Əksər yuva proqramçıları, rozetkadan tətbiq dövrəsinə qədər tel bağlayaraq ICSP olaraq istifadə edilə bilər. Məsələn, orijinal JDM2 proqramçısı (burada: https://www.jdm.homepage.dk/newpic.htm) Lazım olan 5 siqnalı başlığa gətirərək ICSP proqramlaşdırmasını həyata keçirin. Bunu proqramçıda burada görmək olar: https://www.belza.cz/digital/jdm.htm. İşlərin lazımlı olması üçün Eagle Cad -də bu dizaynı yenidən hazırladım və bu təlimata əlavə etdim. Transistor oriyentasiyasına baxın, ayaq izlərindən biri səhv ola bilər (bunu bir ildən çox əvvəl etmişəm, artıq xatırlamıram). Eynilə, yenilənmiş JDM2 proqramçım (burada: https://www.instructables.com/id/EN28KZDDYVEP286GRI/), DIP yuvalarına tellər yapışdıraraq və hədəf PIC -ə bağlayaraq ICSP üçün istifadə edilə bilər. ***** JDM2 -lər funky gərginliklərindən istifadə edirlər … onu tətbiq dövrəsinə qoşulmuş xarici güc (və ya hətta torpaq) olmadan dövrə bağlayın. Güc tətbiq etməzdən əvvəl ICSP bağlantılarını çıxarın. Bunu etməmək dağıdıcı deyil, amma uğursuz proqramlaşdırma ilə nəticələnəcək ******* Başqa bir seçim (yarı) uyğun bir ICD proqramçısıdır. ICD, kodda fasilə nöqtələri quraraq və ya yaddaş və port dəyərlərini oxuyaraq PIC -də proqram təminatının icrasını idarə etməyə imkan verir. ICD, kodun icrasını canlandıra bilər, tətbiq dövrəsini gücləndirə və PIC -ni proqramlaşdıra bilər. Bütün bunları müzakirə etdiyimiz eyni 5 pinli ICSP bağlantısı vasitəsi ilə edir. Özünüz edə biləcəyiniz bir neçə ICSP klonunu burada görmək olar: https://www.icd2clone.com/wiki/Main_Page. Bir neçə ay əvvəl PiCS (rev B) qurdum və bəyəndim.
Tövsiyə:
Kondisionerin Uzaqdan idarəetmə IR Protokolunu Anlamaq: 9 Addım (Şəkillərlə birlikdə)
Kondisionerin Uzaqdan idarəetmə IR Protokolunu Anlamaq: Artıq bir müddətdir ki, IR protokollarını öyrənirəm. IR siqnallarını necə göndərmək və qəbul etmək olar. Bu nöqtədə qalan tək şey, AC uzaqdan idarəetmə cihazlarının İR protokoludur
Sinif quşu nəzarətçiləri olan ibtidai sinif şagirdləri üçün robototexnika ilə tanışlıq: 18 addım
Hummingbird nəzarətçiləri olan ibtidai sinif şagirdləri üçün robototexnika ilə tanışlıq: Bu gün bazarda olan robototexnika vasitələrinin çoxu istifadəçidən xüsusi proqram təminatını sabit diskinə yükləməsini tələb edir. Hummingbird Robotik Nəzarətçisinin gözəlliyi, chromebook kimi veb əsaslı bir kompüterdən istifadə etməkdir. Həm də olub
Kartof Batareyası: Kimya və Elektrik Enerjisini Anlamaq: 13 Addım (Şəkillərlə)
Kartof Batareyası: Kimya və Elektrik Enerjisini Anlamaq: Bir ampulü yalnız bir kartofla gücləndirə biləcəyinizi bilirdinizmi? İki metal arasındakı kimyəvi enerji elektrik enerjisinə çevrilir və kartofun köməyi ilə bir dövrə yaradır! Bu ola biləcək kiçik bir elektrik yükü yaradır
Kosmik Battleship Yamato 2199 Trinket Mikro nəzarətçiləri ilə: 8 Addım (Şəkillərlə)
Space Battleship Yamato 2199 Trinket Microcontrollers ilə: Bandai modelinin cazibədar dizaynına əlavə olaraq Space Battleship Yamatonun animasiya və filminin yenidən qurulması səbəbindən. Bu kosmik döyüş modelini yenidən qurmaq məni maraqlandırır. Bandai ölçüsündən bəhs etmir, ehtimala görə ~ 1: 2500
Arduino nəzarətçiləri: 10 addım (şəkillərlə birlikdə)
Arduino Controllers: Arduino və p5.js kitabxanasından istifadə edən bir Arduino oyun nəzarət sistemi. Bunun ideyası asanlıqla təkrarlanan və genişləndirilə bilən bir Arduino layihəsi yaratmaqdır. Nəzarətçi əlaqələri bir çox müxtəlif sensorlar və girişlərdən istifadə etmək üçün hazırlanmışdır