Udviklingen af elektronik foregår hurtigt, og mere og mere ofte er mikrokontrolleren hovedelementet i denne eller den anden enhed. Han udfører hovedparten af arbejdet og frigør designeren fra behovet for at skabe sofistikerede kredsløb, hvorved størrelsen på kredsløbskortet reduceres til et minimum. Som alle ved, styres mikrokontrolleren af et program, der er optaget i dens interne hukommelse. Og hvis en erfaren elektronisk programmør ikke har problemer med at bruge mikrokontrollere i deres enheder, kan en begyndende radioamatør, der prøver at skrive et program til en controller (især PIC), vise sig at være en stor skuffelse, og nogle gange et lille pyroteknisk show i form af en rygerchip.
Mærkeligt nok, men med al den store internet, har den meget lidt information om firmwaren Pic-controllere, og det materiale, der kan findes, er af meget tvivlsom kvalitet. Selvfølgelig kan du købe en fabriksprogrammør til en utilstrækkelig pris og sy så meget du vil, men hvad nu hvis personen ikke er engageret i masseproduktion. Til disse formål kan du sammensætte en enkel og ikke dyre at implementere hjemmelavet, Nævnt JDM-programmør i henhold til nedenstående diagram (figur nr. 1):
Mærkeligt nok, men med al den store internet, har den meget lidt information om firmwaren Pic-controllere, og det materiale, der kan findes, er af meget tvivlsom kvalitet. Selvfølgelig kan du købe en fabriksprogrammør til en utilstrækkelig pris og sy så meget du vil, men hvad nu hvis personen ikke er engageret i masseproduktion. Til disse formål kan du sammensætte en enkel og ikke dyre at implementere hjemmelavet, Nævnt JDM-programmør i henhold til nedenstående diagram (figur nr. 1):
Figur №1 - diagram over programmereren
Straks medbringer jeg en liste over elementer for dem, der er for dovne til at kigge ind i diagrammet:
- R1 - 10 kOhm
- R2 - 10 kΩ (sammenflettet). Ved at justere modstanden for denne modstand, skal du opnå ca. 13V ved pin nr. 4 (VPP) under programmeringen. I mit tilfælde er modstanden 1,2 kOhm
- R3 - 200 ohm
- R4, R5 - 1,5 kOhm
- VD1, VD2, VD3, VD4, VD6 - 1N4148
- VD5 - 1N4733A (stabiliseringsspænding 5.1V)
- VD7 - 1N4743A (stabiliseringsspænding 13V)
- C1 - 100 nF (0,1 μF)
- C2 - 470 μF x 16 V (elektrolytisk)
- SUB-D9F - COM-portstik (MOM eller SOCKET)
- DIP8-stik - afhænger af den controller, du bruger
Kredsløbet bruger et eksempel på tilslutning af så almindelige controllere som PIC12F675 og PIC12F629, men dette betyder overhovedet ikke firmwaret i andre serier PIC vil være umulig. For at skrive et program til en controller af en anden type er det nok at overføre programmeringsledningerne i overensstemmelse med figur 2, der er givet nedenfor.
Figur 2 - PIC-controller-sagsindstillinger med de nødvendige konklusioner
Som du måske gætter, bruges sagen i skemaet til min programmør DIP8. Med et stort ønske kan du oprette en universaladapter til hver type chip og derved få en universel programmerer. Men siden med PIC-controllere Jeg arbejder sjældent, det er nok for mig.
Selvom kredsløbet i sig selv er ganske enkelt og ikke medfører monteringsproblemer, men det kræver også respekt. Derfor ville det være rart at lave et printkort til det. Efter nogle manipulationer med programmet SprintLayout, tekstolit, bor og jern, sådan et tomt blev født her (foto nr. 3).
Selvom kredsløbet i sig selv er ganske enkelt og ikke medfører monteringsproblemer, men det kræver også respekt. Derfor ville det være rart at lave et printkort til det. Efter nogle manipulationer med programmet SprintLayout, tekstolit, bor og jern, sådan et tomt blev født her (foto nr. 3).
Foto nr. 3 - programmets kredsløb
Download PCB-kilde til programmet SprintLayout Du kan følge dette link:
Hvis det ønskes, kan du ændre det til din type PIC-controller. For dem, der besluttede at forlade brættet uændret, sprede jeg udsigten fra siden af delene for at lette installationen (figur 4).
Hvis det ønskes, kan du ændre det til din type PIC-controller. For dem, der besluttede at forlade brættet uændret, sprede jeg udsigten fra siden af delene for at lette installationen (figur 4).
Figur 4 - Kort på monteringssiden
Lidt mere troldmand med loddejern, og vi har en færdiglavet enhed, der kan blinke Pic-controller igennem COM-port din computer. Stadig varm og ikke vasket fra fluxen, resultatet af min indsats er vist på foto nr. 5.
Fra nu af er det første skridt mod firmware Pic-controllerkom til en ende. Den anden fase vil omfatte tilslutning af programmereren til computeren og arbejde med programmet IC Prog.
Desværre er det ikke alle moderne computere og laptops, der er i stand til at arbejde med denne programmør på grund af det banale fravær på dem COM-porte, og dem, der er installeret på bærbare computere, giver ikke den nødvendige programmering 12B. Så jeg besluttede at vende mig til min første PCder for længe siden støvet og ventede på sin fineste time (og stadig ventede).
Så tænd computeren og installer først programmet IC Prog. Du kan downloade det fra forfatterens websted eller på dette link:
Vi forbinder programmereren til COM-port og kør det nyligt installerede program. For korrekt betjening er det nødvendigt at udføre en række manipulationer. Oprindeligt er det nødvendigt at vælge den type controller, som vi skal sy. Jeg har det PIC12F675. I skærmbillede nr. 6 fremhæves feltet til valg af controller med rødt.
Desværre er det ikke alle moderne computere og laptops, der er i stand til at arbejde med denne programmør på grund af det banale fravær på dem COM-porte, og dem, der er installeret på bærbare computere, giver ikke den nødvendige programmering 12B. Så jeg besluttede at vende mig til min første PCder for længe siden støvet og ventede på sin fineste time (og stadig ventede).
Så tænd computeren og installer først programmet IC Prog. Du kan downloade det fra forfatterens websted eller på dette link:
Vi forbinder programmereren til COM-port og kør det nyligt installerede program. For korrekt betjening er det nødvendigt at udføre en række manipulationer. Oprindeligt er det nødvendigt at vælge den type controller, som vi skal sy. Jeg har det PIC12F675. I skærmbillede nr. 6 fremhæves feltet til valg af controller med rødt.
Skærmbillede 6 - valg af mikrokontrollertype
Gå derefter til menuen "Indstillinger "->" Indstillinger", vælg fanen i det vindue, der vises I2C og marker afkrydsningsfelterne som vist på skærmbillede # 7.
Skærmbillede 7 - indstilling af kontroloptagelsesmetoden
I det samme vindue skal du gå til fanen "programmering"og vælg"Programmeringskontrol". Kontrol efter programmering kan forårsage en fejl, fordi firmwaren i nogle tilfælde installerer låsesikringer CP. For ikke at narre dig selv, er det bedre at deaktivere denne check. Kort sagt, følg skærmbillede nummer 8.
Skærmbillede nr. 8 - verifikationsopsætning
Vi fortsætter med at arbejde med dette vindue og går til "fælles". Her er det nødvendigt at indstille prioriteringen af programmet og være sikker på at bruge det NT / 2000 / XP driver (skærmbillede nummer 9). I nogle tilfælde foreslår programmet muligvis installation af denne driver og kræver muligvis en genstart IC Prog.
Skærmbillede 9 - Generelle indstillinger
Så med dette vindue er arbejdet forbi. Lad os nu gå videre til indstillingerne for selve programmøren. Vælg i menuen "Indstillinger "->" Programmerindstillinger"eller bare trykke på tasten F3. Følgende vindue vises, vist på skærmbillede # 10.
Skærmbillede nr. 10 - vinduet med programmeringsindstillinger
Vælg først programtypen - Jdm-programmør. Dernæst indstiller vi radioknappen til brug af driveren vinduer. Det næste trin er at vælge COM-portsom din programmør er forbundet til. Hvis der er et, er der overhovedet ingen spørgsmål, og hvis der er mere end et, skal du kigge i enhedsadministratoren, der i øjeblikket bruges. Indgangs- / udgangsforsinkelsesglideren er designet til at kontrollere hastigheden på skrivning og læsning. Dette kan være nødvendigt på hurtige computere, og hvis der er problemer med firmwaren - skal denne parameter øges. I mit tilfælde forblev det som standard lig med 10 og alt fungerede fint.
På denne programindstilling IC Prog er forbi, og du kan gå videre til selve firmwareprocessen, men først læser vi dataene fra mikrokontrolleren og ser, hvad der er skrevet ind i den. For at gøre dette skal du på værktøjslinjen klikke på ikonet for mikrokredsløbet med en grøn pil som vist på skærmbillede nr. 11.
På denne programindstilling IC Prog er forbi, og du kan gå videre til selve firmwareprocessen, men først læser vi dataene fra mikrokontrolleren og ser, hvad der er skrevet ind i den. For at gøre dette skal du på værktøjslinjen klikke på ikonet for mikrokredsløbet med en grøn pil som vist på skærmbillede nr. 11.
Skærmbillede 11 - Processen med at læse information fra mikrokontrolleren
Hvis mikrokontrolleren er ny og ikke er blevet blinket før, vil alle dens hukommelsesceller blive fyldt med værdier 3FFFundtagen den sidste. Det vil indeholde værdien af kalibreringskonstanten. Dette er en meget vigtig og unik værdi for hver controller. Urets nøjagtighed afhænger af det, som vælges af fabrikanten ved at vælge og installere denne konstant. Skærmbillede nr. 12 viser hukommelsescellen, hvor konstanten gemmes, når man læser controlleren.
Skærmbillede 12 - værdien af kalibreringskonstanten
Jeg gentager, at værdien er unik for hver mikrokredsløb og ikke behøver at falde sammen med det, der er vist på figuren. Mange af uerfarenhed overskriver dette konstant og efterfølgende Pic-controller begynder at arbejde forkert, hvis projektet bruger ur fra en intern generator. Jeg anbefaler dig at nedskrive denne konstante og sætte inskriptionen med dens værdi direkte på controlleren. På denne måde vil du undgå mange problemer i fremtiden. Så værdien nedskrives - vi går videre. Åbn firmwarefilen, som normalt har en udvidelse .hex. Nu i stedet for at skrive 3FFF, programmeringsbufferen indeholder koden til vores program (skærmbillede nr. 13).
Skærmbillede 13 - firmware downloadet til programmeringsbufferen
Jeg skrev ovenfor, at mange overskriver kalibreringskonstanten ved uagtsomhed. Hvornår sker dette? Dette sker, når firmwarefilen åbnes. Værdien af konstanten ændres automatisk til 3FFF og hvis du starter programmeringsprocessen, er der ingen tilbagevenden. I skærmbillede nr. 14, den hukommelsescelle, hvor konstanten tidligere var 3450 (før åbning hex-fil).
Skærmbillede nr. 14 - automatisk ændring af kalibreringskonstanten
Nu skal du nøje følge trinnene nedenfor. Vi klikker på ikonet for mikrokredsløbet med lynet på værktøjslinjen og informerer derved programmet om, at vi vil starte firmwareprocessen. Programmet spørger, om vi er sikre på, at vi vil blinke denne enhed. Vi er enige og klik "JA". Derefter får vi advarslen vist på skærmbillede # 15.
Screenshot No. 15 - advarsel om uoverensstemmelser i urets konstante værdier
IC Prog fortæller os, at en værdi af kalibreringskonstanten (i mit tilfælde 3450), og nu en anden (3FFF) automatisk erstattet fra hex-fil. Det foreslås også at forlade standardværdien 3FFF. Det er vigtigt at klikke på "NO"For at IC Prog under programmeringen returnerede vi værdien 3450 eller hvad der vil være med dig. Klik generelt på "NO"og se følgende vindue (skærmbillede nr. 16).
Skærmbillede 16 - programmeringsproces
I denne periode anbefaler jeg dig ikke at trykke på noget eller indlæse computeren med andre opgaver. Da jeg tog et skærmbillede til denne artikel, da jeg klikker på knappen Print skærm der opstod en skrivefejl, og jeg måtte gøre det igen. Efter nogen tid IC Prog giver dig en besked om den vellykkede verifikation af den nyligt skrevne kode i din Pic-controller, så alle, der kunne lide denne artikel, vil jeg se denne efter lignende anstrengelser (skærmbillede nr. 17):
Skærmbillede nr. 17 - firmwaren var vellykket, du kan slappe af
Hvis du har spørgsmål, skal du læse artiklen omhyggeligt igen, og alt vil helt sikkert ordne sig - kontrolleres personligt. Held og lykke til alle og kreativ succes !!!