Universaalne isetegemise USB-kiibi programmeerija. Universaalne USB programmeerija

Programmeerija on riistvara-tarkvaraseade, mida kasutatakse teabe lugemiseks või kirjutamiseks salvestusseadmesse (sisemised mikrokontrollerid). Kui raadioamatööril on vaja mikrokontrolleri seadet üks kord programmeerida, võite kasutada tavalist programmeerijat, mis ühendub COM- või LPT-pordiga. Näiteks kõige lihtsam AVR-i programmeerija on 6 ja 4 takistiga kaabel (PonyProg programmeerija).

Tavalise programmeerija abil saate laadida hex-programme paljudesse AVR-i mikrokontrolleritesse ilma lisaaega ja raha raiskamata. Lisaks saab programmeerijat kasutada vooluahelasisese programmeerijana, nii et saate programmeerida AVR-i mikrokontrollerit ilma seda seadmest eemaldamata.

Sellised programmeerijad ühendatakse arvutiga spetsiaalse programmi abil (nimetatakse ka programmeerijaks). See edastab ja seade kirjutab selle ainult kiibi mällu. Programmeerijaid saab ühendada jada- või paralleelpordi, USB-pistiku vms kaudu. Kaasaegsed programmeerijad on tavaliselt ühendatud USB kaudu.

USB-programmeerija on ette nähtud teatud ettevõtte mikroprotsessorseadmete programmeerimiseks (olenevalt programmeerija kaubamärgist) kokkupandud kujul. See lihtsustab oluliselt tarkvara seadistamise protsessi.

Kuidas ühendada USB programmeerijat?

Seadme kasutamiseks peate selle ühendama mõnda arvuti USB-porti. Pärast seda ilmub arvutisse teade uue USBasp USB-seadme ühendamise kohta ja programmeerija enda LED-tuli süttib, mis tähendab, et seade on edukalt ühendatud.

Seejärel peate installima draiverid, et OS saaks selle seadmega õigesti töötada. Pärast seda saate ühendada mikroprotsessori seadme ISP liidesega. Programmeerimise ajal süttib teine ​​LED.

Programmeerijal on reeglina kaks liidest - üks mikrokontrolleri ühendamiseks, teine ​​arvutiga ühendamiseks. Mikrokontrolleri ühendamiseks saate kasutada ISP jadaprogrammeerimisrežiimi. See seade on arvutiga ühendatud tavalise USB-pistiku kaudu.

Programmeerija juhtimiseks peate installima spetsiaalsed programmid. Parim on kasutada aknaga rakendusi. Näiteks saate seadmega töötamiseks kasutada ExtremeBurnerit, Khazama, avrguge ja teisi.

See programmeerija ei vaja esmast programmeerimist – söövitad trükkplaadi, joodid selle ja kasutad. Selle seadme autor on kirjas artikli lõpus, kuid siin annan lühikese väljavõtte juhendist, et oleks selgem, millest jutt: õige USB-programmeerija on tegelikult universaalne asi. Saate selle ühendada iga kaasaegse arvutiga ja soovitud mikrokontrollerit hõlpsalt värskendada mis tahes FLASH-mäluga üsna suurel kiirusel. Võtmesõnaks on siin aga “õige”, mis töötab normaalselt ilma häälestamiseta ja kohe peale detailide paigaldamist ja kokkupanemist tamburiiniga üle tantsides. Mis ei tõrgu ühest arvutist teise liikudes ega OS-i vahetades. Õige on see, mille jaoks on olemas draiverid iga kaasaegse laialdaselt kasutatava OS-i versiooni jaoks ja need draiverid pole lollakad. Igaüks määrab enda jaoks veel kümmekond korrektsuse kriteeriumi, kuid ülaltoodud on peamised, ilma milleta on mikrokontrolleriga põhimõtteliselt võimatu töötada.

Praegu on Internet täis erinevaid AVR-i jaoks mõeldud USB-programmeerija ahelaid. Tavaliselt võib need jagada kahte suurde rühma.

Esimene rühm hõlmab mikrokontrollerite (eriti AVR) baasil ehitatud programmeerijaid. Kogusin endale ja sõpradele Prottossist (AVR910) mitu programmeerijat, samuti mitu tükki USBasp. Kaks mu sõpra, kellele need seadmed on kingitud, on rahul. Nad on juba mitu aastat edukalt kive õmmelnud. Teistele (eriti mulle isiklikult) kokkupandud programmeerijad erilist rõõmu ei valmistanud. Ma ei ütle, et need on halvad, vaid asjaolud olid sellised: ühes arvutis töötab, teises mitte. Või osutusid need pärast paaritunnist töötamist tarkvarale, mille kaudu kivi õmmeldakse, nähtamatuks. Ja palju muud. Ütlen kohe, et ma ei saanud aru nende kontrollerite püsivarast, millele need programmeerijad on kokku pandud. Tõsi, proovisin hunnikut vilkuvaid programme, mille kaudu need programmeerijad justkui oskavad probleemideta kive õmmelda. Tulemus sagedaste tõrgete näol mind aga eriti ei rahuldanud. Ainus erand oli AVRDUDE programm koos SinaProg graafilise kestaga, kuid sain sellest teada liiga hilja. Muide, märkasin seda trendi: mida vanem on arvuti riistvara, seda paremini need programmeerijad töötavad. Noh, kõige ebameeldivam hetk neile, kes valisid AVR-i mikrokontrolleritega tutvumiseks teise võimaluse, on see, et programmeerija töötamiseks on vaja selles sisalduvat kivi millegagi vilkuda. See tähendab, et see tuleb välja nii: programmeerija kasutamiseks on vaja programmeerija teha/leida, et selle programmeerija ajusid vilkuda. See on selline nõiaring.

Ja teine ​​rühm USB-programmeerijad sisaldavad lahendust, mis põhineb spetsiaalsel FT232Rx kiibil. Ühel ajal sai sellest mikroskeemist omamoodi revolutsioon. See mitte ainult ei teisendab arendaja jaoks probleemideta USB-i UART-iks (ja tõenäoliselt kasutab 95% arendajatest seda just sel eesmärgil). Samuti saab see emuleerida täisväärtuslikku COM-porti ja "väiksemate" ridade (nt RTS, CTS, DTR jne) olekut saab määrata/lugeda mitte virtuaalsest COM-pordist, vaid otse FTDI draiveri kaudu ( välja töötanud FT232Rx). Seega on ilmunud uus lahendus mikrokontrollerite vilkumiseks, ilma et oleks vaja programmeerija aju esialgset püsivara ja see on üsna kiire.

USB-programmeerija skemaatiline diagramm

See ahel lihtsalt suunab MOSI, MISO, SCK ja RESET signaalid, mis genereeritakse vastavalt DD1 (FT232RL) kiibi DCD, DTR, RTS ja DSR tihvtidel, välgutava mikrokontrolleri soovitud tihvtidesse (st. on tegelikult "iidsete" programmeerijate analoog) . Pealegi teeb seda ainult kivi programmeerimise hetkel, muul ajal on programmeerija DD2 kiibi (74HC125D) 4 puhverelemendi tõttu plaadist lahti ühendatud. Liinide MOSI, MISO, SCK ja RESET oleku määrab/loeb arvuti püsivara tarkvara. Andmeedastus arvuti ja FT232RL kiibi vahel toimub USB siini kaudu (millelt saab toidet ka programmeerija).

HL2 ("PWR") LED annab märku, et programmeerija saab toidet USB siinilt. LED HL1 (“PROG”) näitab mikrokontrolleri vilkumise protsessi (põleb ainult vilkumise ajal). See on põhimõtteliselt kogu elektriskeemi enda kirjeldus. Ainus, mida tahaksin märkida, on see: esiteks, programmeerija ühendamiseks välgutatava plaadiga kasutatakse IDC-10MR pistikut (XP2 “ISP”), mille pistikupesa langeb kokku programmeerija pistiku laialt levinud pistikuga.
STK200/STK300:

XP2 "ISP" pistik seadme ühendamiseks programmeeritava mikrokontrolleriga

XP3 "MISC" pistik programmeerija lisafunktsioonide kasutamiseks

Üldiselt on FT232RL kiibil arendaja jaoks üsna tõsine potentsiaal (näiteks CBUS-i siiniliine saab kasutada tavaliste mikrokontrolleri I/O liinidena), seega oleks tore omada ligipääsu kõigile selle kontaktidele. Noh, juurdepääs pingetele +5,0 V ja +3,3 V ei ole ka kunagi üleliigne. Lisatud on trükkplaat ja täielik üksikasjalik kirjeldus. Arendus ja käsiraamat - [e-postiga kaitstud] , prooviversioon - SssaHeKkk.

Selles artiklis kirjeldame samm-sammult valmistamise etappe. USBasp programmeerija AVR mikrokontrollerite jaoks. Eraldi artiklites kirjeldame Windows XP ja Windows 7 (x64/x86) operatsioonisüsteemide draiverite installimist. Postituse lõpus on link vajaliku dokumentatsiooniga oma kätega USBasp programmeerija valmistamiseks.

USBasp programmeerija on tänu oma valmistamise lihtsusele ja odavate ja laialdaselt kättesaadavate elementide kasutamisele muutunud raadioamatööride seas väga populaarseks. Selle tööparameetrid ei ole madalamad kui professionaalsetel ja kallitel AVR-i mikrokontrollerite programmeerijatel.

USBasp programmeerija peamised omadused

  • Töötab mitme operatsioonisüsteemiga – Linux, Mac OS X ja Windows – sealhulgas Windows 8!
  • Ei vaja välist toidet.
  • Saab programmeerida kiirusega kuni 5kB/s
  • Programmeerimiskiiruse vähendamiseks on võimalus (lüliti 2) - protsessoritele, mille kvarts on alla 1,5 MHz
  • Annab programmeerimispinge (lüliti 1) 5 volti
  • Programmeerija töö näitamine LED-i abil

Enne töö alustamist tasub tutvuda kõigi tehtud toimingute järjestusega, nimelt:

  1. Trükkplaadi kujunduse/mustri valimine
  2. Trükkplaadi kujunduse ülekandmine fooliumklaaskiudlaminaadile
  3. Trükkplaadi söövitamine raudkloriidi lahuses
  4. Aukude puurimine
  5. Elementide paigaldamine (jootmine)
  6. Programmeerimine Atmaga8 programmeerija
  7. Programmeerija ühendamine arvutiga
  8. Draiverite installimine - Windows XP, Windows 7
  9. USBaspi toetava programmi valimine

USBasp programmeerija versioone on palju, kuid need kõik põhinevad põhiahelal, mille autoriks on Thomas Fischl. Tema autor on ka programmeerija mikrokontrolleri püsivara.

Algne programmeerija ahel:

Sel juhul valiti aluseks algne skeem. Kuna džemprite kasutamine algses vooluringis pole päris mugav, otsustati kasutada DIP-lüliteid. Samuti muudeti mõningaid takisti väärtusi.
Veelgi enam, algses vooluringis suunatakse TxD ja RxD liinid ISP-pistikusse, kuigi see pole vajalik (täpsemalt neid praktikas ei kasutata).

Allpool on diagramm tehtud muudatustega:

USBasp programmeerija ehitus

Selle programmeerija jaoks on trükkplaadist palju versioone, mõned neist leiate ametlikult USBaspi veebisaidilt. Enda tegin aga ülaltoodud diagrammi põhjal.

Kahjuks muutus DIP-lülitite kasutamise tõttu plaadi disain veidi keerulisemaks, mis tõi kaasa 2 lühikese džemperi kasutamise tagamaks, et PCB oleks endiselt ühepoolne.

Allpool on PCB tulemus:

Nagu jooniselt näha, ei kasutanud programmeerija SMD elemente. Tahvli tühi ruum on “täidetud” maaväljaga, peamiselt selleks, et mitte välja söövitada suurt hulka vaske ja ka vähendada häirete mõju programmeerijale.

USBasp programmeerijas kasutatud elementide loend:

  • R1: 10k
  • R2: 180
  • R3: 100
  • R5, R6: 68
  • R7: 2k2
  • C1, C2: 22 p
  • C3: 10 μ
  • C4: 100n
  • LED1: punane LED 20mA
  • LED2: roheline LED 20mA
  • D2, D3: zeneri dioodid 3,6 V juures
  • X1: USB-pistiku tüüp B
  • SV1: IDC-10 pistikupesa
  • Q1: kvarts 12 MHz, HC49-S korpus
  • SW1: Dip-lüliti kolm asendit
  • IC1: Atmega8 ( MÄRKUS: Atmega8 - PU mikrokontrollerit ei tohiks kasutada, kuna selle maksimaalne taktsagedus on 8 MHz!)

USBasp programmeerija trükkplaadi disain viidi LUT () meetodil üle klaaskiust laminaadile. Me ei kirjelda, kuidas seda teha, kuna seda teavet on Internetis palju.

Ütleme lühidalt, et esmalt trükitakse läikpaberile mõõtkavas 1:1 joonis, seejärel kantakse see klaaskiudlaminaadi puhastatud ja rasvatustatud vasepoolele ning kinnitatakse paberteibiga. Järgmisena silutakse paberipool hoolikalt triikrauaga, kasutades 3-punkti triikrauda. Pärast leotatakse kogu asi vees ja puhastatakse hoolikalt paberist.

Järgmine samm on plaadi söövitamine raudkloriidi lahuses. Söövitamise ajal on soovitav hoida lahuse temperatuur vähemalt 40 C, nii et kastke purk koos lahusega kuuma vette:


Pärast söövitusprotsessi lõppu tuleb tooner eemaldada atsetooniga.

Nüüd jääb üle vaid augud puurida. Pärast plaadi tootmisprotsessi lõpetamist võite alustada USBasp programmeerija elementide jootmist, alustades džemprid.

Trükivalmis (PDF-vormingus) PCB-joonis on artikli lõpus. Samuti leiate mitu võimalust projekti ametlikult veebisaidilt.

USBasp programmeerija esmakordne käivitamine

Nüüd, kui kõik osad on joodetud, jääb üle vaid programmeerija enda mikrokontroller Atmegę8 “vilgutada”. Selleks on vaja eraldi programmeerijat, see võib olla näiteks STK 200 (LPT port), STK500 vms. LPT programmeerija on ühendatud USBaspiga IDC-10 pistiku kaudu.

Pange tähele, et algse programmeerija (USBasp) pistiku kontaktide jaotus on paremal, samas kui selles artiklis kirjeldatud versioonis on see vasakul:

Parempoolsel joonisel näidatud jaotus vastab Atmeli algsetes programmeerijates kasutatud jaotustele. See jaotus vähendab programmeerimise ajal häirete ohtu programmeerija ja kontrolleri vahel pikkade juhtmete korral, kuna iga signaaliliin on maandusega varjestatud, välja arvatud MOSI.

Programmeerimise ajal lubage SELF-režiim, keerates DIP-lüliti nr 3 asendisse ON. Tänu sellele on Atmega8 programmeerimine võimalik. Pärast programmeerimise lõpetamist tuleb lüliti (3) asendisse seada OFF.

Uusima püsivara versiooni saab alla laadida ametlikult veebisaidilt. Soovitame Atmega8 versiooni, mis on arhiivis: usbasp.2011-05-28.tar.gz.

Pange tähele, et enne Atmega8 programmeerimist peate seadistama kaitsmed, millel on järgmised väärtused:

  • # Atmega8 jaoks: HFUSE=0xC9 LFUSE=0xEF
  • # Atmega48 jaoks: HFUSE=0xDD LFUSE=0xFF

Kui programmeerimine õnnestub, ühendage programmeerija arvuti USB-pistikuga, punane LED-tuli peaks süttima ja arvuti peaks teatama uue seadme tuvastamisest.

USBasp programmeerija draiverite installimine

Programmeerija draiverite installimise meetodit kirjeldatakse eraldi artiklites ja seal on saadaval ka draiverid ise. Allpool on otselingid nendele artiklitele:

  • USBasp programmeerija draiverite installimine Windows XP all
  • USBasp programmeerija Windows 7 x64/x86 draiverite installimine

Programmid USBasp programmeerija kasutamiseks

Kõige populaarsem programm, mis toetab USBasp programmeerijat, on konsooliprogramm AVRdude. Samuti on palju tuletisprogramme, mille kasutamine on palju mugavam. Need on esitatud artiklis USBasp programmeerijat toetavate programmide võrdlus.

See programmeerija ei vaja esmast programmeerimist – söövitad trükkplaadi, joodid selle ja kasutad. Selle seadme autor on kirjas artikli lõpus, kuid siin annan lühikese väljavõtte juhendist, et oleks selgem, millest jutt: õige USB-programmeerija on tegelikult universaalne asi. Saate selle ühendada iga kaasaegse arvutiga ja soovitud mikrokontrollerit hõlpsalt värskendada mis tahes FLASH-mäluga üsna suurel kiirusel. Võtmesõnaks on siin aga “õige”, mis töötab normaalselt ilma häälestamiseta ja kohe peale detailide paigaldamist ja kokkupanemist tamburiiniga üle tantsides. Mis ei tõrgu ühest arvutist teise liikudes ega OS-i vahetades. Õige on see, mille jaoks on olemas draiverid iga kaasaegse laialdaselt kasutatava OS-i versiooni jaoks ja need draiverid pole lollakad. Igaüks määrab enda jaoks veel kümmekond korrektsuse kriteeriumi, kuid ülaltoodud on peamised, ilma milleta on mikrokontrolleriga põhimõtteliselt võimatu töötada.

Tänapäeval on Internet täis erinevaid skeeme. Tavaliselt võib need jagada kahte suurde rühma.

Esimene rühm hõlmab mikrokontrollerite (eriti AVR) baasil ehitatud programmeerijaid. Kogusin endale ja sõpradele Prottossist (AVR910) mitu programmeerijat, samuti mitu tükki USBasp. Kaks mu sõpra, kellele need seadmed on kingitud, on rahul. Nad on juba mitu aastat edukalt kive õmmelnud. Teistele (eriti mulle isiklikult) kokkupandud programmeerijad erilist rõõmu ei valmistanud. Ma ei ütle, et need on halvad, vaid asjaolud olid sellised: ühes arvutis töötab, teises mitte. Või osutusid need pärast paaritunnist töötamist tarkvarale, mille kaudu kivi õmmeldakse, nähtamatuks. Ja palju muud. Ütlen kohe, et ma ei saanud aru nende kontrollerite püsivarast, millele need programmeerijad on kokku pandud. Tõsi, proovisin hunnikut vilkuvaid programme, mille kaudu need programmeerijad justkui oskavad probleemideta kive õmmelda. Tulemus sagedaste tõrgete näol mind aga eriti ei rahuldanud. Ainus erand oli AVRDUDE programm koos SinaProg graafilise kestaga, kuid sain sellest teada liiga hilja. Muide, märkasin seda trendi: mida vanem on arvuti riistvara, seda paremini need programmeerijad töötavad. Noh, kõige ebameeldivam hetk neile, kes valisid AVR-i mikrokontrolleritega tutvumiseks teise võimaluse, on see, et programmeerija töötamiseks on vaja selles sisalduvat kivi millegagi vilkuda. See tähendab, et see tuleb välja nii: programmeerija kasutamiseks on vaja programmeerija teha/leida, et selle programmeerija ajusid vilkuda. See on selline nõiaring.

Ja teine ​​rühm USB-programmeerijad sisaldavad lahendust, mis põhineb spetsiaalsel FT232Rx kiibil. Ühel ajal sai sellest mikroskeemist omamoodi revolutsioon. See mitte ainult ei teisendab arendaja jaoks probleemideta USB-i UART-iks (ja tõenäoliselt kasutab 95% arendajatest seda just sel eesmärgil). Samuti saab see emuleerida täisväärtuslikku COM-porti ja "väiksemate" ridade (nt RTS, CTS, DTR jne) olekut saab määrata/lugeda mitte virtuaalsest COM-pordist, vaid otse FTDI draiveri kaudu ( välja töötanud FT232Rx). Seega on ilmunud uus lahendus mikrokontrollerite vilkumiseks, ilma et oleks vaja programmeerija aju esialgset püsivara ja see on üsna kiire.

USB-programmeerija skemaatiline diagramm

See ahel lihtsalt suunab MOSI, MISO, SCK ja RESET signaalid, mis genereeritakse vastavalt DD1 (FT232RL) kiibi DCD, DTR, RTS ja DSR tihvtidel, välgutava mikrokontrolleri soovitud tihvtidesse (st. on tegelikult "iidsete" programmeerijate analoog) . Pealegi teeb seda ainult kivi programmeerimise hetkel, muul ajal on programmeerija DD2 kiibi (74HC125D) 4 puhverelemendi tõttu plaadist lahti ühendatud. Liinide MOSI, MISO, SCK ja RESET oleku määrab/loeb arvuti püsivara tarkvara. Andmeedastus arvuti ja FT232RL kiibi vahel toimub USB siini kaudu (millelt saab toidet ka programmeerija).

HL2 ("PWR") LED annab märku, et programmeerija saab toidet USB siinilt. LED HL1 (“PROG”) näitab mikrokontrolleri vilkumise protsessi (põleb ainult vilkumise ajal). See on põhimõtteliselt kogu elektriskeemi enda kirjeldus. Ainus, mida tahaksin märkida, on see: esiteks, programmeerija ühendamiseks välgutatava plaadiga kasutatakse IDC-10MR pistikut (XP2 “ISP”), mille pistikupesa langeb kokku programmeerija pistiku laialt levinud pistikuga.
STK200/STK300:

XP2 "ISP" pistik seadme ühendamiseks programmeeritava mikrokontrolleriga

XP3 "MISC" pistik programmeerija lisafunktsioonide kasutamiseks

Üldiselt on FT232RL kiibil arendaja jaoks üsna tõsine potentsiaal (näiteks CBUS-i siiniliine saab kasutada tavaliste mikrokontrolleri I/O liinidena), seega oleks tore omada ligipääsu kõigile selle kontaktidele. Noh, juurdepääs pingetele +5,0 V ja +3,3 V ei ole ka kunagi üleliigne. Lisatud on trükkplaat ja täielik üksikasjalik kirjeldus. Arendus ja käsiraamat - [e-postiga kaitstud] , prooviversioon - SssaHeKkk.

Arutage artiklit USB PROGRAMMER

Milliseid esimesi samme peaks raadioamatöör tegema, kui ta otsustab mikrokontrollerile vooluringi kokku panna? Loomulikult on vaja juhtimisprogrammi - "püsivara" ja ka programmeerijat.

Ja kui esimese punktiga probleeme pole - tavaliselt laadivad valmis “püsivara” üles vooluringide autorid, siis programmeerijaga on asjad keerulisemad.

Valmis USB programmeerijate hind on üsna kõrge ja parim lahendus oleks see ise kokku panna. Siin on kavandatava seadme skeem (pildid on klõpsatavad).

Põhiosa.

MK paigalduspaneel.

Algne diagramm on võetud autori loal LabKit.ru veebisaidilt, mille eest suur tänu. See on patenteeritud PICkit2 programmeerija niinimetatud kloon. Kuna seadme versioon on patenteeritud PICkit2 "kerge" koopia, nimetas autor oma arenduse PICkit-2 Lite, mis rõhutab sellise seadme kokkupanemise lihtsust algajatele raadioamatööridele.

Mida saab programmeerija teha? Programmeerija abil saate välgutada kõige hõlpsamini kättesaadavaid ja populaarsemaid PIC-seeria MCU-sid (PIC16F84A, PIC16F628A, PIC12F629, PIC12F675, PIC16F877A jne), aga ka 24LC-seeria EEPROM-i mälukiipe. Lisaks saab programmeerija töötada USB-UART muunduri režiimis ja tal on mõned loogikaanalüsaatori funktsioonid. Eriti oluline funktsioon, mis programmeerijal on, on mõne MCU (näiteks PIC12F629 ja PIC12F675) sisseehitatud RC-generaatori kalibreerimiskonstandi arvutamine.

Vajalikud muudatused.

Skeemis on mõned muudatused, mis on vajalikud selleks, et PICkit-2 Lite programmeerijat kasutades oleks võimalik 24Cxx seeria EEPROM-i mälukiipidelt andmeid kirjutada/kustutada/lugeda.

Alates muudatustest, mis skeemis tehti. Lisatud ühendus DD1 (RA4) viigust 6 ZIF-paneeli viiguni 21. AUX-pistikut kasutatakse ainult 24LC EEPROM-i mälukiipidega (24C04, 24WC08 ja analoogid) töötamiseks. See edastab andmeid, mistõttu on programmeerimispaneeli diagrammil märgitud sõnaga “Data”. Mikrokontrollerite programmeerimisel tavaliselt AUX-pistikut ei kasutata, kuigi see on vajalik MK-de programmeerimisel LVP-režiimis.

Lisatud on ka 2 kOhm tõmbetakisti, mis on ühendatud mälukiipide SDA ja Vcc tihvtide vahele.

Olen kõik need muudatused trükkplaadil juba teinud, pärast PICkit-2 Lite'i kokkupanekut vastavalt autori esialgsele skeemile.

Koduraadioseadmetes kasutatakse laialdaselt 24Cxx mälukiipe (24C08 jne), mida tuleb vahel ka näiteks kineskooptelerite parandamisel välgutada. Seadete salvestamiseks kasutavad nad 24Cxx mälu.

LCD-telerid kasutavad teist tüüpi mälu (välkmälu). Olen juba rääkinud, kuidas LCD-teleri mälu vilkuda. Kui kedagi huvitab, siis vaadake.

Seoses vajadusega töötada 24Cxx seeria mikroskeemidega, pidin programmeerija “lõpetama”. Ma ei söövitanud uut trükkplaati, lisasin lihtsalt vajalikud elemendid trükkplaadile. Nii juhtus.

Seadme tuumaks on mikrokontroller PIC18F2550-I/SP.

See on seadme ainus kiip. MK PIC18F2550 tuleb "välgutada". See lihtne toiming tekitab paljudes segadust, kuna tekib nn “kana ja muna” probleem. Ma räägin teile veidi hiljem, kuidas ma selle lahendasin.

Programmeerija kokkupanemiseks vajalike osade loend. Mobiiliversioonis lohistage tabelit vasakule (pühkige vasakule-paremale), et näha kõiki selle veerge.

Nimi Määramine Hinnang/parameetrid Bränd või kauba tüüp
Programmeerija põhiosa jaoks
Mikrokontroller DD1 8-bitine mikrokontroller PIC18F2550-I/SP
Bipolaarsed transistorid VT1, VT2, VT3 KT3102
VT4 KT361
Diood VD1 KD522, 1N4148
Schottky diood VD2 1N5817
LEDid HL1, HL2 mis tahes 3 volti, punane Ja roheline säravad värvid
Takistid R1, R2 300 oomi
R3 22 kOhm
R4 1 kOhm
R5, R6, R12 10 kOhm
R7, R8, R14 100 oomi
R9, R10, R15, R16 4,7 kOhm
R11 2,7 kOhm
R13 100 kOhm
Kondensaatorid C2 0,1 μ K10-17 (keraamika), imporditud analoogid
C3 0,47 mikronit
Elektrolüütkondensaatorid C1 100uF * 6,3V K50-6, imporditud analoogid
C4 47 uF * 16 V
Induktiivpool (drossel) L1 680 uH ühtne tüüp EC24, CECL või isetehtud
Kvartsresonaator ZQ1 20 MHz
USB pesa XS1 USB-BF tüüp
Jumper XT1 mis tahes tüüpi "hüppaja"
Mikrokontrolleri paigalduspaneeli jaoks (MK)
ZIF-paneel XS1 mis tahes 40-kontaktiline ZIF-paneel
Takistid R1 2 kOhm MLT, MON (võimsus alates 0,125 W ja rohkem), imporditud analoogid
R2, R3, R4, R5, R6 10 kOhm

Nüüd natuke detailidest ja nende eesmärgist.

Roheline LED HL1 süttib, kui programmeerija toide on ühendatud ja punane HL2 LED süttib, kui andmeid arvuti ja programmeerija vahel edastatakse.

Seadme mitmekülgsuse ja töökindluse tagamiseks kasutatakse XS1 tüüpi “B” (ruudukujulist) USB-pesa. Arvuti kasutab A-tüüpi USB-pesa. Seetõttu on võimatu ühenduskaabli pistikupesasid segi ajada. See lahendus aitab kaasa ka seadme töökindlusele. Kui kaabel muutub kasutuskõlbmatuks, saab selle hõlpsalt uuega asendada ilma jootmise või paigaldustöödeta.

680 µH induktiivpoolina L1 on parem kasutada valmis induktiivpooli (näiteks tüübid EC24 või CECL). Kui te aga valmistoodet ei leia, saate gaasihoova ise valmistada. Selleks tuleb CW68 tüüpi induktiivpoolilt ferriitsüdamikule kerida 250 - 300 pööret PEL-0.1 traati. Tasub arvestada, et tänu tagasisidega PWM-i olemasolule ei pea muretsema induktiivsuse reitingu täpsuse pärast.

Kõrgepinge programmeerimise pinge (Vpp) vahemikus +8,5 kuni 14 volti loob võtmeregulaator. See sisaldab elemente VT1, VD1, L1, C4, R4, R10, R11. PWM-impulssid saadetakse PIC18F2550 kontaktilt 12 VT1 baasi. Tagasiside annab jagaja R10, R11.

Skeemielementide kaitsmiseks programmeerimisliinide pöördpinge eest, kui kasutate USB-programmeerijat ICSP (In-Circuit Serial Programming) režiimis, kasutatakse VD2 dioodi. VD2 on Schottky diood. See tuleks valida pingelanguga P-N-ristmikul mitte rohkem kui 0,45 volti. Samuti kaitseb VD2 diood elemente pöördpinge eest, kui programmeerijat kasutatakse USB-UART teisenduse ja loogikaanalüsaatori režiimis.

Kui kasutate programmeerijat eranditult paneeli mikrokontrollerite programmeerimiseks (ilma ICSP-d kasutamata), saate VD2 dioodi täielikult eemaldada (seda ma tegin) ja selle asemel paigaldada hüppaja.

Seadme kompaktsuse teeb universaalne ZIF-paneel (Zero Insertion Force – null paigaldusvaevaga).

Tänu sellele saate mikrokontrolleri "juhtmega ühendada" peaaegu igasse DIP-paketti.

Diagramm "Mikrokontrolleri (MK) paigalduspaneel" näitab, kuidas erineva korpusega mikrokontrollerid tuleb paneeli paigaldada. MK paigaldamisel tuleks tähelepanu pöörata sellele, et paneelis olev mikrokontroller oleks paigutatud nii, et kiibil olev võti oleks ZIF paneeli lukustushoova küljel.

Nii tuleb paigaldada 18-kontaktilised mikrokontrollerid (PIC16F84A, PIC16F628A jne).

Ja siin on 8-kontaktilised mikrokontrollerid (PIC12F675, PIC12F629 jne).

Kui teil on vaja pindpaigalduspaketis (SOIC) olevat mikrokontrollerit flashida, võite kasutada adapterit või lihtsalt joota mikrokontrolleri külge 5 kontakti, mida tavaliselt programmeerimiseks vaja läheb (Vpp, Clock, Data, Vcc, GND).

Trükkplaadi valmis joonise koos kõigi muudatustega leiate artikli lõpus olevalt lingilt. Avades faili programmis Sprint Layout 5.0, kasutades režiimi "Prindi", saate mitte ainult printida prinditud juhtmete mustriga kihti, vaid vaadata ka elementide paigutust trükkplaadil. Pöörake tähelepanu isoleeritud hüppajale, mis ühendab DD1 tihvti 6 ja ZIF-paneeli tihvti 21. Peate printima tahvli joonise peegelpildis.

Trükkplaadi saab teha LUT meetodil, samuti markerit trükkplaatidele, kasutades tsaponlaki (seda tegin mina) või “pliiatsi” meetodit.

Siin on pilt elementide paigutusest trükkplaadil (klikitav).

Paigaldamisel tuleb esmalt jootma tinatatud vasktraadist džemprid, seejärel paigaldada madala profiiliga elemendid (takistid, kondensaatorid, kvarts, ISCP pin pistik), seejärel transistorid ja programmeeritud MK. Viimane samm on paigaldada ZIF-paneel, USB-pesa ja tihendada juhtmed isolatsiooni (džemprid).

Mikrokontrolleri PIC18F2550 "püsivara".

Püsivara fail - PK2V023200.hex peate PIC18F2550I-SP MK mällu kirjutama, kasutades mis tahes programmeerijat, mis toetab PIC-mikrokontrollereid (näiteks Extra-PIC). Kasutasin JDM Programmator JONIC PROG ja programmi WinPic800.

PIC18F2550 MCU-sse saate püsivara üles laadida sama patenteeritud programmeerija PICkit2 või selle uue versiooni PICkit3 abil. Loomulikult saate seda teha omatehtud PICkit-2 Lite'iga, kui mõnel teie sõbral õnnestus see enne teid kokku panna :).

Samuti tasub teada, et mikrokontrolleri PIC18F2550-I/SP “püsivara” (fail PK2V023200.hex) kirjutatakse programmi PICkit 2 Programmer installimisel kausta koos programmi enda failidega. Faili PK2V023200.hex ligikaudne asukoht - "C:\Program Files (x86)\Microchip\PICkit 2 v2\PK2V023200.hex" . Nende jaoks, kelle arvutisse on installitud Windowsi 32-bitine versioon, on asukohatee erinev: "C:\Program Files\Microchip\PICkit 2 v2\PK2V023200.hex" .

Noh, kui te ei suutnud pakutud meetoditega "kana ja muna" probleemi lahendada, saate AliExpressi veebisaidilt osta valmis PICkit3 programmeerija. Seal maksab palju odavamalt. Kirjutasin AliExpressis osade ja elektrooniliste komplektide ostmisest.

Programmeerija püsivara värskendamine.

Progress ei seisa paigal ja aeg-ajalt annab Microchip välja oma tarkvara uuendusi, sealhulgas PICkit2, PICkit3 programmeerija jaoks. Loomulikult saame värskendada ka omatehtud PICkit-2 Lite juhtimisprogrammi. Selleks vajate programmi PICkit2 Programmer. Mis see on ja kuidas seda kasutada - veidi hiljem. Vahepeal paar sõna selle kohta, mida tuleb püsivara värskendamiseks teha.

Programmeerija tarkvara värskendamiseks peate sulgema programmeerija hüppaja XT1, kui see on arvutist lahti ühendatud. Seejärel ühendage programmeerija arvutiga ja käivitage PICkit2 Programmer. Kui XT1 on suletud, aktiveeritakse režiim alglaadur uue püsivara versiooni allalaadimiseks. Seejärel avage PICkit2 programmeerija menüüs "Tööriistad" - "Laadi alla PICkit 2 operatsioonisüsteem" värskendatud püsivara varem ettevalmistatud hex-fail. Järgmisena toimub programmeerija tarkvara värskendamise protsess.

Pärast värskendamist peate programmeerija arvutist lahti ühendama ja eemaldama XT1 hüppaja. Tavarežiimis on hüppaja avatud. Programmeerija tarkvara versiooni saate teada programmi PICkit2 Programmer menüüst "Abi" - "Teave".

See kõik puudutab tehnilisi probleeme. Ja nüüd tarkvarast.

Programmeerijaga töötamine. PICkit2 programmeerija.

USB-programmeerijaga töötamiseks peame arvutisse installima programmi PICkit2 Programmer. Sellel eriprogrammil on lihtne liides, seda on lihtne paigaldada ja see ei vaja erikonfiguratsiooni. Tasub teada, et programmeerijaga saab töötada MPLAB IDE arenduskeskkonda kasutades, kuid MK välgutamiseks/kustutamiseks/lugemiseks piisab lihtsast programmist - PICkit2 Programmer. Ma soovitan.

Pärast programmi PICkit2 Programmer installimist ühendage kokkupandud USB programmeerija arvutiga. Samal ajal süttib see roheline LED (“toide”) ja operatsioonisüsteem tunneb seadme ära kui "PICkit2 mikrokontrolleri programmeerija" ja installige draiverid.

Käivitage programm PICkit2 Programmer. Programmi aknasse peaks ilmuma kiri.

Kui programmeerija pole ühendatud, kuvatakse programmi aknas hirmutav teade ja lühikesed juhised "Mida teha?" inglise keeles.

Kui programmeerija on ühendatud arvutiga, kuhu on installitud MK, tuvastab programm selle käivitamisel ja teavitab meid sellest PICkit2 Programmeerija aknas.

Palju õnne! Esimene samm on astutud. Ja ma rääkisin eraldi artiklis, kuidas programmi PICkit2 Programmer kasutada. Järgmine samm .

Nõutavad failid:

    PICkit2 kasutusjuhend (vene keeles) võta või.



Seotud väljaanded