Skemat dhe materialet. Përditësimi i firmuerit të programuesit

Ashtu si një teatër fillon me një varëse rrobash, po ashtu programimi i mikrokontrolluesve fillon me zgjedhjen e një programuesi të mirë. Që kur kam filluar të zotëroj mikrokontrolluesit e kompanisë ATMEL, atëherë më duhej të njihesha plotësisht me atë që ofrojnë prodhuesit. Ato ofrojnë shumë gjëra interesante dhe të shijshme, vetëm me çmime të tepruara. Për shembull, një shall me një mikrokontrollues me njëzet këmbë me një palë rezistenca dhe dioda si parzmore kushton si një "aeroplan". Prandaj, lindi çështja e vetë-montimit të programuesit. Pas një studimi të gjatë të zhvillimeve të radio amatorëve me përvojë, u vendos që të mblidhej një programues i provuar mirë USBASP , truri i të cilit është një mikrokontrolluesAtmega8 (ekzistojnë gjithashtu opsione firmware për atmega88 dhe atmega48). Lidhja minimale e mikrokontrolluesit ju lejon të montoni një programues mjaft miniaturë që mund ta merrni gjithmonë me vete, si një flash drive.

Pasi u vendos për të mbledhur një programues miniaturë, unë rivizova qarkun për mikrokontrolluesin Atmega8 në strehim TQFP32(pinout i mikrokontrolluesit është i ndryshëm nga pinout në paketën DIP):

Jumper J1 përdoret nëse është e nevojshme të ndezni një mikrokontrollues me një frekuencë të orës nën 1.5 MHz. Nga rruga, ky kërcyes mund të eliminohet fare duke vendosur këmbën e 25-të të MK në tokë. Atëherë programuesi do të funksionojë gjithmonë me një frekuencë të reduktuar. Personalisht, vura re se programimi me një shpejtësi të reduktuar kërkon një pjesë të sekondës më shumë, dhe për këtë arsye tani nuk e tërheq kërcyesin, por qep vazhdimisht me të.
Diodat Zener D1 dhe D2 përdoren për të përputhur nivelet midis programuesit dhe autobusit USB; do të funksionojë pa to, por jo në të gjithë kompjuterët.
LED blu tregon që qarku është gati për t'u programuar; LED i kuq ndizet gjatë programimit. Kontaktet e programimit janë të vendosura në lidhësin IDC-06, pinout përputhet me standardin ATMEL për një lidhës ISP me 6 pin:


Ky lidhës përmban kontakte për fuqizimin e pajisjeve të programueshme; këtu ai merret direkt nga porta USB e kompjuterit, ndaj duhet të jeni të kujdesshëm dhe të shmangni qarqet e shkurtra. I njëjti lidhës përdoret gjithashtu për programimin e mikrokontrolluesit të kontrollit; për ta bërë këtë, thjesht lidhni kunjat e Reset në lidhës dhe në mikrokontrollues (shihni vijën e kuqe me pika në diagram). Në qarkun e autorit, kjo bëhet me një kërcyes, por unë nuk e ngatërrova tabelën dhe e hoqa. Për një firmware të vetëm, do të mjaftojë një kërcyes i thjeshtë me tela. Bordi doli të ishte i dyanshëm, me përmasa 45x18 mm.


Lidhësi i programimit dhe një kërcyes për të zvogëluar shpejtësinë e programuesit janë të vendosura në fund të pajisjes, kjo është shumë e përshtatshme


Firmware i mikrokontrolluesit të kontrollit

Pra, pas montimit të pajisjes, gjëja më e rëndësishme që mbetet është ndezja e mikrokontrolluesit të kontrollit. Miqtë që kanë ende kompjuterë me një port LPT janë të përshtatshëm për këto qëllime :)Programuesi më i thjeshtë me pesë tela për AVR
Mikrokontrolluesi mund të ndizet nga lidhësi i programimit duke lidhur kunjat e rivendosjes së mikrokontrolluesit (29 këmbë) dhe lidhësin. Firmware ekziston për modelet Atmega48, Atmega8 dhe Atmega88. Këshillohet të përdorni një nga dy gurët e fundit, pasi mbështetja për versionin Atmega48 është ndërprerë dhe versioni më i fundit i firmuerit daton në 2009. Dhe versionet për gurët e 8-të dhe të 88-të përditësohen vazhdimisht, dhe autori duket se po planifikon të shtojë një korrigjues në qark në funksionalitet. Firmware-in e marrim nga faqja gjermane. Për të ngarkuar programin e kontrollit në mikrokontrollues, përdora programin PonyProg. Kur programoni, është e nevojshme të vendosni kristalin të funksionojë nga një burim i jashtëm i orës në 12 MHz. Pamja e ekranit të programit me cilësimet e bluzës së siguresave në PonyProg:


Pas ndezjes së firmuerit, LED i lidhur me këmbën 23 të mikrokontrolluesit duhet të ndizet. Kjo do të jetë një shenjë e sigurt se programuesi është programuar me sukses dhe është gati për përdorim.

Instalimi i shoferit

Instalimi u krye në një makinë me Windows 7 dhe nuk u shfaq asnjë problem. Kur lidheni me kompjuterin tuaj për herë të parë, do të shfaqet një mesazh që tregon se është zbuluar një pajisje e re, duke ju kërkuar të instaloni një drejtues. Zgjidhni instalimin nga vendi i specifikuar:


Zgjidhni dosjen ku ndodhet dru zjarri dhe klikoni Next


Një dritare do të shfaqet menjëherë me një paralajmërim se drejtuesi që instalohet nuk ka një nënshkrim dixhital për ato të vogla të buta:


Ne e shpërfillim paralajmërimin dhe vazhdojmë instalimin, pas një pauze të shkurtër do të shfaqet një dritare që na informon se operacioni i instalimit të shoferit ka përfunduar me sukses


Kjo është e gjitha, programuesi tani është gati për përdorim.

Programues Khazama AVR

Për të punuar me programuesin, zgjodha ndezësin Khazama AVR Programmer. Një program i mrekullueshëm me një ndërfaqe minimaliste.


Ai funksionon me të gjithë mikrokontrolluesit e njohur AVR, ju lejon të ndezni flashin dhe eeprom, të shikoni përmbajtjen e kujtesës, të fshini çipin dhe gjithashtu të ndryshoni konfigurimin e pjesëve të siguresave. Në përgjithësi, një grup plotësisht standard. Vendosja e siguresave kryhet duke zgjedhur burimin e orës nga lista rënëse, kështu që gjasat e kyçjes së kristalit gabimisht zvogëlohen ndjeshëm. Siguresat mund të ndryshohen gjithashtu duke vendosur kutitë e kontrollit në fushën e poshtme, por nuk mund të vendosni kuti kontrolli në një konfigurim joekzistent dhe ky është gjithashtu një plus i madh përsa i përket sigurisë.


Siguresat shkruhen në memorien MK, siç mund ta merrni me mend, duke shtypur butonin Shkruaj të gjitha. Butoni Save ruan konfigurimin aktual dhe butoni Load kthen atë të ruajtur. Vërtetë, nuk mund të gjeja një përdorim praktik për këto butona. Butoni Default është krijuar për të regjistruar konfigurimin standard të siguresave, atë me të cilin mikrokontrolluesit vijnë nga fabrika (zakonisht 1 MHz nga RC e brendshme).
Në përgjithësi, gjatë gjithë kohës që kam përdorur këtë programues, ai është treguar më i miri për sa i përket stabilitetit dhe shpejtësisë së funksionimit. Ai funksionoi pa probleme si në një kompjuter desktop të lashtë ashtu edhe në një laptop të ri.

Shkarkoni skedarin PCBnë SprintLayout mund të ndiqni këtë lidhje

Çfarë hapash të parë duhet të ndërmarrë një radio amator nëse vendos të montojë një qark në një mikrokontrollues? Natyrisht, nevojitet një program kontrolli - "firmware", si dhe një programues.

Dhe nëse nuk ka probleme me pikën e parë - "firmware" i përfunduar zakonisht ngarkohet nga autorët e qarqeve, atëherë me programuesin gjërat janë më të ndërlikuara.

Çmimi i programuesve USB të gatshëm është mjaft i lartë dhe zgjidhja më e mirë do të ishte ta montoni vetë. Këtu është një diagram i pajisjes së propozuar (fotot mund të klikohen).

Pjesa kryesore.

Paneli i instalimit MK.

Diagrami origjinal është marrë nga faqja e internetit LabKit.ru me lejen e autorit, për të cilën shumë faleminderit për të. Ky është një i ashtuquajtur klon i programuesit të pronarit PICkit2. Meqenëse versioni i pajisjes është një kopje "e lehtë" e PICkit2 të pronarit, autori e quajti zhvillimin e tij PICkit-2 Lite, e cila thekson lehtësinë e montimit të një pajisjeje të tillë për amatorët fillestarë të radios.

Çfarë mund të bëjë një programues? Duke përdorur programuesin, mund të ndezni MCU-të e serive PIC më të disponueshme dhe më të njohura (PIC16F84A, PIC16F628A, PIC12F629, PIC12F675, PIC16F877A, etj.), si dhe çipa memorie EEPROM të serisë 24LC. Përveç kësaj, programuesi mund të funksionojë në modalitetin e konvertuesit USB-UART dhe ka disa nga funksionet e një analizuesi logjik. Një funksion veçanërisht i rëndësishëm që ka programuesi është llogaritja e konstantës së kalibrimit të gjeneratorit të integruar RC të disa MCU (për shembull, si PIC12F629 dhe PIC12F675).

Ndryshimet e nevojshme.

Ka disa ndryshime në qark që janë të nevojshme në mënyrë që duke përdorur programuesin PICkit-2 Lite të jetë e mundur të shkruani/fshini/lexoni të dhëna nga çipat e memories EEPROM të serisë 24Cxx.

Nga ndryshimet që i janë bërë skemës. U shtua lidhja nga pini 6 i DD1 (RA4) në pinin 21 të panelit ZIF. Pini AUX përdoret ekskluzivisht për të punuar me çipa memorie 24LC EEPROM (24C04, 24WC08 dhe analoge). Ai transmeton të dhëna, prandaj është shënuar me fjalën "Data" në diagramin e panelit të programimit. Kur programoni mikrokontrolluesit, pini AUX zakonisht nuk përdoret, megjithëse është i nevojshëm kur programoni MK në modalitetin LVP.

Është shtuar gjithashtu një rezistencë tërheqëse 2 kOhm, e cila lidhet midis kunjave SDA dhe Vcc të çipave të memories.

Unë i kam bërë tashmë të gjitha këto modifikime në tabelën e qarkut të printuar, pasi kam montuar PICkit-2 Lite sipas diagramit origjinal të autorit.

Çipat e memories 24Cxx (24C08, etj.) përdoren gjerësisht në pajisjet radio shtëpiake, dhe ndonjëherë ato duhet të ndezen, për shembull, kur riparoni TV CRT. Ata përdorin memorie 24Cxx për të ruajtur cilësimet.

Televizorët LCD përdorin një lloj tjetër memorie (memorie flash). Unë kam folur tashmë për mënyrën e ndezjes së kujtesës së një TV LCD. Nëse dikush është i interesuar, hidhini një sy.

Për shkak të nevojës për të punuar me mikroqarqet e serisë 24Cxx, më duhej të "përfundoja" programuesin. Unë nuk gdheva një tabelë të re qark të printuar, thjesht shtova elementët e nevojshëm në tabelën e qarkut të printuar. Kjo është ajo që ndodhi.

Bërthama e pajisjes është një mikrokontrollues PIC18F2550-I/SP.

Ky është i vetmi çip në pajisje. MK PIC18F2550 duhet të "flash". Ky operacion i thjeshtë shkakton konfuzion për shumë njerëz, pasi lind i ashtuquajturi problem "pule dhe vezë". Do t'ju tregoj se si e zgjidha pak më vonë.

Lista e pjesëve për montimin e programuesit. Në versionin celular, tërhiqeni tabelën majtas (rrëshqitni majtas-djathtas) për të parë të gjitha kolonat e saj.

Emri Emërtimi Vlerësimi/Parametrat Lloji i markës ose artikullit
Për pjesën kryesore të programuesit
Mikrokontrollues DD1 Mikrokontrollues 8-bit PIC18F2550-I/SP
Tranzistorë bipolarë VT1, VT2, VT3 KT3102
VT4 KT361
Diodë VD1 KD522, 1N4148
Diodë Schottky VD2 1N5817
LED HL1, HL2 çdo 3 volt, e kuqe Dhe jeshile ngjyrat e shkëlqimit
Rezistenca R1, R2 300 Ohm
R3 22 kOhm
R4 1 kOhm
R5, R6, R12 10 kOhm
R7, R8, R14 100 Ohm
R9, R10, R15, R16 4.7 kOhm
R11 2.7 kOhm
R13 100 kOhm
Kondensatorë C2 0,1 μ K10-17 (qeramike), analoge të importuara
C3 0.47 mikron
Kondensatorë elektrolitikë C1 100uF * 6.3V K50-6, analoge të importuara
C4 47 uF * 16 V
Induktor (mbytje) L1 680 µH Lloji i unifikuar EC24, CECL ose shtëpiak
Rezonator kuarci ZQ1 20 MHz
Prizë USB XS1 lloji USB-BF
kërcyes XT1 çdo lloj "jumper"
Për panelin e instalimit të mikrokontrolluesit (MK)
Paneli ZIF XS1 çdo panel ZIF me 40 kunja
Rezistenca R1 2 kOhm MLT, MON (fuqi nga 0,125 W e lart), analoge të importuara
R2, R3, R4, R5, R6 10 kOhm

Tani pak për detajet dhe qëllimin e tyre.

E gjelbër LED HL1 ndizet kur energjia aplikohet te programuesi dhe e kuqe LED HL2 lëshon kur të dhënat transferohen midis kompjuterit dhe programuesit.

Për t'i dhënë pajisjes shkathtësi dhe besueshmëri, përdoret një fole USB e tipit XS1 "B" (katrore). Kompjuteri përdor një prizë USB të tipit A. Prandaj, është e pamundur të përzieni prizat e kabllit lidhës. Kjo zgjidhje gjithashtu kontribuon në besueshmërinë e pajisjes. Nëse kablloja bëhet e papërdorshme, ajo mund të zëvendësohet lehtësisht me një të re pa iu drejtuar punimeve të bashkimit ose instalimit.

Si një induktor L1 680 µH, është më mirë të përdorni një të gatshëm (për shembull, llojet EC24 ose CECL). Por nëse nuk mund të gjeni një produkt të përfunduar, mund ta bëni vetë mbytjen. Për ta bërë këtë, duhet të mbështillni 250 - 300 rrotullime të telit PEL-0.1 në një bërthamë ferriti nga një induktor i tipit CW68. Vlen të merret në konsideratë që për shkak të pranisë së PWM me reagime, nuk ka nevojë të shqetësoheni për saktësinë e vlerësimit të induktivitetit.

Tensioni për programimin e tensionit të lartë (Vpp) nga +8,5 në 14 volt krijohet nga rregullatori kryesor. Ai përfshin elementët VT1, VD1, L1, C4, R4, R10, R11. Impulset PWM dërgohen nga pini 12 i PIC18F2550 në bazën VT1. Reagimi ofrohet nga ndarësi R10, R11.

Për të mbrojtur elementët e qarkut nga voltazhi i kundërt nga linjat e programimit kur përdorni një programues USB në modalitetin ICSP (Programimi serial në qark), përdoret një diodë VD2. VD2 është një diodë Schottky. Duhet të zgjidhet me një rënie të tensionit në kryqëzimin P-N prej jo më shumë se 0,45 volt. Gjithashtu, dioda VD2 mbron elementët nga tensioni i kundërt kur programuesi përdoret në modalitetin e konvertimit USB-UART dhe të analizuesit logjik.

Kur përdorni programuesin ekskluzivisht për programimin e mikrokontrolluesve në panel (pa përdorur ICSP), mund të eliminoni plotësisht diodën VD2 (kjo është ajo që bëra unë) dhe në vend të kësaj të instaloni një kërcyes.

Kompaktësia e pajisjes është bërë nga paneli universal ZIF (Zero Insertion Force - me zero përpjekje instalimi).

Falë tij, ju mund të "lidhni" një mikrokontrollues në pothuajse çdo paketë DIP.

Diagrami "Paneli i instalimit të mikrokontrolluesit (MK)" tregon se si duhet të instalohen në panel mikrokontrolluesit me strehë të ndryshme. Kur instaloni MK, duhet t'i kushtoni vëmendje faktit që mikrokontrolluesi në panel është i pozicionuar në mënyrë që çelësi në çip të jetë në anën e levës së kyçjes së panelit ZIF.

Kështu duhet të instaloni mikrokontrolluesit me 18 pin (PIC16F84A, PIC16F628A, etj.).

Dhe këtu janë mikrokontrolluesit me 8 pin (PIC12F675, PIC12F629, etj.).

Nëse keni nevojë të ndezni një mikrokontrollues në një paketë të montimit në sipërfaqe (SOIC), mund të përdorni një përshtatës ose thjesht të bashkoni 5 kunja në mikrokontrollues që zakonisht kërkohen për programim (Vpp, Clock, Data, Vcc, GND).

Vizatimin e përfunduar të tabelës së qarkut të printuar me të gjitha ndryshimet mund ta gjeni në lidhjen në fund të artikullit. Duke hapur skedarin në programin Sprint Layout 5.0, duke përdorur modalitetin "Print", jo vetëm që mund të printoni një shtresë me një model të përçuesve të printuar, por edhe të shikoni pozicionimin e elementeve në bordin e qarkut të printuar. Kushtojini vëmendje kërcyesit të izoluar që lidh pinin 6 të DD1 dhe pinin 21 të panelit ZIF. Ju duhet të printoni vizatimin e tabelës në imazhin e pasqyrës.

Ju mund të bëni një tabelë qark të shtypur duke përdorur metodën LUT, si dhe një shënues për bordet e qarkut të shtypur, duke përdorur tsaponlak (kjo është ajo që bëra) ose metodën "laps".

Këtu është një fotografi e pozicionimit të elementeve në një tabelë të qarkut të printuar (e klikueshme).

Gjatë instalimit, hapi i parë është bashkimi i kërcyesve të bërë nga tela bakri të konservuar, më pas instalimi i elementeve të profilit të ulët (rezistorët, kondensatorët, kuarci, lidhësi i pinit ISCP), pastaj transistorët dhe një MK e programuar. Hapi i fundit është instalimi i panelit ZIF, priza USB dhe mbyllja e telave në izolim (jumpers).

"Firmware" i mikrokontrolluesit PIC18F2550.

Skedari i firmuerit - PK2V023200.heks ju duhet të shkruani PIC18F2550I-SP MK në memorie duke përdorur çdo programues që mbështet mikrokontrolluesit PIC (për shembull, Extra-PIC). Kam përdorur programuesin JDM JONIC PROG dhe programin WinPic800.

Mund të ngarkoni firmuerin në PIC18F2550 MCU duke përdorur të njëjtin programues të pronarit PICkit2 ose versionin e tij të ri PICkit3. Natyrisht, ju mund ta bëni këtë me një PICkit-2 Lite të bërë në shtëpi, nëse një nga miqtë tuaj arriti ta montojë atë para jush :).

Vlen gjithashtu të dihet se "firmware" i mikrokontrolluesit PIC18F2550-I/SP (skedari PK2V023200.heks) shkruhet kur instaloni programin PICkit 2 Programmer në një dosje së bashku me skedarët e vetë programit. Vendndodhja e përafërt e skedarit PK2V023200.hex - "C:\Program Files (x86)\Microchip\PICkit 2 v2\PK2V023200.hex" . Për ata që kanë një version 32-bit të Windows të instaluar në kompjuterin e tyre, shtegu i vendndodhjes do të jetë i ndryshëm: "C:\Program Files\Microchip\PICkit 2 v2\PK2V023200.hex" .

Epo, nëse nuk mund ta zgjidhnit problemin "pulë dhe vezë" duke përdorur metodat e propozuara, atëherë mund të blini një programues të gatshëm PICkit3 në faqen e internetit të AliExpress. Aty kushton shumë më lirë. Kam shkruar se si të blej pjesë dhe komplete elektronike në AliExpress.

Përditësimi i firmuerit të programuesit.

Progresi nuk qëndron ende dhe herë pas here Microchip lëshon përditësime për softuerin e tij, duke përfshirë programuesin PICkit2, PICkit3. Natyrisht, ne gjithashtu mund të përditësojmë programin e kontrollit të PICkit-2 Lite tonë të bërë në shtëpi. Për ta bërë këtë do t'ju duhet programi PICkit2 Programmer. Çfarë është dhe si ta përdorni - pak më vonë. Ndërkohë, disa fjalë për atë që duhet bërë për të përditësuar firmuerin.

Për të përditësuar softuerin e programuesit, duhet të mbyllni kërcyesin XT1 në programues kur ai shkëputet nga kompjuteri. Më pas lidhni programuesin me PC-në dhe hapni programuesin PICkit2. Kur XT1 është i mbyllur, modaliteti aktivizohet bootloader për të shkarkuar versionin e ri të firmuerit. Më pas në Programuesin PICkit2, përmes menysë "Vegla" - "Shkarko Sistemin Operativ të PICkit 2", hapni skedarin hex të përgatitur më parë të firmuerit të përditësuar. Më pas, do të ndodhë procesi i përditësimit të softuerit të programuesit.

Pas përditësimit, duhet të shkëputni programuesin nga kompjuteri dhe të hiqni kërcyesin XT1. Në modalitetin normal, kërcyesi është i hapur. Mund ta zbuloni versionin e softuerit të programuesit përmes menusë "Ndihmë" - "Rreth" në programin PICkit2 Programmer.

E gjitha kjo ka të bëjë me çështje teknike. Dhe tani në lidhje me softuerin.

Puna me programuesin. Programues PICkit2.

Për të punuar me programuesin USB, do të na duhet të instalojmë programin PICkit2 Programmer në kompjuter. Ky program special ka një ndërfaqe të thjeshtë, është i lehtë për t'u instaluar dhe nuk kërkon konfigurim të veçantë. Vlen të përmendet se ju mund të punoni me programuesin duke përdorur mjedisin e zhvillimit MPLAB IDE, por për të ndezur / fshirë / lexuar MK, mjafton një program i thjeshtë - Programuesi PICkit2. Unë rekomandoj.

Pas instalimit të programit PICkit2 Programmer, lidhni programuesin USB të montuar me kompjuterin. Në të njëjtën kohë do të ndizet jeshile LED ("fuqi"), dhe sistemi operativ e njeh pajisjen si "Programuesi i mikrokontrolluesit PICkit2" dhe instaloni drejtuesit.

Hapni programin PICkit2 Programmer. Një mbishkrim duhet të shfaqet në dritaren e programit.

Nëse programuesi nuk është i lidhur, dritarja e programit do të shfaqë një mesazh të frikshëm dhe udhëzime të shkurtra "Çfarë duhet të bëni?" në Anglisht.

Nëse programuesi është i lidhur me një kompjuter me një MK të instaluar, programi do ta zbulojë atë kur të lansohet dhe do të na njoftojë për të në dritaren e Programuesit PICkit2.

urime! Hapi i parë është hedhur. Dhe unë fola për mënyrën e përdorimit të programit PICkit2 Programmer në një artikull të veçantë. Hapi tjeter .

Skedarët e kërkuar:

    Manuali i Përdoruesit PICkit2 (rusisht) take or.

Me zhvillimin e teknologjisë kompjuterike, çdo herë ka gjithnjë e më pak kompjuterë të pajisur me porte COM dhe LPT. Kjo, nga ana tjetër, shkakton vështirësi, veçanërisht për amatorët e radios, të lidhura me çiftimin e mjeteve të programimit të mikrokontrolluesve me një kompjuter personal.

Ky artikull përshkruan një programues USB për mikrokontrolluesit AVR, të cilin mund ta montoni vetë. Është ndërtuar mbi një mikrokontrollues Atmega8 dhe është i aftë të funksionojë nga lidhësi USB i një kompjuteri. Ky programues është i pajtueshëm me STK500 v2.

Përshkrimi i programuesit USB

Programuesi USB është i ndërtuar në një tabelë të bërë nga tekstil me fije qelqi me fletë të njëanshme. Ka 2 kërcyes në tabelë: njëri ndodhet nën lidhësin SPI, kërcyesi i dytë ndodhet afër të njëjtit lidhës.

Pasi të jenë vulosur të gjitha pjesët, duhet të ndezni mikrokontrolluesin Atmega8 me firmware-in e dhënë në fund të artikullit. Siguresat që duhet të vendosen gjatë programimit të mikrokontrolluesit Atmega8 duhet të duken kështu:

  • SUT1 = 0
  • KËZMEZ1 = 0
  • BOOTSZ0 = 0
  • CKOPT = 0
  • SPIEN = 0

Duhet të kujtojmë se në disa programe cilësimet e siguresave vendosen në drejtim të kundërt me këtë. Për shembull, në programin CodeVisionAVR duhet të kontrolloni kutitë pranë siguresave të lartpërmendura dhe në programin PonyProg anasjelltas.

Programimi i Atmega8 përmes portit LPT të një kompjuteri

Mënyra më e shpejtë dhe më e lirë për të programuar Atmega8 është përdorimi i një programuesi LPT për AVR. Një diagram i ngjashëm është paraqitur më poshtë.

Mikrokontrolluesi mundësohet nga një rregullator i thjeshtë i tensionit 78L05. Ju mund të përdorni programin UniProf si një guaskë programimi.

Kur ndizni për herë të parë programin dhe kur kontrolluesi nuk është i lidhur, duke shtypur butonin "LPTpins", duhet të konfiguroni kunjat e portit LPT si më poshtë:

Kur fillon UniProf, ai automatikisht përcakton llojin e mikrokontrolluesit. Ne ngarkojmë firmuerin Atmega8_USB_prog.hex në memorien UniProf dhe refuzojmë lidhjen e skedarit EEPROM.

I vendosim siguresat si më poshtë (për programin UniProF) duke shtypur butonin "FUSE":

Për të kujtuar cilësimet, shtypni të tre butonat "Write". Më pas duke klikuar në “Erase” ne fillimisht pastrojmë kujtesën e mikrokontrolluesit që ndizet. Pas kësaj, klikoni në "Prog" dhe prisni që firmware të përfundojë.

Vendosja e një programuesi USB

Pasi mikrokontrolluesi ynë të ndizet, ai duhet të instalohet në bordin e programuesit USB. Tjetra, ne e lidhim programuesin me portën USB të kompjuterit, por nuk furnizojmë ende energji.

Cilësimi i portit:

Konfigurimi i terminalit:

Cilësimi ASCII:

Tani, pasi të kenë përfunduar të gjitha procedurat, ne furnizojmë me energji programuesin USB. LED HL1 duhet të pulsojë 6 herë dhe më pas të qëndrojë i ndezur.

Për të kontrolluar lidhjen midis programuesit USB dhe kompjuterit, shtypni tastin "Enter" 2 herë në programin HyperTerminal. Nëse gjithçka është në rregull, duhet të shohim foton e mëposhtme:

Nëse nuk është kështu, kontrolloni përsëri instalimin, veçanërisht linjën TxD.

Tjetra, ne futemi në versionin 2.10 të programuesit, pasi pa këtë programuesi nuk do të punojë me programe "të nivelit të lartë". Për ta bërë këtë, futni "2" dhe shtypni "Enter", shkruani "a" (anglisht) dhe shtypni "Enter".

Programuesi USB është në gjendje të njohë lidhjen e një mikrokontrollues të programueshëm. Kjo bëhet në formën e monitorimit të "tërheqjes" së sinjalit të rivendosjes në burimin e energjisë. Ky modalitet aktivizohet dhe fiket si më poshtë:

  • "0", "Enter" - modaliteti është i çaktivizuar.
  • "1", "Enter" - modaliteti është aktivizuar.

Ndryshimi i shpejtësisë së programimit (1 MHz):

  • "0", "Enter" - shpejtësia maksimale.
  • "1", "Enter" - shpejtësi e reduktuar.

Kjo përfundon punën përgatitore, tani mund të provoni të ndezni një mikrokontrollues.

(shkarkime: 1203)

Një ditë vendosa të montoj një matës të thjeshtë LC për pic16f628a dhe natyrisht që duhej të ndezej me diçka. Dikur kisha një kompjuter me një portë fizike COM, por tani kam vetëm USB dhe një pllakë pci-lpt-2com. Për të filluar, unë mblodha një programues të thjeshtë JDM, por siç doli, ai nuk donte të punonte as me bordin pci-lpt-com dhe as me përshtatësin usb-com (tension i ulët i sinjaleve RS-232). Pastaj nxitova të kërkoja programues të fotografive usb, por atje, siç doli, gjithçka ishte e kufizuar në përdorimin e pic18f2550/4550 të shtrenjtë, të cilin natyrisht nuk e kisha, dhe është për të ardhur keq të përdor MK kaq të shtrenjta nëse unë jam shumë rrallë bëj ndonjë gjë në maksimum (preferoj av- Po, ndezja e tyre nuk është problem, janë shumë më të lira dhe më duket se është më e lehtë të shkruash programe në to). Pasi hulumtoi për një kohë të gjatë në internet në një nga artikujt e shumtë në lidhje me programuesin EXTRA-PIC dhe variantet e tij të ndryshme, një nga autorët shkroi se ekstrapiku funksionon me çdo port com dhe madje edhe një përshtatës usb-com.

Qarku i këtij programuesi përdor një konvertues të nivelit logjik max232.

Mendova se nëse përdorni një përshtatës usb, do të ishte shumë marrëzi të ktheni USB-në në usart TTL, TTL në RS232, RS232 përsëri në nivelet TTL dy herë, nëse mund të merrni vetëm sinjalet TTL të portit RS232 nga USB- çipi i konvertuesit usart.

Kështu bëra. Mora çipin CH340G (i cili ka të 8 sinjalet e portit com) dhe e lidha në vend të max232. Dhe kjo është ajo që ndodhi.

Në qarkun tim ka një kërcyes jp1, i cili nuk është në kulmin shtesë, e instalova sepse nuk e dija se si do të sillej dalja TX në nivelin TTL, kështu që bëra të mundur përmbysjen e tij në NAND-in e mbetur të lirë. element dhe, siç doli, ishte e drejtë që ekziston një logjik në pinin TX, dhe për këtë arsye ka 12 volt në pinin VPP kur ndizet, por asgjë nuk do të ndodhë gjatë programimit (megjithëse mund ta përmbysni TX në softuer) .

Pas montimit të tabelës, ishte koha për testim. Dhe këtu erdhi zhgënjimi kryesor. Programuesi u identifikua menjëherë (me programin ic-prog) dhe filloi punën, por shumë ngadalë! Në parim - siç pritej. Pastaj në cilësimet e portit com vendosa shpejtësinë maksimale (128 kilobaud) dhe fillova të testoj të gjitha programet e gjetura për JDM. Si rezultat, PicPgm doli të ishte më i shpejti. pic16f628a ime u ndez plotësisht (hex, eeprom dhe konfigurim) plus verifikimin për rreth 4-6 minuta (leximi është më i ngadalshëm se shkrimi). IcProg gjithashtu funksionon, por më ngadalë. Nuk kishte gabime programimi. Unë gjithashtu u përpoqa të ndez eeprom 24c08, rezultati është i njëjtë - gjithçka qep, por shumë ngadalë.

Përfundime: programuesi është mjaft i thjeshtë, nuk përmban pjesë të shtrenjta (CH340 - 0,3-0,5 $, k1533la3 në përgjithësi mund të gjendet në mesin e mbeturinave të radios), funksionon në çdo kompjuter, laptop (dhe madje mund të përdorni tableta në Windows 8/10 ). Kundër: është shumë i ngadaltë. Kërkon gjithashtu fuqi të jashtme për sinjalin VPP. Si rezultat, më dukej se për ndezje të rrallë të majave, ky është një opsion i lehtë për t'u përsëritur dhe i lirë për ata që nuk kanë një kompjuter të lashtë me portat e nevojshme në dorë.

Këtu është një foto e pajisjes së përfunduar:

Siç thotë kënga, "Unë e bëra atë nga ajo që ishte". Seti i pjesëve është shumë i larmishëm: si SMD ashtu edhe DIP.

Për ata që guxojnë të përsërisin qarkun, pothuajse çdo do të jetë i përshtatshëm si një konvertues usb-uart (ft232, pl2303, cp2101, etj.), Në ​​vend të k1533la3, k555 do të jetë i përshtatshëm, mendoj se edhe seria k155 ose një analog i huaj 74als00, mund të funksionojë edhe me elementë logjik NOT të tipit k1533ln1. Unë jam duke bashkangjitur tabelën time të qarkut të printuar, por kushdo mund të rivizatojë instalimet elektrike atje për elementët që ishin në dispozicion.

Lista e radioelementeve

Emërtimi Lloji Emërtimi sasi shënimDyqanblloku im i shënimeve
IC1 ÇipCH340G1 Në bllokun e shënimeve
IC2 ÇipK1533LA31 Në bllokun e shënimeve
VR1 Rregullator linear

LM7812

1 Në bllokun e shënimeve
VR2 Rregullator linear

LM7805

1 Në bllokun e shënimeve
VT1 Tranzistor bipolar

KT502E

1 Në bllokun e shënimeve
VT2 Tranzistor bipolar

KT3102E

1 Në bllokun e shënimeve
VD1-VD3 Diodë ndreqës

1N4148

2 Në bllokun e shënimeve
C1, C2, C5-C7 Kondensator100 nF5 Në bllokun e shënimeve
C3, C4 Kondensator22 pF2 Në bllokun e shënimeve
HL1-HL4 Diodë që lëshon dritëÇdo4 Në bllokun e shënimeve
R1, R3, R4 Rezistencë

1 kOhm

3
22 shtator 2011 në orën 08:11

Programues USB në miniaturë për mikrokontrolluesit AVR

  • Programimi i mikrokontrolluesit

Ashtu si një teatër fillon me një varëse rrobash, po ashtu programimi i mikrokontrolluesve fillon me zgjedhjen e një programuesi të mirë. Meqenëse po filloj të zotëroj mikrokontrolluesit nga ATMEL, më duhej të njihesha plotësisht me atë që ofrojnë prodhuesit. Ato ofrojnë shumë gjëra interesante dhe të shijshme, vetëm me çmime të tepruara. Për shembull, një shall me një mikrokontrollues me njëzet këmbë me një palë rezistenca dhe dioda si parzmore kushton si një "aeroplan". Prandaj, lindi çështja e vetë-montimit të programuesit. Pas një studimi të gjatë të zhvillimeve të radio amatorëve me përvojë, u vendos që të mblidhej një programues i provuar USBASP, truri i të cilit është mikrokontrolluesi Atmega8 (ekzistojnë gjithashtu opsione firmware për atmega88 dhe atmega48). Lidhja minimale e mikrokontrolluesit ju lejon të montoni një programues mjaft miniaturë që mund ta merrni gjithmonë me vete, si një flash drive.

Autori i këtij programuesi është gjermani Thomas Fichl, faqja e tij e zhvillimit me diagrame, skedarë të bordit të qarkut të printuar dhe drejtues.
Pasi u vendos për të mbledhur një programues në miniaturë, unë rivizova qarkun për mikrokontrolluesin Atmega8 në paketën TQFP32 (pika e mikrokontrolluesit ndryshon nga pika kryesore në paketën DIP):

Jumper J1 përdoret nëse është e nevojshme të ndezni një mikrokontrollues me një frekuencë të orës nën 1.5 MHz. Nga rruga, ky kërcyes mund të eliminohet fare duke vendosur këmbën e 25-të të MK në tokë. Atëherë programuesi do të funksionojë gjithmonë me një frekuencë të reduktuar. Personalisht, vura re se programimi me një shpejtësi të reduktuar kërkon një pjesë të sekondës më shumë, dhe për këtë arsye tani nuk e tërheq kërcyesin, por qep vazhdimisht me të.
Diodat Zener D1 dhe D2 përdoren për të përputhur nivelet midis programuesit dhe autobusit USB; do të funksionojë pa to, por jo në të gjithë kompjuterët.
LED blu tregon që qarku është gati për t'u programuar; LED i kuq ndizet gjatë programimit. Kontaktet e programimit janë të vendosura në lidhësin IDC-06, pinout përputhet me standardin ATMEL për një lidhës ISP me 6 pin:

Ky lidhës përmban kontakte për fuqizimin e pajisjeve të programueshme; këtu ai merret direkt nga porta USB e kompjuterit, ndaj duhet të jeni të kujdesshëm dhe të shmangni qarqet e shkurtra. I njëjti lidhës përdoret gjithashtu për programimin e mikrokontrolluesit të kontrollit; për ta bërë këtë, thjesht lidhni kunjat e Reset në lidhës dhe në mikrokontrollues (shihni vijën e kuqe me pika në diagram). Në qarkun e autorit, kjo bëhet me një kërcyes, por unë nuk e ngatërrova tabelën dhe e hoqa. Për një firmware të vetëm, do të mjaftojë një kërcyes i thjeshtë me tela. Bordi doli të ishte i dyanshëm, me përmasa 45x18 mm.

Lidhësi i programimit dhe një kërcyes për të zvogëluar shpejtësinë e programuesit janë të vendosura në fund të pajisjes, kjo është shumë e përshtatshme

Firmware i mikrokontrolluesit të kontrollit
Pra, pas montimit të pajisjes, gjëja më e rëndësishme që mbetet është ndezja e mikrokontrolluesit të kontrollit. Miqtë që kanë ende kompjuterë me një port LPT janë të përshtatshëm për këto qëllime :) Programuesi më i thjeshtë me pesë tela për AVR
Mikrokontrolluesi mund të ndizet nga lidhësi i programimit duke lidhur kunjat e rivendosjes së mikrokontrolluesit (29 këmbë) dhe lidhësin. Firmware ekziston për modelet Atmega48, Atmega8 dhe Atmega88. Këshillohet të përdorni një nga dy gurët e fundit, pasi mbështetja për versionin Atmega48 është ndërprerë dhe versioni më i fundit i firmuerit daton në 2009. Dhe versionet për gurët e 8-të dhe të 88-të përditësohen vazhdimisht, dhe autori duket se po planifikon të shtojë një korrigjues në qark në funksionalitet. Firmware-in e marrim nga faqja gjermane. Për të ngarkuar programin e kontrollit në mikrokontrollues, përdora programin PonyProg. Kur programoni, është e nevojshme të vendosni kristalin të funksionojë nga një burim i jashtëm i orës në 12 MHz. Pamja e ekranit të programit me cilësimet e bluzës së siguresave në PonyProg:

Pas ndezjes së firmuerit, LED i lidhur me këmbën 23 të mikrokontrolluesit duhet të ndizet. Kjo do të jetë një shenjë e sigurt se programuesi është programuar me sukses dhe është gati për përdorim.

Instalimi i shoferit
Instalimi u krye në një makinë me Windows 7 dhe nuk u shfaq asnjë problem. Kur lidheni me kompjuterin tuaj për herë të parë, do të shfaqet një mesazh që tregon se është zbuluar një pajisje e re, duke ju kërkuar të instaloni një drejtues. Zgjidhni instalimin nga vendi i specifikuar:

Një dritare do të shfaqet menjëherë me një paralajmërim se drejtuesi që instalohet nuk ka një nënshkrim dixhital për ato të vogla të buta:

Ne e shpërfillim paralajmërimin dhe vazhdojmë instalimin, pas një pauze të shkurtër do të shfaqet një dritare që na informon se operacioni i instalimit të shoferit ka përfunduar me sukses

Kjo është e gjitha, programuesi tani është gati për përdorim.

Programues Khazama AVR
Për të punuar me programuesin, zgjodha ndezësin Khazama AVR Programmer. Një program i mrekullueshëm me një ndërfaqe minimaliste.

Ai funksionon me të gjithë mikrokontrolluesit e njohur AVR, ju lejon të ndezni flashin dhe eeprom, të shikoni përmbajtjen e kujtesës, të fshini çipin dhe gjithashtu të ndryshoni konfigurimin e pjesëve të siguresave. Në përgjithësi, një grup plotësisht standard. Vendosja e siguresave kryhet duke zgjedhur burimin e orës nga lista rënëse, kështu që gjasat e kyçjes së kristalit gabimisht zvogëlohen ndjeshëm. Siguresat mund të ndryshohen gjithashtu duke vendosur kutitë e kontrollit në fushën e poshtme, por nuk mund të vendosni kuti kontrolli në një konfigurim joekzistent dhe ky është gjithashtu një plus i madh përsa i përket sigurisë.

Siguresat shkruhen në memorien MK, siç mund ta merrni me mend, duke shtypur butonin Shkruaj të gjitha. Butoni Save ruan konfigurimin aktual dhe butoni Load kthen atë të ruajtur. Vërtetë, nuk mund të gjeja një përdorim praktik për këto butona. Butoni Default është krijuar për të regjistruar konfigurimin standard të siguresave, atë me të cilin mikrokontrolluesit vijnë nga fabrika (zakonisht 1 MHz nga RC e brendshme).
Në përgjithësi, gjatë gjithë kohës që kam përdorur këtë programues, ai është treguar më i miri për sa i përket stabilitetit dhe shpejtësisë së funksionimit. Ai funksionoi pa probleme si në një kompjuter desktop të lashtë ashtu edhe në një laptop të ri.

Mund ta shkarkoni skedarin PCB në SprintLayout duke përdorur