Dezvoltarea electronică se desfășoară rapid și tot mai des microcontrolerul este elementul principal al acestui dispozitiv. El execută lucrarea principală și îl eliberează pe proiectant de nevoia de a crea soluții sofisticate de circuite, reducând astfel dimensiunea plăcii de circuite imprimate la minimum. După cum știe toată lumea, microcontrolerul este controlat de un program înregistrat în memoria sa internă. Și dacă un programator electronic cu experiență nu are probleme să folosească microcontrolerele pe dispozitivele lor, atunci pentru un radioamator începător care încearcă să scrie un program către un controler (în special PIC) se poate dovedi o mare dezamăgire și uneori un mic spectacol pirotehnic sub forma unui cip de fumat.
Ciudat, dar cu toată măreția Internetului, are foarte puține informații despre firmware Controlere pic, iar materialul care poate fi găsit este de o calitate foarte dubioasă. Desigur, puteți cumpăra un programator din fabrică la un preț inadecvat și să coaseți cât doriți, dar ce se întâmplă dacă persoana nu este angajată în producția de masă. În aceste scopuri, puteți pune la dispoziție un sistem simplu și nu costisitor de implementat home-made, Se face referire la Programator JDM conform diagramei de mai jos (figura nr. 1):
Ciudat, dar cu toată măreția Internetului, are foarte puține informații despre firmware Controlere pic, iar materialul care poate fi găsit este de o calitate foarte dubioasă. Desigur, puteți cumpăra un programator din fabrică la un preț inadecvat și să coaseți cât doriți, dar ce se întâmplă dacă persoana nu este angajată în producția de masă. În aceste scopuri, puteți pune la dispoziție un sistem simplu și nu costisitor de implementat home-made, Se face referire la Programator JDM conform diagramei de mai jos (figura nr. 1):
Figura №1 - diagrama programatorului
Imediat aduc o listă de elemente pentru cei care sunt prea lene să privească în diagrama:
- R1 - 10 kOhm
- R2 - 10 kΩ (întrețesute). Prin reglarea rezistenței acestui rezistor, trebuie să realizați aproximativ 13V la pinul nr. 4 (VPP) în timpul programării. În cazul meu, rezistența este de 1,2 kOhm
- R3 - 200 ohmi
- R4, R5 - 1,5 kOhm
- VD1, VD2, VD3, VD4, VD6 - 1N4148
- VD5 - 1N4733A (tensiune de stabilizare 5.1V)
- VD7 - 1N4743A (tensiune de stabilizare 13V)
- C1 - 100 nF (0,1 μF)
- C2 - 470 μF x 16 V (electrolitic)
- SUB-D9F - Conector port COM (MOM sau SOCKET)
- Priza DIP8 - depinde de controlerul pe care îl utilizați
Circuitul folosește un exemplu de conectare a controlerelor comune PIC12F675 și PIC12F629, dar acest lucru nu înseamnă deloc faptul că firmware-ul altor serii PIC va fi imposibil. Pentru a scrie un program către un controler de alt tip, este suficient să transferați firele programatorului în conformitate cu figura 2, care este prezentată mai jos.
Figura nr. 2 - Opțiunile carcasei controlerului PIC cu concluziile necesare
După cum s-ar putea ghici, cazul este folosit în schema programatorului meu DIP8. Cu o mare dorință, puteți face un adaptor universal pentru fiecare tip de cip, obținând astfel un programator universal. Dar de când cu Controlere PIC Lucrez rar, asta este suficient pentru mine.
Deși circuitul în sine este destul de simplu și nu provoacă dificultăți în asamblare, dar necesită și respect. Prin urmare, ar fi bine să faceți o placă de circuit imprimat pentru aceasta. După câteva manipulări cu programul SprintLayout, textolit, burghiu și fier, s-a născut aici un astfel de gol (foto nr. 3).
Deși circuitul în sine este destul de simplu și nu provoacă dificultăți în asamblare, dar necesită și respect. Prin urmare, ar fi bine să faceți o placă de circuit imprimat pentru aceasta. După câteva manipulări cu programul SprintLayout, textolit, burghiu și fier, s-a născut aici un astfel de gol (foto nr. 3).
Foto nr. 3 - placă de circuit programator
Descărcați sursa PCB pentru program SprintLayout Puteți urma acest link:
Dacă doriți, puteți să-l schimbați la tipul dvs. de controler PIC. Pentru cei care au decis să lase placa neschimbată, am extins vederea din partea părților pentru a facilita instalarea (figura 4).
Dacă doriți, puteți să-l schimbați la tipul dvs. de controler PIC. Pentru cei care au decis să lase placa neschimbată, am extins vederea din partea părților pentru a facilita instalarea (figura 4).
Figura 4 - Placă pe partea de montaj
Mai puțin vrăjitorie cu fier de lipit și avem un dispozitiv gata pregătit care poate clipi Controler pic prin Port COM computerul tău. Încă este cald și nu este spălat din flux, rezultatul eforturilor mele este prezentat în fotografia nr. 5.
De acum înainte, primul pas către firmware Controler pica ajuns la final. A doua etapă va include conectarea programatorului la computer și lucrul cu programul IC Prog.
Din păcate, nu toate computerele și laptopurile moderne pot lucra cu acest programator din cauza absenței banale a acestora Porturi COM, iar cele instalate pe laptopuri nu oferă programarea necesară 12B. Așa că am decis să apelez la primul meu PCcare demult a făcut praf și a așteptat ceasul său cel mai fin (și încă a așteptat).
Așa că porniți computerul și instalați mai întâi programul IC Prog. Îl puteți descărca de pe site-ul autorului sau la acest link:
Conectăm programatorul la Port COM și rulați aplicația recent instalată. Pentru o funcționare corectă, este necesar să se efectueze o serie de manipulări. Inițial, este necesar să alegem tipul de control pe care urmează să-l coase. Am PIC12F675. În ecranul nr. 6, câmpul pentru selectarea controlerului este evidențiat în roșu.
Din păcate, nu toate computerele și laptopurile moderne pot lucra cu acest programator din cauza absenței banale a acestora Porturi COM, iar cele instalate pe laptopuri nu oferă programarea necesară 12B. Așa că am decis să apelez la primul meu PCcare demult a făcut praf și a așteptat ceasul său cel mai fin (și încă a așteptat).
Așa că porniți computerul și instalați mai întâi programul IC Prog. Îl puteți descărca de pe site-ul autorului sau la acest link:
Conectăm programatorul la Port COM și rulați aplicația recent instalată. Pentru o funcționare corectă, este necesar să se efectueze o serie de manipulări. Inițial, este necesar să alegem tipul de control pe care urmează să-l coase. Am PIC12F675. În ecranul nr. 6, câmpul pentru selectarea controlerului este evidențiat în roșu.
Screenshot 6 - selectarea tipului de microcontroler
În continuare, accesați meniul "Setări "->" Opțiuni", în fereastra care apare, selectați fila I2C și bifați casetele așa cum se arată în imaginea de ecran nr. 7.
Screenshot 7 - setarea metodei de înregistrare a controlerului
În aceeași fereastră, accesați fila "programare„și selectați”Verificare programareVerificarea după programare poate provoca o eroare, deoarece în unele cazuri, firmware-ul instalează blocări de blocare CP. Pentru a nu vă păcăli, este mai bine să dezactivați această verificare. Pe scurt, urmați numărul 8 de captură de ecran.
Captura de ecran nr. 8 - configurare verificare
Continuăm să lucrăm cu această fereastră și mergem la „comunAici este necesar să setați prioritatea programului și să fiți siguri că folosiți NT / 2000 / XP driver (numărul de captură 9). În unele cazuri, programul poate sugera instalarea acestui driver și poate necesita o repornire IC Prog.
Screenshot 9 - Setări generale
Prin urmare, cu această fereastră lucrarea s-a încheiat. Acum să trecem la setările programatorului în sine. Alegeți în meniu "Setări "->" Setări programator"sau doar apăsați tasta F3. Apare următoarea fereastră, afișată în ecranul de ecran nr. 10.
Screenshot No. 10 - Fereastra setărilor programatorului
În primul rând, selectați tipul de programator - Programator Jdm. În continuare, setăm butonul radio pentru utilizarea driverului ferestre. Următorul pas este să alegeți Port COMla care este conectat programatorul dvs. Dacă există una, nu există întrebări deloc și, dacă există mai multe, căutați în managerul de dispozitive care este utilizat în prezent. Glisorul cu întârziere de intrare / ieșire este conceput pentru a controla viteza de scriere și citire. Acest lucru poate fi necesar pe computere rapide și dacă există probleme cu firmware-ul - acest parametru trebuie crescut. În cazul meu, aceasta a rămas implicit egală cu 10 și totul a funcționat bine.
La această setare a programului IC Prog sa terminat și puteți continua procesul de firmware în sine, dar mai întâi citim datele de la microcontroler și vedem ce este scris în acesta. Pentru a face acest lucru, faceți clic pe pictograma microcircuitului cu o săgeată verde, așa cum se arată în captura de ecran nr. 11.
La această setare a programului IC Prog sa terminat și puteți continua procesul de firmware în sine, dar mai întâi citim datele de la microcontroler și vedem ce este scris în acesta. Pentru a face acest lucru, faceți clic pe pictograma microcircuitului cu o săgeată verde, așa cum se arată în captura de ecran nr. 11.
Screenshot 11 - Procesul de citire a informațiilor de la microcontroler
Dacă microcontrolerul este nou și nu a mai fost aprins, atunci toate celulele sale de memorie vor fi umplute cu valori 3FFFcu excepția ultimului. Va conține valoarea constantei de calibrare. Aceasta este o valoare foarte importantă și unică pentru fiecare controler. Precizia ceasului depinde de aceasta, care este selectată de producător prin selectarea și instalarea acestei constante. Imaginea nr. 12 arată celula de memorie în care constanta va fi stocată la citirea controlerului.
Screenshot 12 - valoarea constantei de calibrare
Repet că valoarea este unică pentru fiecare microcircuit și nu trebuie să coincidă cu ceea ce se arată în figură. Mulți prin inexperiență rescriu această constantă și ulterior Controler pic începe să funcționeze incorect dacă proiectul folosește ceasul dintr-un generator intern. Vă sfătuiesc să scrieți această constantă și să lipiți inscripția cu valoarea ei direct pe controler. Astfel veți evita o mulțime de probleme în viitor. Deci, valoarea este notată - mergem mai departe. Deschideți fișierul de firmware, care are de obicei o extensie Hex. Acum în loc să scrii 3FFF, bufferul de programare conține codul programului nostru (captură de ecran nr. 13).
Screenshot 13 - firmware descărcat în memoria tampon de programare
Am scris mai sus că mulți rescriu constanța de calibrare prin neglijență. Când se întâmplă asta? Acest lucru se întâmplă atunci când fișierul de firmware este deschis. Valoarea constantei se modifică automat la 3FFF și dacă începeți procesul de programare, atunci nu există nicio întoarcere. În ecranul nr. 14, acea celulă de memorie în care constanta era anterior 3450 (înainte de deschidere fișier hex).
Ecranul nr. 14 - schimbarea automată a constantei de calibrare
Acum trebuie să urmați cu atenție pașii de mai jos. Facem clic pe pictograma microcircuitului cu fulgere pe bara de instrumente, informând astfel programul că dorim să inițiem procesul de firmware. Programul va întreba dacă suntem siguri că dorim să aprindem acest dispozitiv. Suntem de acord și facem clic pe „DA"După aceea, vom primi avertismentul afișat în imaginea de ecran nr. 15.
Ecranul nr. 15 - avertisment despre discrepanța valorilor constantei ceasului
IC Prog ne spune că o valoare a constantei de calibrare (în cazul meu 3450), iar acum un alt (3FFF) înlocuit automat din fișier hex. De asemenea, se propune să lăsați valoarea implicită 3FFF. Este important să faceți clic pe „NU„Pentru a IC Prog in timpul programarii ne-a returnat valoarea 3450 sau ce va fi cu tine. În general, faceți clic pe „NU"și observați următoarea fereastră (captura de ecran nr. 16).
Screenshot 16 - procesul de programare
În această perioadă, vă sfătuiesc să nu apăsați nimic și să nu încărcați computerul cu alte sarcini. Când am făcut o captură de ecran pentru acest articol, când dau clic pe buton Ecran de imprimare a apărut o eroare de scriere și a trebuit să o fac din nou. După ceva timp IC Prog vă va oferi un mesaj despre verificarea cu succes a codului nou scris din dvs. Controler pic, așa că toată lumea care a plăcut acest articol, vreau să văd acest lucru după eforturi similare (captura de ecran nr. 17):
Screenshot No. 17 - firmware-ul a avut succes, vă puteți relaxa
Dacă aveți întrebări, citiți cu atenție articolul din nou și cu siguranță totul va funcționa - verificați personal. Mult noroc tuturor și succes creativ !!!