Utviklingen av elektronikk skjer raskt, og stadig oftere er hovedelementet i en enhet en mikrokontroller. Han utfører hovedarbeidet og frigjør designeren fra behovet for å lage sofistikerte kretsløsninger, og reduserer dermed størrelsen på kretskortet til et minimum. Som alle vet, kontrolleres mikrokontrolleren av et program som er spilt inn i det interne minnet. Og hvis en erfaren elektronisk programmerer ikke har problemer med å bruke mikrokontrollere i enhetene sine, så for en nybegynner radioamatør som prøver å skrive et program til en kontroller (spesielt PIC) kan vise seg å være en stor skuffelse, og noen ganger et lite pyroteknisk show i form av en røykebrikke.
Merkelig nok, men med all den store internett, har den veldig lite informasjon om firmware Pic-kontrollere, og materialet som er funnet er av veldig tvilsom kvalitet. Selvfølgelig kan du kjøpe en fabrikkprogrammerer til en utilstrekkelig pris og sy så mye du vil, men hva om personen ikke driver med masseproduksjon. For disse formålene kan du sette sammen en enkel og ikke dyr å implementere hjemmelaget, Referert til JDM-programmerer i henhold til diagrammet nedenfor (figur nr. 1):
Merkelig nok, men med all den store internett, har den veldig lite informasjon om firmware Pic-kontrollere, og materialet som er funnet er av veldig tvilsom kvalitet. Selvfølgelig kan du kjøpe en fabrikkprogrammerer til en utilstrekkelig pris og sy så mye du vil, men hva om personen ikke driver med masseproduksjon. For disse formålene kan du sette sammen en enkel og ikke dyr å implementere hjemmelaget, Referert til JDM-programmerer i henhold til diagrammet nedenfor (figur nr. 1):
Figur №1 - diagram over programmereren
Umiddelbart tar jeg med en liste over elementer for de som er for late til å kikke seg inn i diagrammet:
- R1 - 10 kOhm
- R2 - 10 kOhm (avkortet). Ved å justere motstanden til denne motstanden, må du oppnå omtrent 13V ved pinne nr. 4 (VPP) under programmering. I mitt tilfelle er motstanden 1,2 kOhm
- R3 - 200 ohm
- R4, R5 - 1,5 kOhm
- VD1, VD2, VD3, VD4, VD6 - 1N4148
- VD5 - 1N4733A (stabiliseringsspenning 5.1V)
- VD7 - 1N4743A (stabiliseringsspenning 13V)
- C1 - 100 nF (0,1 μF)
- C2 - 470 μF x 16 V (elektrolytisk)
- SUB-D9F - COM-portkontakt (MOM eller SOCKET)
- DIP8-stikkontakt - avhenger av kontrolleren du bruker
Kretsen bruker et eksempel på å koble slike vanlige kontrollere som PIC12F675 og PIC12F629, men dette betyr overhode ikke firmware fra andre serier PIC vil være umulig. For å skrive et program til en kontroller av en annen type, er det nok å overføre programmerertrådene i samsvar med figur 2, som er gitt nedenfor.
Figur nr. 2 - PIC-kontroller saksalternativer med nødvendige konklusjoner
Som du kanskje gjetter, blir saken brukt i skjemaet til programmereren min DIP8. Med et stort ønske kan du lage en universal adapter for hver type chip, og dermed få en universell programmerer. Men siden med PIC-kontrollere Jeg jobber sjelden, det er nok for meg.
Selv om selve kretsløpet er ganske enkelt og ikke forårsaker monteringsproblemer, men det krever også respekt. Derfor ville det være fint å lage et trykt kretskort til det. Etter noen manipulasjoner med programmet SprintLayout, tekstolit, bor og jern, en slik blank ble født her (foto nr. 3).
Selv om selve kretsløpet er ganske enkelt og ikke forårsaker monteringsproblemer, men det krever også respekt. Derfor ville det være fint å lage et trykt kretskort til det. Etter noen manipulasjoner med programmet SprintLayout, tekstolit, bor og jern, en slik blank ble født her (foto nr. 3).
Foto nr. 3 - kretskort for programmerer
Last ned PCB-kilde for programmet SprintLayout Du kan følge denne lenken:
Hvis ønskelig, kan du endre den til din type PIC-kontroller. For de som bestemte seg for å forlate brettet uendret, spredte jeg utsikten fra siden av delene for å lette installasjonen (figur 4).
Hvis ønskelig, kan du endre den til din type PIC-kontroller. For de som bestemte seg for å forlate brettet uendret, spredte jeg utsikten fra siden av delene for å lette installasjonen (figur 4).
Figur 4 - Brett på monteringssiden
Litt mer trolldom med loddejern, og vi har et ferdiglagd apparat som kan blinke Pic-kontroller gjennom COM-port datamaskinen din. Fortsatt varmt og ikke vasket fra fluksen, er resultatet av min innsats vist på foto nr. 5.
Fra nå av er det første skrittet mot firmware Pic-kontrollerkom til en slutt. Det andre trinnet vil omfatte å koble programmereren til datamaskinen og jobbe med programmet IC Prog.
Dessverre er det ikke alle moderne datamaskiner og bærbare datamaskiner som er i stand til å samarbeide med denne programmereren på grunn av det banale fraværet på dem COM-porter, og de som er installert på bærbare datamaskiner gir ikke nødvendig programmering 12B. Så jeg bestemte meg for å gå til mitt første PCsom for lengst støvet og ventet på sin fineste time (og fortsatt ventet).
Så slå på datamaskinen og installer først programmet IC Prog. Du kan laste ned det fra forfatterens nettsted eller på denne lenken:
Vi kobler programmereren til COM-port og kjør det nylig installerte programmet. For korrekt bruk er det nødvendig å utføre en serie manipulasjoner. Til å begynne med er det nødvendig å velge typen kontroller som vi skal sy. Jeg har det PIC12F675. På skjermbilde nr. 6 er feltet for valg av kontroller markert med rødt.
Dessverre er det ikke alle moderne datamaskiner og bærbare datamaskiner som er i stand til å samarbeide med denne programmereren på grunn av det banale fraværet på dem COM-porter, og de som er installert på bærbare datamaskiner gir ikke nødvendig programmering 12B. Så jeg bestemte meg for å gå til mitt første PCsom for lengst støvet og ventet på sin fineste time (og fortsatt ventet).
Så slå på datamaskinen og installer først programmet IC Prog. Du kan laste ned det fra forfatterens nettsted eller på denne lenken:
Vi kobler programmereren til COM-port og kjør det nylig installerte programmet. For korrekt bruk er det nødvendig å utføre en serie manipulasjoner. Til å begynne med er det nødvendig å velge typen kontroller som vi skal sy. Jeg har det PIC12F675. På skjermbilde nr. 6 er feltet for valg av kontroller markert med rødt.
Skjermbilde 6 - valg av mikrokontrollertype
Gå deretter til menyen "Innstillinger "->" Alternativer", i vinduet som vises, velg kategorien I2C og merk av i boksene som vist på skjermbilde # 7.
Skjermbilde 7 - innstilling av kontrollerens innspillingsmetode
I det samme vinduet, gå til fanen "programmering"og velg"Programmeringssjekk". Kontroller etter programmering kan føre til en feil, fordi firmware i noen tilfeller installerer låsesperre CP. For ikke å lure deg selv, er det bedre å deaktivere denne sjekken. Kort sagt, følg skjermdump nummer 8.
Skjermbilde nr. 8 - verifiseringsoppsett
Vi fortsetter å jobbe med dette vinduet og går til "felles". Her er det nødvendig å sette prioritet til programmet og være sikker på å bruke det NT / 2000 / XP driver (skjermbilde nummer 9). I noen tilfeller kan programmet foreslå installasjon av denne driveren og kan kreve en omstart IC Prog.
Skjermbilde 9 - Generelle innstillinger
Så med dette vinduet er arbeidet over. La oss nå gå videre til innstillingene til selve programmereren. Velg i menyen "Innstillinger "->" Programmerinnstillinger"eller bare trykk på tasten F3. Følgende vindu vises, vist på skjermbilde # 10.
Skjermbilde nr. 10 - vinduet programmererinnstillinger
Først av alt, velg type programmerer - Jdm programmerer. Deretter setter vi alternativknappen for bruk av driveren Windows. Neste trinn er å velge COM-portsom programmereren din er koblet til. Hvis det er et, er det ingen spørsmål i det hele tatt, og hvis det er mer enn ett, kan du se i enhetsbehandleren som for tiden brukes. Inngangs- / utgangsforsinkelseskontrolleren er designet for å kontrollere hastigheten på skriving og lese. Dette kan være nødvendig på raske datamaskiner, og hvis det er problemer med fastvaren - må denne parameteren økes. I mitt tilfelle forble det som standard lik 10 og alt fungerte fint.
På denne programinnstillingen IC Prog er over, og du kan gå videre til selve firmware-prosessen, men først leser vi dataene fra mikrokontrolleren og ser hva som er skrevet inn i den. For å gjøre dette, på verktøylinjen, klikk på ikonet til mikrokretsen med en grønn pil, som vist på skjermbilde nr. 11.
På denne programinnstillingen IC Prog er over, og du kan gå videre til selve firmware-prosessen, men først leser vi dataene fra mikrokontrolleren og ser hva som er skrevet inn i den. For å gjøre dette, på verktøylinjen, klikk på ikonet til mikrokretsen med en grønn pil, som vist på skjermbilde nr. 11.
Skjermbilde 11 - Prosessen med å lese informasjon fra mikrokontrolleren
Hvis mikrokontrolleren er ny og ikke har blitt blinket før, vil alle minnecellene bli fylt med verdier 3FFFbortsett fra den aller siste. Den vil inneholde verdien av kalibreringskonstanten. Dette er en veldig viktig og unik verdi for hver kontroller. Klokkens nøyaktighet avhenger av det, som velges av produsenten ved å velge og installere denne konstanten. Skjermdump nr. 12 viser minnecellen der konstanten vil bli lagret når du leser kontrolleren.
Skjermbilde 12 - verdien av kalibreringskonstanten
Jeg gjentar at verdien er unik for hver mikrokrets og ikke trenger å være sammenfallende med det som er vist på figuren. Mange av uerfarenhet overskriver dette konstant og deretter Pic-kontroller begynner å fungere feil hvis prosjektet bruker klokke fra en intern generator. Jeg anbefaler deg å skrive ned denne konstanten og feste inskripsjonen med dens verdi direkte på kontrolleren. På denne måten vil du unngå mye trøbbel i fremtiden. Så verdien er skrevet ned - vi går videre. Åpne firmwarefilen, som vanligvis har en utvidelse hex. Nå i stedet for å skrive 3FFF, programmeringsbufferen inneholder koden til programmet vårt (skjermbilde nr. 13).
Skjermbilde 13 - firmware lastet ned til programmeringsbufferen
Jeg skrev over at mange overskriver kalibreringskonstanten ved uaktsomhet. Når skjer dette? Dette skjer når firmwarefilen åpnes. Verdien på konstanten endres automatisk til 3FFF og hvis du starter programmeringsprosessen, er det ingen tilbakevending. På skjermbilde nr. 14, den minnecellen der konstanten tidligere var 3450 (før åpning sekskantet fil).
Skjermbilde nr. 14 - automatisk endring av kalibreringskonstanten
Nå må du nøye følge trinnene nedenfor. Vi klikker på ikonet til mikrokretsen med lyn på verktøylinjen, og informerer derved programmet om at vi vil starte firmwareprosessen. Programmet vil spørre om vi er sikre på at vi vil blinke denne enheten. Vi er enige og klikker "JA". Etter dette får vi advarselen vist på skjermbilde # 15.
Skjermbilde nr. 15 - advarsel om avvik i verdiene på klokkonstanten
IC Prog forteller oss at en verdi av kalibreringskonstanten (i mitt tilfelle 3450), og nå en annen (3FFF) automatisk erstattet fra sekskantet fil. Det foreslås også å forlate standardverdien 3FFF. Det er viktig å klikke på "NO"å IC Prog under programmering returnerte verdien 3450 eller hva som vil være med deg. Klikk generelt på "NO"og observer følgende vindu (skjermbilde nr. 16).
Skjermbilde 16 - programmeringsprosess
I løpet av denne perioden anbefaler jeg deg å ikke trykke på noe eller laste datamaskinen med andre oppgaver. Da jeg tok et skjermbilde for denne artikkelen, da jeg klikker på knappen Skriv ut skjerm det oppsto en skrivefeil, og jeg måtte gjøre det på nytt. Etter litt tid IC Prog vil gi deg en melding om vellykket bekreftelse av den nylig skrevne koden i din Pic-kontroller, så alle som likte denne artikkelen, jeg vil se denne etter lignende innsats (skjermbilde nr. 17):
Skjermbilde nr. 17 - firmware var vellykket, du kan slappe av
Hvis du har spørsmål, les artikkelen nøye på nytt, og alt vil sikkert ordne seg - sjekket personlig. Lykke til alle og kreativ suksess !!!