Talaan ng mga Nilalaman:

Pag-unawa sa ICSP para sa PIC Microcontrollers: 4 na Hakbang (na may Mga Larawan)
Pag-unawa sa ICSP para sa PIC Microcontrollers: 4 na Hakbang (na may Mga Larawan)

Video: Pag-unawa sa ICSP para sa PIC Microcontrollers: 4 na Hakbang (na may Mga Larawan)

Video: Pag-unawa sa ICSP para sa PIC Microcontrollers: 4 na Hakbang (na may Mga Larawan)
Video: How to Blink an LED - Part 6 Microcontroller Basics (PIC10F200) 2024, Hulyo
Anonim
Pag-unawa sa ICSP para sa PIC Microcontrollers
Pag-unawa sa ICSP para sa PIC Microcontrollers

Ang Programming microcontrollers ay hindi mahirap. Ang pagbuo ng isang programmer ay gumagawa ng isang mahusay na unang proyekto sa electronics. Ang layunin ng itinuturo na ito ay upang ipaliwanag ang simpleng pamamaraan na 'sa circuit serial programming' na ginamit sa Microchip PICs.

Hakbang 1: Bakit ICSP?

Bakit ICSP?
Bakit ICSP?

Madali ang pagprograma ng isang malaking DIP (through hole) chip. I-pop ito sa isang naka-socket na programmer, sunugin, at bumalik sa circuit ng application. Subukan at ulitin.

Mas nahihirapan ang mga bagay sa mas maliit na (ibabaw na mount) chips. Walang mga karaniwang socket para sa QFN, SSOP, QFP, o kahit na ang malalaking SOIC.300 na mga pakete. Mayroong talagang mahal ($ 100s) na mga clip na maaaring mag-attach sa, at programa, ang mga chips na ito. Kailangan ng ibang clip para sa bawat uri ng maliit na tilad at bilang ng pin na ginagamit mo. May alternatibo. Tinawag itong ICSP. Ang ibig sabihin ng ICSP ay 'sa circuit serial programmer (ing?)'. Ito ay isang paraan ng pagprograma ng isang PIC habang naka-attach pa rin ito sa application circuit. Tama iyon, wala nang pagpapalit ng chip. Bakit ICSP? 1. Walang mga socket ng programa para sa maliit na mga chips ng package. Mahal ang mga clip. 2. Ito ay isang sakit upang ilipat ang mga chips sa & labas ng programmer sa panahon ng pag-unlad. Imposible para sa mga bahagi ng mount mount.

Hakbang 2: Ano ang ICSP?

Ano ang ICSP?
Ano ang ICSP?
Ano ang ICSP?
Ano ang ICSP?
Ano ang ICSP?
Ano ang ICSP?
Ano ang ICSP?
Ano ang ICSP?

Limang mga koneksyon ang kinakailangan upang mai-program ang isang PIC habang naka-attach sa isang application circuit. Nagdagdag ako ng isang 5 pin na header sa aking mga circuit board upang gawing mas mabilis at madali ang koneksyon na ito. Ang mga pangunahing kaalaman sa pagprogram ng PIC. Kinakailangan ang limang koneksyon upang magprogram ng isang PIC. Lakas, lupa, isang boltahe ng programa, orasan, at data. + (Vdd) / - (Vss) Ito ang mga koneksyon sa lakas at lupa (Vdd, Vss). Medyo pamantayan. Kung gumagamit ka ng isang programmer na may mga 'tunay' na antas ng boltahe (HINDI isang JDM2!), Ang iyong aplikasyon ay maaaring tumakbo mula sa sarili nitong supply ng kuryente kapag na-program, tinatanggal ang mga koneksyon na ito. Vpp Ito ang boltahe ng programa. Ang mga PIC ay pumapasok sa mode ng pagprograma kapag ang ~ 13 volts ay inilalagay sa MCLR / Vpp pin (karaniwang pin 1 sa mga modernong PIC, higit pa sa ibaba). firmware. Kadalasan ito ay kapareho ng mga pin tulad ng PORTB6 & PORTB7. Pagsasanay: Kilalanin ang mga puntos ng koneksyon ng ICSP sa mga PIC sa mga larawan sa ibaba. Kung umaangkop ang PIC, isuot ito. Nakakatanggap ako ng maraming mga katanungan tungkol sa aking disenyo ng JDM2 sa mga itinuturo. Ang pinaka-madalas ay "Magpaprogram ba ito ng PIC X? '"' - narito kung paano mo masasabi: 1) Tingnan ang sheet ng data. Hanapin ang 'Pin Diagram' na mukhang isang larawan sa ibaba.2) Kilalanin ang lokasyon ng mga pin na dapat na konektado para sa programa (Vpp, Vdd, Vss, Data, & Clock).3) Tingnan ang koneksyon ng socket sa programmer Maaari mo bang itugma ang kinakailangang mga pin sa isang socket sa programmer?

Hakbang 3: Paano ICSP?

Paano ICSP?
Paano ICSP?
Paano ICSP?
Paano ICSP?
Paano ICSP?
Paano ICSP?
Paano ICSP?
Paano ICSP?

Nakasalalay sa iyong disenyo, maaari mo na ngayong gawin ang lahat ng kinakailangang mga koneksyon at programa ang iyong PIC. Mayroong ilang mga catch na dapat mong malaman tungkol sa. Ang disenyo para sa ICSP ay mahalaga. Nagbibigay ang Microchip ng isang magandang tala ng application ng PDF tungkol sa pagdidisenyo para sa ICSP. https://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1824&appnote=en011744 Narito ang ilang mga tip at halimbawa ng mga disenyo ng ICSP mula sa aking dating mga itinuturo. Tip # 1, Antas ng Banta: MahalagaHuwag makakonekta ng anupaman sa CLOCK at mga pin ng DATA (karaniwang RB6 & RB7, PGC & PGD). Wag mo nalang gawin Mayroong mga sitwasyon kung saan ang mga napaka-matalino na uri ng engineering ay nakalayo dito, ngunit huwag gawin ito. Ang mga sangkap na nakakabit sa mga pin ay magtutuya ng orasan at mga signal ng data, na magreresulta sa hindi mahuhulaan na programa. Bilang karagdagan, kung nais mong gumamit ng isang in-circuit serial debugger, hindi mo magawa. Huwag lang gawin ito. Tip # 2 Antas ng banta: Paputok Laging gumamit ng isang diode sa pagitan ng boltahe ng programa at boltahe ng system. Kung gumagamit ng MCLR (master clear) sa isang PIC dapat kang magbigay ng ilang boltahe sa MCLR pin sa pamamagitan ng isang resistensya ng 10Kish. Ito rin ang pin kung saan ilalapat mo ang ~ 13 volts upang ipasok ang mode ng programa. Naglagay ako ng isang 1n4148 (katumbas) na diode sa pagitan ng risistor at MCLR / Vpp pin (tulad ng ipinakita sa eskematiko at pag-render sa ibaba). Pinapanatili nito ang boltahe ng programa sa Vpp pin, pinipigilan ang pagkasira ng iba pang mga bahagi sa iyong board. Tip # 3 Antas ng banta: (re) pagod Ang mababang pagprogram ng boltahe ay pinipigilan ka, tao. Hindi ako naging matagumpay sa LVP. Hindi ko pa nakikita ang paggana nito (tuloy-tuloy) sa aking sariling mga mata. Bite lang ang bala at gumastos ng $ 2.50 upang makabuo ng isang programmer ng JDM2.

Hakbang 4: Mga Programmer ng ICSP

Mga Programmer ng ICSP
Mga Programmer ng ICSP
Mga Programmer ng ICSP
Mga Programmer ng ICSP

Ang ICSP ay hindi nangangailangan ng ibang protocol ng programa. Gumagawa na ang isang programmer na nakabatay sa socket ng kinakailangang pagbibigay ng senyas, ngunit ipinapadala ito sa socket kaysa sa pamamagitan ng mga wire. Karamihan sa mga socket programmer ay maaaring magamit bilang isang ICSP sa pamamagitan ng rigging wires mula sa socket patungo sa application circuit. Halimbawa, ang orihinal na programmer ng JDM2 (dito: https://www.jdm.homepage.dk/newpic.htm) ay maaaring magamit upang gawin ang programa ng ICSP sa pamamagitan ng pagdadala ng 5 kinakailangang signal sa isang header. Makikita ito sa programmer dito: https://www.belza.cz/digital/jdm.htm. Upang mapanatili ang madaling gamiting bagay, muling binabago ko ang disenyo na ito sa Eagle Cad at ikinabit ito sa itinuturo na ito. Panoorin ang oryentasyong transistor, ang isa sa mga bakas ng paa ay maaaring mali (Ginawa ko ito higit sa isang taon na ang nakakaraan, hindi ko na naaalala). Katulad nito, ang aking na-update na programmer ng JDM2 (dito: https://www.instructables.com/id/EN28KZDDYVEP286GRI/) ay maaaring gamitin para sa ICSP sa pamamagitan ng pagdikit ng mga wires sa mga socket ng DIP at pagkonekta sa mga ito sa target na PIC. ***** Ang mga JDM2 ay gumagamit ng mga funky voltage … ikonekta ito sa circuit NG WALANG panlabas na lakas (o kahit ground) na konektado sa circuit ng application. Alisin ang mga koneksyon sa ICSP bago mag-apply ng lakas. Ang kabiguang gawin ito ay hindi nakakasira, ngunit magreresulta sa nabigong pagprograma ***** Ang isa pang pagpipilian ay isang (semi-) wastong programista ng ICD. Pinapayagan ka ng ICD na kontrolin ang pagpapatupad ng firmware sa iyong PIC sa pamamagitan ng pagtatakda ng mga break point sa code o pagbabasa ng mga halaga ng memorya at port. Maaari ring buhayin ng isang ICD ang pagpapatupad ng code, paganahin ang circuit ng aplikasyon, at programa ang PIC. Ginagawa ang lahat ng ito sa pamamagitan ng parehong 5 pin ICSP na koneksyon na tinalakay. Maraming mga clone ng ICSP na maaari mong gawin ang iyong sarili ay makikita rito: https://www.icd2clone.com/wiki/Main_Page. Itinayo ko ang PiCS (rev B) ilang buwan na ang nakakalipas at mahal ko ito.

Inirerekumendang: