Kaj je pomnilniški čip in kako programirati mikrovezja. Programiranje mikrokontrolerjev za začetnike: enostavno in cenovno ugodno Reprogramiranje kartuš


Tema elektronskega oblikovanja postaja vse bolj priljubljena. Predstavljamo vam članek, ki vam bo povedal o mikrokrmilnikih za začetnike.

Kateri mikrokontrolerji obstajajo?

Najprej je treba orisati situacijo z mikrokontrolerji. Dejstvo je, da jih ne proizvaja eno podjetje, ampak več hkrati, zato obstaja veliko različnih mikrokontrolerjev, ki imajo različne parametre, različne funkcije pri uporabi in različne zmogljivosti. Razlikujejo se po hitrosti, dodatnih vmesnikih in številu pinov. Najbolj priljubljeni po vsej nekdanji ZSSR so predstavniki RIS in AVR. Programiranje mikrokontrolerjev AVR in PIC ni težko, kar je zagotovilo njune priljubljenosti.

Kako se programirajo mikrokontrolerji?

Programiranje mikrokontrolerjev se praviloma izvaja s posebnimi napravami, imenovanimi programatorji. Programatorji so lahko kupljeni ali doma narejeni. Toda pri utripanju mikrokrmilnika z domačim programatorjem je verjetnost, da se bo spremenil v "opeko", precej velika. Obstaja še ena možnost, ki jo je mogoče upoštevati z uporabo plošče Arduino kot primera. Plošča deluje na mikrokrmilniku Atmel in se uporablja za programiranje mikrokrmilnikov AVR. Plošča ima že vnaprej flešnirani zagonski nalagalnik in USB priključek, ki omogočata varno flešovanje mikrokontrolerja v uporabi, ne da bi uporabniku omogočili dostop do podatkov, ki bi lahko poškodovali ta isti mikrokrmilnik. Programiranje mikrokontrolerjev za začetnike ni tako težko, kot se morda zdi, in z nekaj spretnosti in inteligence vas bo rešilo potrebe po novem mehanizmu.

Razlike v strojni opremi med različnimi mikrokontrolerji

Pri izbiri mikrokontrolerjev bodite pozorni na nekatere razlike v strojni opremi, tudi ne pri različnih podjetjih, ampak tudi v istem modelnem obsegu. Najprej morate biti pozorni na možnost prepisovanja informacij v mikrokrmilnik. Ta funkcija vam bo omogočila, da dolgo časa eksperimentirate z enim MK. Bodite pozorni tudi na število žebljičkov z njihovim namenom. Ne zanemarjajte delovne frekvence kristala, na katerem deluje vezje: od tega je odvisno število operacij na sekundo, ki jih lahko izvede mikrokrmilnik. Pri preučevanju teh lastnosti, pa tudi pomnilnika MK, se sprva morda zdi, da na mikrokontrolerjih ni mogoče storiti nič pomembnega, vendar je to napačno mnenje. Ne pozabite, da programiranje mikrokrmilnikov za začetnike na začetku ne zahteva najboljše opreme, lahko pa imate v rezervi kaj zmogljivejšega.

Programski jeziki mikrokontrolerjev

Za programiranje mikrokontrolerjev se uporabljata dva jezika: C/C++ in asembler. Vsak od njih ima svoje prednosti in slabosti. Torej, če govorimo o asemblerju, potem vam omogoča, da naredite vse zelo subtilno in učinkovito, to je še posebej pomembno, ko ni dovolj RAM-a ali delovne moči (kar pa se zgodi zelo redko). Toda njegovo preučevanje in pisanje programov na njem zahteva kar nekaj truda, točnosti in časa. Zato se za razvoj na osnovi mikrokontrolerjev pogosto uporabljata programska jezika C in C++. So bolj razumljivi, po videzu in strukturi so blizu človeškemu govoru, čeprav ga ne predstavljajo v popolnem razumevanju. Imajo tudi zelo dobro razvito funkcionalnost, ki zlahka komunicira s strojno opremo, če si predstavlja le programski element. Kljub vsem očitnim prednostim so v C in C++ ustvarjeni obsežnejši programi kot v asemblerju.

Tudi v nekaterih primerih, ko je uporabljeni operativni prostor kritičen, je mogoče te jezike združiti. Skoraj vsa razvojna okolja za C in C++ imajo možnost namestitve asemblerskih vstavkov v program. Če se torej pojavi težava na kritičnem področju, lahko napišete montažni vložek in ga integrirate v firmware za mikrokrmilnik, sam firmware oziroma večji del pa lahko napišete v C ali C++. Programiranje mikrokontrolerjev v SI je lažje, zato se veliko ljudi odloča za te jezike. Toda tisti, ki se ne bojijo težav in želijo razumeti posebnosti delovanja opreme, se lahko preizkusijo v montažnem jeziku.

Ločilne besede

Če želite eksperimentirati z odličnim. Svetujemo vam le, da ste potrpežljivi in ​​vztrajni, potem pa se bodo vsi cilji, ki si jih je zastavil izumitelj, izkazali za izvedljive. Programiranje mikrokontrolerjev za začetnike in za izkušene je videti drugače: kar je za začetnike težko, je za izkušene rutina. Glavna stvar je vedeti, da je vse, kar ni v nasprotju z zakoni fizike, izvedljivo in rešljivo.

Potreba po registraciji ključa v imobilizatorju se lahko pojavi zaradi njegove zamenjave z novim. Za dokončanje naloge boste morali ponovno programirati ključ z uporabo originalnega čipa.

[Skrij]

V katerih primerih je potrebno reprogramiranje ključa?

Razlogi, zakaj morate registrirati ključ, so lahko različni:

  • ključ je obrabljen in poškodovan, zaradi česar je delovanje avtomobila nestabilno;
  • potrebno je bilo narediti dvojnik za družinske člane;
  • krmilna enota motorja je poškodovana;
  • Modul za vžig avtomobila je poškodovan.

Na koga se obrniti za registracijo ključa s čipom imobilizatorja

Če obstaja razlog za registracijo ključa v imobilizatorju, se lahko obrnete na servisni center ali opravite nalogo sami.

Če je avto v garancijskem servisu, je treba ključ registrirati v pomnilnik immo samo v servisnem centru.

Kako sami registrirati nov ključ

Registracija novega ključa se izvede s čip ključem, ki mora biti shranjen na varnem in zaščitenem mestu. Preden izvedete postopek reprogramiranja, morate imeti v rezervoarju približno 10 litrov goriva.

Algoritem dejanj

Ključ registriramo po naslednjem vrstnem redu:

  1. Najprej morate zapreti vsa vrata avtomobila, nato vključiti kontakt s čip ključem in počakati vsaj 10 sekund.
  2. Izklopite vžig. Če ikone na armaturni plošči utripajo vsakih 5 sekund, programiranje poteka pravilno.
  3. Pri izklopljenem kontaktu v 5 sekundah odstranite čip in namestite nov ključ za nadaljnje programiranje. V tem trenutku se mora trikrat oglasiti zvočni signal.
  4. Počakajte 6 sekund, da brenčalo še 2-krat zapiska, nato pa morate izklopiti stikalo za vžig in izvleči nov ključ.
  5. Vstavite čip ključ in počakajte najprej na tri signale, po 6 sekundah pa še na dva.
  6. Odstranite ključ s čipom in počakajte 10 sekund, nato vstavite nov ključ in zaženite motor.
  7. Odpeljite se na testno vožnjo avtomobila.

Video prikazuje reprogramiranje ključa imobilizatorja domačega avtomobila, ki ga je posnel kanal Door Doctor.

Značilnosti programiranja in vezave ključa na imobilizator

Posebnosti programiranja ključev vključujejo dejstvo, da bo pri ključu imobilizatorja z enim gumbom vezava drugačna.

Za programiranje morate slediti tem korakom:

  1. Zaprite vsa vrata v avtu.
  2. Pritisnite in držite velik gumb, dokler dioda ne preneha utripati. Ko spustite tipko, mora indikator enakomerno svetiti.
  3. Ponovno pritisnite gumb. Dioda bi morala ugasniti.
  4. Voznik mora odpreti vrata in vstaviti ključ v kontakt.
  5. Pritisnite gumb na ključu v skladu z navodili za določeno znamko sistema.
  6. Aktivirajte vžig, počakajte vsaj 10 sekund in ga ugasnite.
  7. Po 5 sekundah mora biti obesek v delovnem stanju in shraniti vse položaje v pomnilnik.

Mikrokontrolerji so posebna vrsta čipov, ki se uporabljajo za krmiljenje različnih elektronskih naprav.

Uvod v mikrokontrolerje

To so miniaturni računalniki, katerih vse komponente (procesor, RAM, ROM) so nameščene na enem čipu. Od mikroprocesorjev se razlikujejo po prisotnosti časovnikov, krmilnikov, primerjalnikov in drugih perifernih naprav. Trenutno se v proizvodnji uporabljajo mikrokontrolerji:

  • senzorji za avtomobile;
  • igrače;
  • indikatorji napetosti, polnilniki;
  • nadzorne plošče;
  • miniaturne elektronske naprave.

Upravljanje se izvaja s posebnimi programi.

Začetnikom je priporočljivo, da začnejo obvladovati programiranje mikrokontrolerjev s preučevanjem arhitekture in sort. Industrija proizvaja naslednje vrste MK:

  • vgrajen;
  • 8-, 16- in 32-bitni;
  • procesorji digitalnih signalov.

Proizvajalci mikrokontrolerjev morajo nenehno balansirati med velikostjo, močjo in ceno izdelkov. Zato so 8-bitni modeli še vedno v uporabi. Imajo precej nizko produktivnost, vendar je v mnogih primerih to dejstvo prednost, ker omogoča varčevanje z energetskimi viri. Procesorji digitalnih signalov so sposobni obdelave velikih podatkovnih tokov v realnem času. Vendar pa so njihovi stroški veliko višji.

Število uporabljenih operacijskih kod morda ni enako. Zato se uporabljata sistema ukazov RISC in CISC. Prvi se šteje za zmanjšan in se izvede v enem taktu generatorja. To omogoča poenostavitev strojne izvedbe CPE in povečanje zmogljivosti čipa. CISC je kompleksen sistem, ki lahko znatno poveča učinkovitost naprave.

Nemogoče se je naučiti programiranja mikrokontrolerjev za začetnike brez razumevanja algoritmov. Ukazi so poslani v CPE čipa v določenem vrstnem redu. Poleg tega mora procesor nedvoumno zaznati njihovo strukturo. Zato najprej programer ustvari zaporedje izvajanja ukazov. CPU lahko prisilite, da takoj ustavi program s klicem prekinitve. V ta namen se uporabljajo zunanji signali ali vgrajene periferne naprave.

Družine mikrokontrolerjev

Najpogostejše družine mikrokontrolerjev so:

  • MSP430 (TI);
  • ARM (ARM Limited);
  • MCS 51 (INTEL);
  • STMB (STMicroelectronics);
  • PIC (Mikročip);
  • AVR (Atmel);
  • RL78 (Renesas Electronics).

Eden najbolj priljubljenih izdelkov v elektronski industriji so Atmelovi izdelki, zgrajeni na jedru RISC. Prva mikrovezja, razvita leta 1995, spadajo v skupino Classic. Začetnikom je priporočljivo, da se učijo programiranja mikrokontrolerjev AVR na sodobnejših modelih:

  • Mega je družina zmogljivih čipov z napredno arhitekturo.
  • Majhni - poceni izdelki z osmimi zatiči.

Ne smemo pozabiti, da se združljivost ukaznih sistemov ohrani le pri prenosu programa iz nizko zmogljivega mikrokrmilnika v močnejšega.

Izdelki Atmel so preprosti in razumljivi. Vendar pa boste morali za uporabo vseh funkcij razviti programsko opremo. Za začetnike je priporočljivo, da se programiranja mikrokontrolerjev AVR lotijo ​​s prenosom specializiranega okolja Atmel Studio. Trenutna različica je brezplačno na voljo na uradni spletni strani proizvajalca. Za razvoj programske opreme v tem okolju niso potrebne dodatne komponente programske opreme.

Kompleks Atmel Studio vključuje ogromno število primerov dokončanih projektov. To bo začetniku pomagalo hitro obvladati osnovne zmožnosti in začeti ustvarjati lastne programe. Ima tudi module za prevajanje in končno razhroščevanje kode. Vzporedno z njegovim razvojem morate študirati programske jezike. Brez njih programske opreme ni mogoče razviti.

Programski jeziki

Po svoji strukturi se programski jeziki mikrokontrolerjev malo razlikujejo od tistih, ki se uporabljajo za osebne računalnike. Med njimi so skupine nizke in visoke ravni. Sodobni programerji uporabljajo predvsem C/C++ in Assembly. Med privrženci teh jezikov potekajo neskončne razprave o tem, kateri je boljši.

Nizkonivojski asembler zadnje čase izgublja tla pod nogami. Uporablja neposredna navodila, naslovljena neposredno na čip. Zato se od programerja zahteva brezhibno poznavanje sistemskih ukazov procesorja. Pisanje programske opreme v Assembly zahteva veliko časa. Glavna prednost jezika je visoka hitrost izvajanja končnega programa.

Pravzaprav je mogoče uporabiti skoraj vsak programski jezik mikrokrmilnika. Toda najbolj priljubljen je C/C++. To je jezik na visoki ravni, ki vam omogoča delo z največjim udobjem. Poleg tega so ustvarjalci C sodelovali pri razvoju arhitekture AVR. Zato so čipi, ki jih proizvaja Atmel, prilagojeni posebej temu jeziku.

C/C++ je harmonična kombinacija zmožnosti nizke in visoke ravni. Zato je mogoče v kodo uvesti vstavke zbirnega jezika. Končni programski izdelek je enostaven za branje in spreminjanje. Hitrost razvoja je precej visoka. V tem primeru temeljita študija arhitekture MK in sistema ukazov CPU ni potrebna. Prevajalniki C so opremljeni s knjižnicami impresivne velikosti, kar programerju olajša delo.

Poudariti je treba, da je izbira optimalnega programskega jezika odvisna tudi od strojne opreme. Če imate majhno količino RAM-a, ni priporočljivo uporabljati C na visoki ravni. V tem primeru je Assembler bolj primeren. Zagotavlja maksimalno zmogljivost zaradi kratke programske kode. Univerzalnega programskega okolja ni, vendar lahko večina brezplačnih in komercialnih aplikacij uporablja tako Assembly kot C/C++.

mikrokontrolerji PIC

Prvi mikrokontrolerji PIC so se pojavili v drugi polovici prejšnjega stoletja. Microchipovi hitri 8-bitni čipi so takoj pridobili popularnost. Harvardska arhitektura z dvojnim vodilom zagotavlja hitrost brez primere. Razvit je bil na podlagi nabora registrov, za katerega je značilno ločevanje vodil.

Pri izbiri programskega jezika za mikrokontrolerje PIC je treba upoštevati, da družina mikrovezij temelji na edinstveni zasnovi procesorja RISC. Simetrični ukazni sistem omogoča poljubno izbiro načina naslavljanja in izvajanje operacij v poljubnem registru. Podjetje Microchip trenutno proizvaja 5 vrst MK, ki so združljive s programsko kodo:

  1. PIC18CXXX (75 ukazov, vgrajen sklad strojne opreme);
  2. PIC17CXXX (58 ukazov 16-bitni format);
  3. PIC16CXXX (35 ukazov, velik nabor perifernih naprav);
  4. PIC16C5X (33 navodil, 12-bitni format, paketi 18-28 pinov);
  5. PIC12CXXX (različice s 35 in 33 ukazi, integriran generator).

V večini primerov imajo PIC MCU-ji enkratni programabilni pomnilnik. Obstajajo dražji modeli z bliskavico ali ultravijoličnim izbrisom. Sortiment 500 izdelkov vam omogoča, da izberete izdelek za vsako nalogo. Zdaj se proizvajalec osredotoča na razvoj 32-bitnih različic s povečano zmogljivostjo pomnilnika.

Programska jezika za mikrokontrolerje PIC sta Assembler in C. Vsako integrirano razvojno okolje (IDE) je primerno za kodiranje. Programiranje z njimi je zelo priročno. Samodejno prevedejo besedilo programa v strojno kodo. Pomembna značilnost IDE je zmožnost postopnega simuliranja delovanja končane programske opreme. Priporočamo uporabo razvojnega okolja MPLAB. Ustvaril ga je Microchip.

Pred začetkom dela v MPLAB priporočamo, da vsakič ustvarite ločeno mapo. To je potrebno, da ne pride do zmede v projektnih datotekah. Programski vmesnik je intuitiven in z njim ne bi smelo biti težav. Za odpravljanje napak se uporabljajo lastniški razhroščevalniki Pickit, ICD, REAL ICE, IC PROG. Imajo možnost vpogleda v vsebino pomnilnika in nastavitev kontrolnih točk.



Ko prispajkate še en čip na drugo ploščo ali že desetič izrežete stezo na plošči, da naredite naslednje (vendar ne zadnje) spremembe na novi napravi, začnete razmišljati: "Ali ne bi moral opustiti tega dolgočasnega opravila?!" Vaša nova naprava se ne izkaže tako, kot bi želeli, vendar ste že utrujeni od spreminjanja vezja in popravljanja vsega na plošči.
Če prelistate revije o elektroniki, vse pogosteje naletite na besede: procesor, mikrokrmilnik, vdelana programska oprema, programiranje. Vendar te besede za vas nimajo posebnega pomena. Nekje ste že slišali in morda celo držali v rokah nekaj, o čemer celo razmišljate s strahospoštovanjem ... mikrokontrolerji! Nekaj, kar zmanjšuje velikost naprav in jim daje zmožnosti, ki so vam nedosegljive... Ne, vi kot elektronik razumete splošne ideje o delovanju teh naprav, vendar njihova praktična uporaba v vaših izdelkih ne pride v poštev! Večkrat ste že poskušali obvladati mikrokontrolerje, kupili ste celo nekaj knjig iz serije “... for dummies” in z interneta prenesli več priljubljenih vadnic. Nekaj ​​časa je minilo in vse se je ustavilo na najbolj zanimivi točki: diagrami, prikazani v knjigah, so vam bili jasni, metode za ustvarjanje programa pa so vam ostale skrivnost. Vtipkati nekaj znakov v angleščini (ali kakšnem drugem jeziku) v programu, navedenem v knjigi, vam ne predstavlja težav. Toda BISTVO in METODE uporabe teh skrivnostnih simbolov, katerih zaporedje se v knjigi imenuje program, niso jasni. Očitali ste si, da ste neumni, in pustili idejo o obvladovanju mikrokrmilnikov ob strani. In zakaj? Že zdaj opravljate odlično delo: imate veliko, veliko čipov, na katerih razvijate svoje naprave ... Naprave na velikih ploščah, ki jih dolgo, dolgo časa odpravljate v napakah in predelujete ...
Ampak spoznajte tipa iz sosednje hiše: piše programe, jih nalaga v mikrokontroler in tisto, kar morate mesece odpravljati, naredi v nekaj dneh. Zgrabite se panike, začnete iskati zapuščene knjige in se spomnite vsega, kar ste že prebrali ... On lahko, vi pa ne. Tega človeka bolje spoznaš in pod krinko stranskega pogovora ga začneš spraševati o mikrokontrolerjih in njihovih zmogljivostih. In mirno pove, da so kontrolorji zanj hobi. Prosiš ga, naj ti pove o njihovi napravi. Njegovi odgovori so preprosti in nezahtevni.

Mikrokontrolerji. Kaj je mikrokrmilnik?
Mikrokrmilnik je majhen specializiran računalnik, v ruščini mikroračunalnik. Poleg tega je ta mikroračunalnik izdelan v enem čipu, na enem kristalu. Od tod tudi polno ime: »mikroračunalnik z enim čipom«. Tako kot računalnik je tudi mikrokrmilnik elektronska naprava, katere delovanje nadzira program – zaporedje ukazov, vnaprej naloženih v pomnilnik. Te ukaze izvaja procesor: nekakšni "mega-možgani", ki vključuje ALU - aritmetično-logično enoto. To pomeni, da procesor »lahko« izvaja matematične operacije in izvaja logične operacije s podatki.

Zmogljivost procesorja. Metode podajanja informacij.
Tako procesor kot pomnilnik sta digitalni napravi, ki »razumeta« signale samo dveh ravni: obstaja napetost/tok in ni napetosti/toka na liniji. Ti dve stanji sta običajno zapisani na naslednji način: logična ena - "1" in logična nič - "0". Ukazi in podatki so zbirka enic in ničel. Ena vrstica (imenovana izpust) v svojih dveh stanjih lahko posreduje samo dve vrednosti. Ko pa se število števk poveča, se poveča tudi število vrednosti: dve števki sta že štiri, osem števk pa že 256 vrednosti. Številko običajno imenujemo bit: ena cifra je en bit. In niz osmih bitov je bajt: osem bitov je en bajt. Toda en bajt ima le 256 vrednosti. Za prenos več informacij se uporablja več bajtov, ki so zaporedno nameščeni v pomnilniku. Dva bajta že prenašata 65536 vrednosti. Trije bajti - 16777216 vrednosti! In tako naprej. Najpogostejši procesorji so tisti, ki lahko v eni operaciji obdelajo osem bitov, zato se takšni procesorji imenujejo osembitni.

Sistem ukazov procesorja.
Ko je procesor razvit, je vgrajen v sposobnost izvajanja določenih ukazov. Navodila, ki jih je določen procesor sposoben izvesti, se imenujejo nabor navodil. Kateri so ti ukazi? Najpogostejši aritmetični in logični ukazi ter ukazi za delo z vrati - komunikacijskimi linijami med procesorjem in zunanjim svetom. Procesor, ko prebere vrednost iz pomnilniške celice ali stanje vrat v svoj pomnilnik - register, lahko na njem izvaja matematične ali logične operacije. Matematično so nam operacije jasne: seštevanje, odštevanje in druge. Logična dejanja pomenijo naslednja dejanja: primerjava - več, manj, enako; delo na bitih pomnilniške celice ali registra: poničevanje ali nastavitev, pa tudi operacije premikanja bitov v levo ali desno.

Spomin in njegove vrste.
Podatke je mogoče brati iz pomnilnika. Pomnilnik je prostor, kjer se lahko nekaj časa shranijo program in/ali podatki. Shranjujejo se lahko za kratek čas - do izklopa napajanja ali za daljši čas - ne glede na prisotnost napajalne napetosti. Prva vrsta pomnilnika se uporablja za shranjevanje vmesnih podatkov, ki se uporabljajo pri izvajanju različnih operacij. Zato se imenuje "pomnilnik z naključnim dostopom". Druga vrsta pomnilnika se pogosteje uporablja za shranjevanje programov. Obstaja več vrst dolgotrajnega pomnilnika: enkrat programirljivi pomnilnik, električno izbrisljivi pomnilnik in ultravijolični ali rentgenski izbrisljivi pomnilnik. Fizična zgradba in princip delovanja pomnilnika sta lahko različna, vendar je bistvo enako: shranjevanje podatkov. Koncept "celice" se uporablja za opis shranjevanja podatkov. Zato je več celic, več podatkov je mogoče shraniti. Vsaka celica ima svoj naslov. Procesor dostopa do vrednosti pomnilniške celice točno po njenem naslovu.

Pristanišča. Načini delovanja vrat.
Podatke lahko sprejemamo tudi od zunanjih naprav preko komunikacijskih linij – pinov mikrokrmilnika. Te komunikacijske linije se imenujejo vrata ali znanstveno: naprave za vnos in izhod podatkov. Zatiči vrat so lahko vhodi, preko katerih procesor sprejema informacije od zunaj iz različnih senzorjev, ali pa so izhodi, ki pošiljajo signale, na katere je mogoče krmiliti zunanje naprave. V sodobnih mikrokontrolerjih so nožice skoraj vseh vrat dvosmerne, torej so lahko vhodi in izhodi. Univerzalna vrata je treba konfigurirati - nastavite način delovanja na vhod ali izhod. V ta namen je v pomnilniku posebna celica - register za nadzor načina delovanja vrat. Na primer, da zahtevani izhod (bit) vrat postane vhod, se v bit krmilnega registra zapiše 1 ali 0, odvisno od modela mikrokrmilnika.

periferne naprave.
Toda mikrokrmilnik ne vsebuje samo procesorja in pomnilnika. Glavno vlogo imajo tako imenovane periferne naprave: časovniki, števci, analogni primerjalniki, digitalno-analogni in analogno-digitalni pretvorniki, serijske komunikacijske naprave (pogosto imenovane serijska vrata). Pogosto ima mikrokrmilnik tudi številne obstojne pomnilniške celice (najpogosteje Flash), v katere lahko shranjujemo različne podatke.

Družine mikrokontrolerjev.
Prisotnost vseh naštetih naprav v mikrokontrolerju ni potrebna. Najpogosteje proizvajalec proizvaja več modelov izdelkov, ki vsebujejo različne periferne naprave. Mikrokrmilniki z eno vrsto procesorja (in nizom izvršljivih strojnih kod), vendar različnimi perifernimi napravami, spadajo v isto družino. Tako pravijo: mikrokontrolerji družine ATtiny.

Večnamenskost pinov mikrokrmilnika.
Lahko se pojavi vprašanje: kako vse te naprave "komunicirajo" z zunanjim svetom, če večina čipov v paketu DIP nima več kot 40 pinov? Za rešitev problema pomanjkanja pinov se uporablja metoda za združevanje funkcij več naprav z enim samim zatičem. Na primer, zatiči enega od vrat (8 bitov - 8 zatičev) se uporabljajo tudi za delovanje analogno-digitalnega pretvornika, zatiči drugih vrat pa se uporabljajo kot vhodi analognih primerjalnikov, serijskih vrat ali za povezovanje drugih vgrajenih vozlišč. Za krmiljenje načinov delovanja zatičev se uporablja poseben register za nadzor načina delovanja vrat (o njem smo govorili prej pri razlagi principov delovanja vrat). V večini mikrokontrolerjev imajo nožice več funkcij. Če se sklicujete na tehnično dokumentacijo za krmilnik, bo pri opisu izhodne funkcije navedena opomba o glavnih in alternativnih funkcijah tega izhoda. Na primer: PD0/RX - ničelni bit vrat D je tudi vhod serijskih vrat, PB1/Ain0 - prvi bit vrat B je tudi vhod analognega primerjalnika.

Algoritmi. Programi.
Ukazi procesorju so podani v določenem vrstnem redu, v skladu s predhodno razvitim algoritmom. Algoritem je zaporedje izvajanja s strani procesorja. Poleg tega morajo biti ukazi razumljivi procesorju in hkrati imeti nedvoumno razlago, brez kakršne koli neodvisnosti pri izvajanju. Algoritem lahko zapišemo ustno. Na primer: začetek programa; naredi ničelni bit vrat vhod; naredi sedmi bit vrat izhod; preberite vrednost ničelnega bita vrat; če je enaka logični, izvedite naslednja dejanja: naložite logično enoto v sedmi bit vrat; vrnitev na začetek programa. Tako smo opisali algoritem delovanja vezja, ki ga sestavljajo stikalo, žarnica (ali drugo breme) in vir energije. Rezultat izvedbe bo naslednji: ko pritisnete gumb, se napetost napaja na vhodu vrat, procesor izvede program - napaja napetost na izhodu vrat. In ko so kontakti zaprti, bo na izhodu pristanišča napetost.
Je pa takšno pisanje zelo težko dojemljivo. Zato so bile razvite metode za grafični opis algoritma. Tukaj je primer grafičnega zapisa zgornjega algoritma.
riž. Algoritem-1. Grafična metoda opisa algoritma

Ukazi za veje: pogojno in brezpogojno veje.
Posebna procesorska navodila vključujejo pogojna in brezpogojna navodila za skok. Da bi to razumeli, je treba razložiti koncept "naslovnega kazalca ukaza, ki se izvaja." Procesor ima poseben register, ki hrani naslov ukaza, ki se trenutno izvaja. Ko se priključi napajanje, se ta register ponastavi in ​​vanj se zapiše ničla. Nato začne procesor izvajati ukaze, shranjene v pomnilniku, začenši z naslova nič - navsezadnje register kazalca naslova izvedenega ukaza vsebuje nič. Po izvedbi ukaza se ta kazalec inkriminira, to pomeni, da se mu poveča vrednost. Procesor prebere naslednji ukaz iz pomnilnika na naslovu, določenem v kazalcu. To pomeni, da se ukazi izvajajo zaporedno. Zaporedje izvajanja programa lahko prekinete z ukazi za pogojni in brezpogojni skok. Da bi to naredili, je v eno od pomnilniških celic shranjen ukaz, ki procesorju naroči, naj spremeni vrednost registra kazalca naslova ukaza, ki se izvaja. Ukaz brezpogojnega skoka naroči procesorju, naj spremeni zaporedni vrstni red izvajanja programa in začne izvajati navodila, shranjena v pomnilniku, začenši s predhodno podanega naslova.
Ukaz pogojnega skoka je bolj zapleten: ko se izvede, preveri, ali je izpolnjen nek pogoj. Na primer, morate primerjati vrednost dveh pomnilniških celic. Če je vrednost prve celice večja, nadaljujte z izvajanjem programa na naslovu A, v nasprotnem primeru (tj. vrednost prve celice je manjša) - pojdite na naslov C.

Prekinitve in njihove vrste. Prednostne naloge prekinitev.
Obstaja še en način, kako "prisiliti" procesor, da ustavi zaporedno izvajanje programa in začne izvajati program na določenem naslovu - pokličite "prekinitev". Koncept prekinitve se je pojavil skupaj s prvimi procesorji. Stvar je v tem, da procesor nadzoruje naprave, ki so počasnejše od njega. Na primer, procesor mora obdelati podatke, dokler se ne pojavi določen signal. Dajmo preprost primer: procesor zažene program za štetje števila impulzov, prejetih na enem od njegovih vrat. Ko pritisnete gumb, mora procesor prekiniti izvajanje tega programa in izvesti drug program: vklopiti neko napravo (tj. Uporabiti logično na enega od bitov vrat - "1"). Kako rešiti ta problem? V samem programu lahko nenehno preverjate zahtevano številko vrat, na katera je gumb povezan. Toda hkrati bo del procesorskih virov (hitrost) praktično zapravljen za preverjanje vrat. Drugi način je uporaba prekinitev. Procesor (in torej mikrokrmilnik) ima poseben zatič. Običajno se imenuje "Int" (angleško: "Interrupt"). Ko se na pin »Int« uporabi signal, se zgodijo naslednja dejanja:
- ustavitev izvajanja glavnega programa,
- vrednost registra kazalca naslova izvedenega ukaza se shrani v RAM (mesto, kjer je izvajanje programa prekinjeno),
- nakar se v isti register naloži nov naslov (odvisno od želje proizvajalca procesorja),
- v pomnilniški celici z navedenim naslovom je brezpogojni ukaz za skok: "pojdi na naslov xx",
- v pomnilniku, začenši od celice z naslovom xx, je še en program, recimo mu pomožni program.

V našem primeru mora pomožni program vratom izdati logično enoto in s tem vklopiti zahtevano napravo. In tukaj se začne zabava: zadnji ukaz pomožnega programa je ukaz »exit interrupt«. Po prejemu tega ukaza procesor prebere predhodno shranjeno vrednost kazalnega registra naslova ukaza iz pomnilnika in jo naloži v ta register. Posledično procesor nadaljuje z izvajanjem glavnega programa od tam, kjer je bil prekinjen.
Toda prekinitev lahko povzročijo ne samo zunanji signali, ampak tudi notranje naprave samega mikrokrmilnika: časovniki, števci, serijska vrata in celo obstojni pomnilnik. Tudi to je narejeno predvsem zato, da se zmanjša število ukazov, izvedenih za analizo stanja teh perifernih naprav. Navedimo primer: proces zapisovanja podatkov v obstojni pomnilnik je zelo dolg, v tem času pa lahko procesor izvede zelo veliko število ukazov. Zato procesor izvede glavni program, izda ukaz za brisanje obstojnega pomnilnika in nato nadaljuje z izvajanjem glavnega programa. Takoj ko je čiščenje obstojnega pomnilnika končano, krmilna vezja ustvarijo prekinitveni signal iz tega pomnilnika. Procesor prekine izvajanje glavnega programa in začne se proces zapisovanja podatkov v pomnilnik. Ta metoda izvajanja dejanj zunaj glavnega programa se imenuje način v ozadju. Pogosto se tudi reče: "ta del programa teče v ozadju."
Pri delu s prekinitvami morate biti previdni: možna je situacija, v kateri je lahko moteno izvajanje programa in delovanje celotne naprave. Dejstvo je, da ima mikrokrmilnik več prekinitev. Za nadzor prekinitvenih načinov delovanja obstaja register za nadzor prekinitev. Pri nastavitvi prekinitvenih načinov delovanja ste dovolili delovanje več prekinitev - to je normalna situacija. Toda, ko ste prejeli zunanji ali notranji prekinitveni signal glavnemu programu in nadaljevali z izvajanjem prekinitvenega storitvenega programa, niste onemogočili prekinitev. Procesor izvaja pomožni program in v tem trenutku prejme drug prekinitveni signal. Procesor prekine izvajanje storitvenega programa in nadaljuje z izvajanjem programa za obdelavo nove prekinitve. Lahko si je predstavljati, do česa bi to lahko pripeljalo.
Da bi rešili to težavo, je bila razvita metoda, ki vsaki prekinitvi dodeli stopnjo resnosti ali "prioriteto prekinitve". Odvisno od modela mikrokrmilnika je lahko prioriteta prekinitve nastavljena togo (in programator samo dovoli ali onemogoči obdelavo določene prekinitve) ali pa jo programerji implementirajo programsko (tj. prioriteta prekinitve je odvisna od preferenc programerja in algoritem za izvedbo določene naloge).

Nadzorujemo procesor. Programski jeziki. Prevajalci.
Strojne kode. Sestavljalec.
Ukazi za procesor so zaporedja enic in ničel. Pogosto se ukazi procesorja imenujejo strojne kode, s poudarkom, da so bili ti ukazi prvotno zasnovani za določenega izvajalca - stroj, ne pa osebo. Zapomniti si ukaze iz številk (strojnih kod) je zelo težko. Zato so za poenostavitev dela iznašli način za zamenjavo digitalnih zaporedij s simbolnimi okrajšavami, ki so ljudem bolj razumljive. Na primer, za ukaz »naloži podatke« so prišli do jasne okrajšave »ld« (angleško »load« - naloži), za ukaz »primerjaj« - »cp« (angleško »compare« - primerjava) in tako na. Ta metoda simbolnega zapisovanja ukazov procesorja se imenuje "sestavljalnik". Če pri delu s strojnimi kodami programer neposredno vnese krmilne ukaze procesorja v pomnilnik naprave, potem pri delu z asemblerjem obstaja nekakšen posrednik med programom in procesorjem, ki pretvori simbolne zapise v strojne kode. Program, ki deluje kot posrednik, se imenuje prevajalnik, tj. prevajalnik. Vendar obstaja majhen odtenek: asembler se ne nanaša samo na metodo simbolnega označevanja digitalnih navodil (strojnih kod), ampak tudi na program prevajalnika, ki programerju pomaga prevesti simbolne oznake ukazov neposredno v strojne ukaze. Zato se pogosto uporablja naslednja tehnika: ko govorijo o jeziku, pišejo Assembler, ko govorijo o programu, pišejo preprosto asembler.
Assembler ima veliko prednost: programe, napisane v Assembly, procesor izvede zelo hitro. Dejstvo je, da je asembler praktično strojni ukaz. Vendar ima asembler tudi slabosti: glavna pomanjkljivost je težavnost pisanja programov, druga je ta, da imajo tudi razmeroma preprosti programi veliko izvornega besedila, kar oteži analizo programa.

Modularnost programov. Pogosto ponavljajoče se naloge.
Vsak programer je med svojim delom nabral določeno število programov. Toda veliko programov vsebuje enaka dejanja. Na primer, veliko programov anketira tipkovnico in analizira pritisnjen gumb. To pomeni, da se ta del programske kode lahko prenaša iz enega programa v drugega. Iz takšnih kosov (modulov) so se postopoma oblikovale programske knjižnice. Programerji so začeli "klesati" program iz modulov: to pomeni, da so zahtevani modul vstavili na zahtevano mesto v programu. Ta pristop je pospešil proces pisanja programa in povečal zanesljivost programa kot celote zaradi uporabe že razhroščenih modulov. Toda že od prvih dni se je pojavil problem skupne rabe modulov: navsezadnje je vsak programer napisal module po svojem "standardu" - kot mu je bilo bolj priročno naenkrat. Zato je bil postopoma razvit standard (natančneje, več zagonov) za pisanje teh modulov. Opisali so strukturo modulov za bolj priročno "lepljenje" v en program.

Programski jeziki in njihova funkcionalna delitev.
Postopoma so ti različni standardi za uporabo modulov oblikovali tisto, kar se bo kasneje imenovalo »programski jezik«. Tako kot človeški jeziki ima tudi programski jezik več podravni, ki določajo tako zapisovanje posameznih besed (modulov) kot načine njihovega zapisovanja ter pravila njihove uporabe. Sčasoma so se programski jeziki razvijali in spreminjali. Postopoma so bili vsi programski jeziki razdeljeni v več skupin, odvisno od njihove "poklicne usmeritve":
- uporabni programski jeziki (FORTRAN za matematike, FoxPro za finančne delavce);
- univerzalni (Pascal in Basic);
- sistem (Assembler in C).

Sistemske besede so začeli imenovati jeziki nizke ravni, tj. Programer deluje na nižji ravni, najbližji procesorju. In jeziki, pri delu s katerimi programerju ni treba neposredno nadzorovati delovanja procesorja, so se začeli imenovati jeziki visoke ravni (pogosto imenovani jeziki Java). Ne zamenjujte te okrajšave z imenom jezika Java - "Java".

Oddaja programa. Metode za oddajanje programa.
Kot pri asemblerju je treba program, napisan v katerem koli jeziku na visoki ravni, pretvoriti v navodila, ki jih procesor lahko razume. Sprva je to potekalo ročno: ukaz v asemblerju je bil najden v tabeli in zapisan v strojni kodi. Da bi pospešili proces pretvorbe (prevajanja) programa, so bili napisani posebni programi - prevajalci. Obstajata dve metodi za prevajanje programa: interpretacija in prevajanje. Posledično se prevajalnik imenuje tolmač ali prevajalnik. Pri uporabi tolmača se izvorno besedilo programa analizira in zaporedno, ukaz za ukazom, izvaja tolmač. Tolmač vsebuje module za vsa uporabna dejanja. Ta pretvorba na ukaz je zelo počasna. Toda ta metoda ima veliko prednost: program lahko ustavite, spremenite njegovo kodo in nadaljujete z njegovim izvajanjem. To je priročno pri odpravljanju napak v programu. Tudi v tem primeru imamo izvorno besedilo programa in ga lahko večkrat urejamo.
Pri uporabi prevajalnika se besedilo programa analizira in ustvari datoteka s strojnimi navodili, imenovana izvršljiva datoteka. To zagotavlja zelo visoko hitrost izvajanja prevedenega programa - navsezadnje se pretvorba programskega besedila v strojne kode zgodi le enkrat med njegovim prevajanjem. Vendar programa ne boste mogli spreminjati na hitro: spremeniti morate besedilo programa in ga znova prevesti. Če izvorna koda iz nekega razloga manjka, potem programa ni mogoče znova prevesti, spreminjanje izvedljive datoteke pa je izjemno težko.

Postopek izdelave programa. Programska razvojna okolja.
S prihodom prevajalcev je postopek ustvarjanja programa začel izgledati takole:
- razvija se algoritem za prihodnji program,
- je algoritem kodiran (tj. opisan v obliki ukazov programskega jezika),
- nastala koda je napisana v urejevalniku besedil,
- datoteka s programskim besedilom se prenese v prevajalnik,
- prevajalnik pretvori simbolne ukaze v procesorju razumljive ukaze in jih shrani v datoteko,
- ta datoteka je naložena v pomnilnik.
Kot lahko vidite, je moral programer delati v več programih. Najpogosteje so vse te programe napisali različni proizvajalci, zato združljivost teh programov med seboj ni bila zagotovljena. Njihovo združljivost je bilo treba določiti s poskusi in napakami.

Integrirano okolje za razvoj programske opreme.
Pred kratkim se je pojavil nov pristop: »Integrirano razvojno okolje« (IDE). Integracija se nanaša na izvedbo celotnega procesa ustvarjanja programa v enem programu: programer, ko napiše programsko besedilo, s klikom miške začne prevajanje programskega besedila v strojne kode, nakar se nastala izvršljiva datoteka samodejno naloži v pomnilnik procesorske naprave. To pomeni, da je vse narejeno v enem programu. Ta pristop pospeši programerjevo delo.

Prve težave.
Vsa prejšnja poglavja so bila uvodni tečaj, ki vas je pripravljal na zaznavanje novih informacij. Na poti imamo več težav.
1. Velika količina raznolikih informacij: elektronika, načrtovanje mikrokontrolerjev, algoritmi, sintaksa programskih jezikov, opisi dela s programskimi orodji. In kako pisati? En bralec je dober elektronik, a še nikoli ni napisal programa, drugi je programer, a je elektronika na ravni radijskega krožka, tretji je nekaj vmes...

2. Izbor MK: če so vsi mikrokontrolerji dobri, na osnovi katerega izdelka in katerega proizvajalca naj potem temelji proces nadaljnjega šolanja in praktične uporabe mikrokrmilnikov?
Za izbiro mikrokrmilnika za USPOSABLJANJE moramo izpolnjevati naslednje pogoje:
A) mikrokrmilnik, izbran za usposabljanje, mora biti dostopen in poceni.
B) mora biti sodoben izdelek, vendar ne najnovejši.

Zdaj podrobneje o vsaki točki.
S točko A je vse jasno: kakšen smisel ima preučevanje izdelka, ki ga je težko kupiti ali pa je njegova cena pretirana za začetnika.
Točka B zahteva pojasnilo. Dejstvo je, da imajo novi izdelki vedno nekaj pomanjkljivosti. Odkrijejo jih šele čez nekaj časa, dokler nekdo med delom s tem izdelkom po naključju ne naleti na to težavo. Toda novi izdelki ne najdejo takoj svoje poti v nove modele: pisanje programov za nove modele zahteva čas. Tu je človeški dejavnik: razvijalci že imajo pripravljene rešitve za prejšnje modele mikrokontrolerjev in prehod na nove je težaven.
Prav tako imajo vsi novi mikrokontrolerji samo zaščiten opis. Pa še to je napisano v angleščini in z uporabo številnih strokovnih izrazov: navsezadnje je namenjeno profesionalcem! In mi smo študenti ... Čez nekaj časa se pojavijo primeri dizajnov, podrobnejši opisi s številnimi komentarji in nasveti. Potem bo nekdo začel prevajati dokumentacijo v ruščino (ne vso, ampak vsaj najbolj zapleteno ali najpogosteje uporabljeno).
Morda ni orodij za nov mikrokrmilnik: prevajalniki, razhroščevalniki in programerji "ne razumejo" tega izdelka. Spet čakamo, da avtorji teh programov posodobijo svoje stvaritve ...

3. Izbrati morate programski jezik, na katerem nameravamo pisati programe za MK.
Izbira programskega jezika je zelo občutljiva naloga. Za poučevanje programiranja mikrokontrolerjev bi rad uporabljal programski jezik s preprosto sintakso: programer se mora ukvarjati s programom, ne pa z njegovim oblikovanjem!
Tukaj je treba vnaprej pojasniti: trenutno so med razvijalci programov in naprav na mikrokontrolerjih priljubljene tri "družine" jezikov: C (napisano kot "C"), Pascal (Pascal) in BASIC (BASIC) . Pascal je bil prvotno razvit kot orodje za učenje programiranja. Sam BASIC je po zgradbi podoben Pascalu, le da je pisanje ukazov poenostavljeno, zahteve za načrtovanje programa pa veliko manjše. C velja za jezik za profesionalce. Xi je kot kitajska filozofija: ni pomemben le simbol (ukaz), ampak tudi njegov slog in barva. Šalo na stran, ampak moje mnenje je naslednje: C je nočna mora. Njegova uporaba je upravičena le pri nekaterih zelo ozko specializiranih nalogah. Toda naša naloga je, da preizkusimo svoje moči in jih porabimo čim manj za naloge, ki nimajo neposredne povezave z glavnim ciljem.

4. Potrebujemo okolje za razvoj programov za mikrokontrolerje. Njegova izbira je neposredno odvisna od vrste uporabljenega MK in programskega jezika.
Programsko razvojno okolje je zelo pomembno za uspešno obvladovanje programiranja mikrokontrolerjev. V urejevalniku besedil, kot je Beležnica, je mogoče pisati programe, vendar je neprijetno (preizkušeno!). Klicanje prevajalnika v ukazni vrstici je nehvaležno opravilo v naši dobi grafičnega okna.
Izbira razvojnega okolja je neposredno odvisna od mikrokrmilnika, na katerem bomo gradili praktični del usposabljanja. Poleg vsega drugega moramo imeti brezplačna orodja. Toda, kot je pokazalo testiranje takšnih programov, je brezplačna programska oprema najpogosteje povprečne kakovosti tako z vidika uporabe kot z vidika učenja programiranja MK: prisotnost napak ali pomanjkljivosti v samih prevajalnikih povzroča dodatne težave in jemanje samozavesti.
Primerna bi bila tudi demo različica, če bi imela minimalne omejitve in bi delovala vsaj pol leta - ravno to obdobje je potrebno za pridobivanje veščin dela z mikrokontrolerji doma.

5. Programator, ki bo uporabljen za nalaganje napisanih programov v pomnilnik MK. Izbira programatorja je odvisna tudi od vrste uporabljenega MK. Seveda obstajajo "univerzalni" programatorji, ki vam omogočajo delo z različnimi mikrokontrolerji in pomnilniškimi čipi, vendar so dragi. Da, in v večini primerov ni potreben. Zato je lažje izdelati nekaj visoko specializiranega za to družino MK.
Toda bistvo ni toliko v kompleksnosti programatorskih vezij, ampak v načinu povezovanja tega programatorja z osebnim računalnikom. Tukaj je treba pojasniti: programator je elektronski adapter, ki pretvarja signale iz računalniških vmesnikov (vrata COM, LPT in USB) v signale, dobavljene na izhode MK, da naloži program v svoj pomnilnik. Elektronski adapter je krmiljen s programom za osebni računalnik, ki "prisili" adapter, da izda potrebna zaporedja signalov na zatiče MK.
Če je adapter za programator, povezan z osebnim računalnikom prek vrat COM in LPT, mogoče narediti doma - "na kolenu", potem je izdelava takega adapterja, vendar priključenega na vrata USB, že nekoliko problematična: srce takega adapterja je pogosto ... mikrokrmilnik. Tu se pojavi paradoks: če želimo programirati MK, moramo programirati MK.
Postavlja se logično vprašanje: zakaj narediti zapleten adapter, ki se poveže z USB, ko pa lahko naredite preprostega in ga povežete z vrati LPT ali COM. Dejstvo je, da mnogi (skoraj vsi) sodobni osebni računalniki nimajo teh vrat. Zato boste morali narediti bolj zapleten adapter za programiranje MK.

marec 2010

Ta vprašanja sem si postavljal marca, zdaj pa je že konec novembra. Toda tokrat ni bilo zaman: našel sem izhod iz zgoraj opisanih situacij in našel odgovore na vsa vprašanja, ki so me mučila. In zdaj najprej.

Odgovor na vprašanje številka 1
Če bi lahko gradiva prejšnjih poglavij nekako logično sistematizirali in predstavili po korakih, potem so gradiva v naslednjih poglavjih podana vzporedno: eno implicira drugo. Morda se vam bo moj način podajanja novih materialov zdel nekoliko kaotičen, a kaj lepšega v oblikovanju si nisem mogel izmisliti.

Odgovor na vprašanje številka 2
Mikrokrmilnik proizvajalca ATMEL ATMEGA48. Je dobro opisan, v proizvodnji je že več let, ni predvidena ukinitev še vsaj 3 leta in ima optimalne tehnične parametre.

Odgovori na 3. in 4. vprašanje
Programsko okolje je BASCOM (proizvajalec MCS Electronics, avtor Mark Alberts). Programski jezik je po slogu in zahtevah za oblikovanje programskega besedila podoben Pascalu, vendar je sintaksa ukaza vzeta iz BASIC-a.
Razlogi za izbiro:
- popolnoma delujoča demo različica prevajalnika (edina omejitev: koda, ki jo ustvari prevajalnik, je omejena na velikost 4 KB)
- želja avtorja programa po sodelovanju (sporočila vmesnika in sistem pomoči sem prevedel v ruščino, on je temu programu dodal ruščino)
- prisotnost foruma v ruskem jeziku za uporabnike tega prevajalnika

Odgovor na vprašanje številka 5
Ni bilo mogoče združiti preprostosti vezja in USB. Odločeno je bilo opisati dva modela programerjev: eden se poveže z vrati LPT računalnika, drugi pa s vrati COM. Če ta vrata manjkajo, lahko drugo različico programatorja povežete z računalnikom s pretvornikom USB-COM. Tako dobimo kombinacijo USB-COM-programator-mikrokrmilnik.
Prvi model programatorja je znan kot STK-200/300, vsebuje vmesni čip tretjega stanja in več uporov. Drugi model je znani programator USBasp.

Situacija, ko morajo uporabniki pisarniške opreme za tiskanje rešiti problem, kako ponastaviti kartušo, je precej pogosta. Z njim se lahko spopadete na več načinov in popolnoma neodvisno. Toda preden začnemo reševati problem, kako ponastaviti čip kartuše, je treba povedati, da je čip na tiskalniku zasnovan za beleženje informacij, povezanih z virom potrošnega materiala in natisnjenih strani.

Ko pisarniška oprema signalizira, da je treba posodo s črnilom zamenjati, ne pozabite, da to ne pomeni, da v njej dejansko ni več črnila. Samo čipirana kartuša je dosegla določeno mejo natisnjenih strani. In na njih je lahko bilo le 5-6 vrstic besedila. Izkazalo se je, da se raven črnila v tiskalniku in večnamenski napravi izračuna programsko in praviloma ni podatkov o tem, koliko črnila je dejansko ostalo v posodi. Prav zaradi tega se pogosto pojavi vprašanje, kako ponastaviti čip na kartuši, da bi porabili vse črnilo, ki je v njeni posodici.

Seveda lahko namesto ponastavitve kartuše in ponastavitve števca preprosto ignorirate opozorila vaše pisarniške opreme, da je kapaciteta potrošnega materiala skoraj prazna. Vendar je to pomembno le, če vaš tiskalnik ali večnamenska naprava ne blokira samodejno postopka tiskanja, ko se prikažejo taka sporočila. Če se želite spoprijeti z nalogo, kako ponastaviti kartušo in s tem odblokirati tiskalnik, se morate zateči k spodaj opisanim metodam.

Kako uporabljati programator?

Če želite odgovoriti na vprašanje, kako ponastaviti tiskalnik, morate uporabiti poseben programator. Upoštevajte, da bo ponastavitev tiskalnika izvedena čim bolj uspešno, če v ta namen uporabite programator, ki je zasnovan posebej za vaš model pisarniške opreme za tiskanje.

Programator čipov lahko dela z velikim številom čipov različnih tiskalnikov. Je enostaven za uporabo (pogosto ima taka programska oprema funkcijo samodejnega programiranja), ima poln vmesnik USB, ročni in samodejni nadzor moči CRUM ter ergonomijo.

Če želite ponastaviti števec, morate samo izbrati želeni model s tako univerzalno programsko opremo in počakati, da se postopek zaključi. Pogosto imajo univerzalni programerji zelo priročno funkcijo skeniranja. Z njeno pomočjo. Ugotovite lahko, kateri napravi pripada ta ali oni čip. Dodati je treba še, da tak programator čipov ne potrebuje interneta.

Torej, če ste za rešitev težave, kot je "kako ponastaviti števec", kupili programator, ki ustreza vašemu tiskalniku, potem najprej natančno preberite navodila za uporabo. Tam se lahko seznanite z vsemi priporočili, ki se nanašajo na delovanje naprave.

  • Preden ponastavite števec, ne pozabite razstaviti kartuše s tonerjem/črnilom in nato z nje odstraniti čip. Kljub temu, da ima vsak model pisarniške opreme za tiskanje svoje značilnosti nastavitve števca na ničlo, je na splošno postopek pri večini modelov skoraj enak.
  • Če želite ponastaviti števec, vstavite čip v priključek predhodno kupljenega programatorja, ki mora biti priključen na vrata osebnega računalnika.
  • Prenesite programsko opremo za čip, ki bo pomagala rešiti težavo, kako bliskati kartušo.
  • Ko odprete programsko opremo, zasnovano za čipe potrošnega materiala pisarniške opreme za tiskanje, ponastavite vse informacije v zvezi z uporabo potrošnega materiala. Dobro bi bilo najprej prenesti shemo ponastavitve vdelane programske opreme iz tematskih spletnih virov.
  • Shranite celoten rezultat opravljenega dela, nato previdno odstranite čip iz naprave in ponovno napolnite toner ali posodo s črnilom.
  • Na koncu vam preostane le še vstavljanje potrošnega materiala s ponastavljenim števcem nazaj v tiskalno napravo in njeno delovanje preizkusite s tiskanjem testne strani.

Vendar morate razumeti, da tak programator stane precej denarja - njegova cena je primerljiva s stroški nove tiskalne naprave, zato je za domači tiskalnik najboljša možnost zamenjava čipa. Tiskalniški čipi so poceni in jih je zelo enostavno zamenjati.

Samoponastavitev

Drug način za ponastavitev števca kartuš, da bi zaobšli funkcijo zaklepanja tiskanja in ponovno napolnili potrošni material, je uporaba ročnega pristopa. V ta namen sledite tem korakom:

  • Najprej odstranite potrošni material iz pisarniške opreme.
  • V servisnem meniju tiskalne naprave kliknite gumb »Prekliči«, medtem ko držite pritisnjen gumb »V redu«. Po nekaj sekundah lahko spustite oba gumba.
  • V meniju poiščite element z imenom »Meni ponastavitve« in kliknite »V redu«.
  • Zdaj bi morali izbrati "Delna ponastavitev". Vaša naprava se bo nato izklopila.
  • Vklopite tiskalnik ali večnamensko napravo, izberite svojo regijo in jezik ter sledite vsem navodilom, ki vam jih ponuja tiskalna naprava.
  • Preverite raven črnila; če ta parameter ni 100-odstoten, nato znova ponovite prej navedene korake. Vendar pa morate namesto elementa »Delna ponastavitev« klikniti »Polpolna ponastavitev«.
  • Druga možnost je, da poskusite približno deset sekund držati gumb Reset/Stop na sami tiskalni napravi. Zahvaljujoč temu dejanju tiskalnik preprosto ne bo več nadzoroval ravni črnila v potrošnem materialu. Toda ta pristop ima eno pomanjkljivost. Dejstvo je, da boste morali po takšni operaciji sami spremljati nivo črnila v vsaki kartuši.

Upoštevajte, da so zgoraj opisani koraki primerni samo za nekatere modele tiskalnikov. Večina naprav zahteva vdelano programsko opremo kartuš. Če želite izvedeti, kako ga narediti posebej za vaš model tiskalnika, uporabite iskanje po modelu naprave v stranskem meniju.

Kaj storiti, če ne morete ponastaviti čipa?

Če pa ne morete odstraniti čipa s tiskalnika ali potrošnega materiala MFP, obstaja samo en izhod iz te situacije, in sicer zamenjava čipa. Upoštevati pa morate, da bo treba čip zamenjati ob vsakem polnjenju potrošnega materiala. Na splošno danes najti ustrezne čipe za kartuše različnih modelov tiskalnikov ni problem, saj... Sodobni trg pisarniške opreme in njenih komponent je preplavljen z ogromno ponudbo.

Drug način za rešitev te težave je ponovna nastavitev pisarniške opreme. Če želite to narediti, se boste morali seznaniti z ustreznimi gradivi na naši spletni strani ali uporabiti storitve strokovnjakov iz katerega koli zanesljivega servisnega centra.