Uvod u arhitekturu mikrokontrolera na bazi ARM7

Isprobajte Naš Instrument Za Uklanjanje Problema





ARM (Advanced RISC Machine) lansirao je nekoliko procesora koji imaju različite značajke, kao i različite jezgre za širok spektar aplikacija. Prvi ARM arhitektonski dizajn ima 26-bitne procesore, ali sada je dosegao 64-bitne procesore. Opće širenje ARM proizvoda ne može se svrstati u neke određene informacije. Ali ARM proizvodi mogu se razumjeti na temelju njihove arhitekture. Standardni procesori serije ARM dostupni na tržištu počinju od ARM7 do ARM11. Ovi procesori imaju nekoliko značajki poput predmemorije, memorije s podacima, MPU, MMU itd. Neke od nadaleko poznatih serija procesora ARM su ARM926EJ-S, ARM7TDMI i ARM11 MPCore. Ovaj je članak posebno namijenjen pregledu arhitekture mikrokontrolera na bazi ARM7 koji će vam pružiti kratke informacije o mikrokontroler arhitektura.

Arhitektura mikrokontrolera zasnovana na ARM7

ARM7 je 32-bitna opća namjena mikroprocesor , a nudi neke značajke poput malog iskorištavanja energije i visokih performansi. Arhitektura ARM-a ovisi o načela RISC-a . Pridruženi mehanizam dekodiranja, kao i set RISC-uputa, vrlo su jednostavni kada se uspoređujemo mikroprogramirani CISC - Komplicirana računala s instrukcijama.




Metoda cjevovoda koristi se za obradu svih blokova u arhitekturi. Općenito se izvodi jedan skup instrukcija, zatim se prevodi njegov potomak, & a 3rd-uputa se dobiva iz memorije.

Ekskluzivno arhitektonski plan ARM7 naziva se Thumb i savršeno je pogodan za velike količine aplikacija gdje je stvar kompaktnost koda. ARM7 također koristi ekskluzivnu arhitekturu, naime Thumb. Čini ga savršeno prikladnim za različite primjene zbog ograničenja memorije gdje je gustoća koda stvar.



Arhitektura ARM7 zasnovana na mikrokontroleru (LPC2148)

Arhitektura ARM7 zasnovana na mikrokontroleru (LPC2148)

Izvori prekida

Svaki se periferni uređaj sastoji od jedne linije prekida povezane s VIC-om (vektorski kontroler prekida), iako može imati različite zastavice prekida. Pojedinačne zastavice prekida također mogu označavati jedan ili više resursa prekida.


Memorija Flash programa na čipu

Mikrokontroler LPC2141 / 42/44/46/48 uključuje flash memoriju poput 32 kilobajta, kilobajta, 128 kilobajta, odnosno 256 kilobajta. Ova flash memorija može se koristiti i za pohranu podataka i za kôd. Programiranje flash memorije može se izvršiti u sustavu putem serijskog porta.

Programska aplikacija također može izbrisati dok se aplikacija izvodi, dopuštajući fleksibilnost poboljšanja firmvera polja za pohranu podataka itd. Zbog odabira arhitektonskog rješenja za pokretački učitavač na čipu, dostupna memorija za mikrokontrolere LPC2141 / 42 / 44/46/48 je 32 kilobajta, kilobajta, 128 kilobajta, 256 kilobajta i 500 kilobajta. Flash memorija ovih mikrokontrolera nudi 1.000.000 brisanja po ciklusima i očuvanje podataka dugi niz godina.

Blok za spajanje pin

Ovaj blok dopušta odabrane igle mikrokontrolera LPC2148 temeljenog na ARM7 za obavljanje nekoliko funkcija. Multiplekseri može se kontrolirati pomoću konfiguracijskih registara za omogućavanje veze između pina kao i perifernih uređaja na čipu.

Periferne jedinice moraju biti povezane s prikladnim iglama prije nego što se aktiviraju i prije svih dopuštenih povezanih prekida. Funkcionalnost mikrokontrolera može definirati upravljački modul pinova izborom registara pinova u danom hardverskom okruženju.

Nakon preslagivanja sve pinove priključaka (port 0 i port 1) poredane su kao i / p prema datim iznimkama. Ako je otklanjanje pogrešaka dopušteno

Ako je otklanjanje pogrešaka dopušteno, pribadače JTAG-a pogodit će funkcionalnost JTAG-a. Ako je dopušteno praćenje, tada će igle za praćenje pogoditi funkcionalnost traga. Pribadače spojene na pinove I2C0 i I2C1 otvoreni su odvod.

GPIO - paralelni ulaz / izlaz opće namjene

GPIO registri kontroliraju pinove uređaja koji nisu povezani s određenom perifernom funkcijom. Igle uređaja mogu biti raspoređene u obliku i / p [s ili o / ps. Pojedinačni registri omogućuju istodobno brisanje bilo kojeg broja o / p-a. Vrijednost izlaznog registra može se očitati i trenutno stanje pinova priključka. Ovi mikrokontroleri započinju ubrzanu funkciju preko LPC200 uređaja.

Ulazno-izlazni registri opće namjene premještaju se na sabirnicu procesora koja se koristi za najbolje vjerojatno I / O vrijeme.

  • Ovi registri su adresirani bajtovi.
  • Ukupna vrijednost luke može biti
  • Potpuna vrijednost priključka može se zapisati u jedinu uputu

10-bitni ADC (analogno u digitalni pretvarač)

Mikrokontroleri poput LPC2141 ili 42 uključuju dva ADC pretvarači , a ovo su samo 10-bitni imaju jedan, a LPC2144 / 46/48 imaju dva ADC-a, a to su samo 10-bitni ADC s pravim približavanjem. Iako ADC0 uključuje 6 kanala, a ADC1 ima 8 kanala. Dakle, broj pristupačnih ADC i / ps za LPC2141 ili 42 je 6 i 14 za LPC2141 ili 42.

10-bitni DAC (digitalno-analogni pretvarač)

DAC omogućuje ovim mikrokontrolerima da proizvode promjenjivi analogni o / p i VREFje najveći izlaz a digitalni na analogni napon.

Upravljač uređaja-USB 2.0

Univerzalna serijska sabirnica sastoji se od 4 žice, a to daje podršku za komunikaciju između određenog broja perifernih uređaja i domaćina. Ovaj kontroler omogućuje propusnost USB-a za povezivanje uređaja koji koriste protokol zasnovan na tokenu.

Sabirnica podržava isključivanje vrućeg uključivanja i dinamičko prikupljanje uređaja. Svaka komunikacija započinje se preko glavnog kontrolera. Ovi mikrokontroleri dizajnirani su s univerzalnim serijskim upravljačkim uređajem sabirnice koji omogućuje prijenos podataka od 12 Mbit / sec koji zamjenjuje glavni kontroler USB-a.

UART-ovi

Ovi mikrokontroleri uključuju dva UART-a za standardni prijenos i primanje podatkovnih linija. Za razliku od ranijih mikrokontrolera (LPC2000), UART-ovi u mikrokontrolerima LPC2141 / LPC2142 / LPC2144 / LPC2146 / LPC2148 pokreću generator djelomične brzine prijenosa koji se koristi za oba UART-a, omogućavajući ovim vrstama mikrokontrolera postizanje tipičnih brzina prijenosa poput 115200 na svakoj kristalnoj frekvenciji preko 2 MHz . Uz to, kontrolne funkcije poput CTS / RTS u potpunosti se izvršavaju u hardveru.

Serijski I / O kontroler I2C-sabirnice

Svaki mikrokontroler iz LPC2141 / LPC2142 / LPC2144 / LPC2146 / LPC2148 uključuje dva I2C kontroleri sabirnice, a ovo je dvosmjerno. Inter-IC kontrola može se izvršiti uz pomoć dvije žice, naime SCL i SDA. Ovdje su SDA i SCL serijska linija sata i serijska linija podataka

Svaki je uređaj identificiran pojedinačnom adresom. Ovdje odašiljači i prijamnici mogu raditi u dva načina kao što su glavni način / podređeni način. Ovo je sabirnica s više voditelja i njome može upravljati jedan ili više povezanih voditelja sabirnice. Ovi mikrokontroleri podržavaju brzine prijenosa do-400 kbit / s.

SPI serijski ulazno / izlazni kontroler

Ovi mikrokontroleri uključuju jedan SPI kontroler i namijenjeni su rukovanju brojnim glavnim i pomoćnim uređajima povezanim s određenom sabirnicom.

Jednostavno master i slave mogu razgovarati preko sučelja tijekom određenog prijenosa podataka. Tijekom toga, master neprestano prenosi bajt podataka prema slave-u, kao što slave neprestano prenosi podatke prema masteru.

SSP serijski ulazno / izlazni kontroler

Ovi mikrokontroleri sadrže jedan SSP, a ovaj je kontroler sposoban obrađivati ​​na SPI, Microwire sabirnici ili 4-žičnom SSI. Može komunicirati s autobusom nekolicine gospodara kao i robova

Ali, jednostavno određeni master, kao i slave, mogu razgovarati na sabirnici tijekom određenog prijenosa podataka. Ovaj mikrokontroler podržava full-duplex prijenose, od 4-16 bitnih okvira podataka koji se koriste za protok podataka od master-slave-a kao i od slave-master-a.

Odbrojavanja / Brojila

Tajmeri i brojači dizajnirani su za brojanje ciklusa PCLK (periferni sat) i po želji proizvode prekide na temelju 4-match registara.

Sadrži četiri hvatanja i / ps za hvatanje vrijednosti timera kada se promijene i / p signali. Za izvršenje određenog snimanja moglo bi se odabrati nekoliko pribadača. Ovi mikrokontroleri mogu izračunati vanjske događaje na ulazima hvatanja ako je najmanji vanjski impuls ekvivalentan. U ovom aranžmanu, crte hvatanja u praznom hodu mogu se odabrati kao i obično hvatanje vremena / i.

Tajmer čuvara

Nadzorni sat se koristi za resetiranje mikrokontrolera u razumnom vremenskom iznosu. Kada je to dopušteno, tajmer će izvršiti resetiranje sustava ako potrošački program ne uspije ponovno učitati tajmer u fiksnom zbroju vremena.

RTC-sat u stvarnom vremenu

RTC je namijenjen pružanju brojača za izračunavanje vremena odabira načina rada u praznom hodu ili normalnog rada. RTC koristi malu količinu energije i dizajniran je za odgovarajuće uređaje s pogonom na baterije gdje središnja procesorska jedinica ne funkcionira stalno

Kontrola napajanja

Ovi mikrokontroleri podržavaju dva kondenzirana načina napajanja, poput načina isključivanja i mirovanja. U načinu mirovanja izvršavanje uputa uravnoteženo je dok se ne dogodi prekid ili RST. Funkcije perifernih uređaja održavaju rad tijekom mirovanja i mogu stvarati prekide koji uzrokuju da CPU ponovno pokrene doradu. U stanju mirovanja uklanja se snaga koju koriste CPU, kontroleri, memorijski sustavi i unutarnje sabirnice.

U načinu isključenja, oscilator se deaktivira i IC ne dobiva unutarnje satove. Periferni registri, stanje procesora s registrima, unutarnje SRAM vrijednosti sačuvaju se tijekom načina isključivanja i izlazni pinovi logičke razine čipa ostaju fiksni.

Ovaj način rada može se završiti i uobičajeni postupak ponovno pokrenuti određenim prekidima koji mogu raditi bez satova. Budući da je rad čipa uravnotežen, način isključivanja smanjuje iskorištavanje snage čipa na gotovo nulu.

PWM-modul širine impulsa

PWM-ovi se temelje na normalnom timer-bloku i također dolaze u sve značajke, iako je jednostavno funkcija modulatora širine impulsa fiksirana na mikrokontrolere poput LPC2141 / 42/44/46/48.

Tajmer je namijenjen za izračunavanje ciklusa PCLK (periferni sat) i po želji proizvodi prekide kada se pojave određene vrijednosti tajmera na temelju 7-match registara, a PWM funkcija također ovisi o događajima u registru utakmica.

Sposobnost pojedinačne kontrole povećavanja i smanjenja graničnih položaja omogućuje korištenje modulacije širine impulsa za nekoliko primjena. Na primjer, tipično upravljanje motorom s višefaznim postupkom koristi 3 izlaza PWM koji se ne preklapaju odvojenim upravljanjem širinama svakog impulsa kao i položajima.

VPB sabirnica

VPB razdjelnik rješava povezanost između CCLK (procesorski sat) i PCLK (sat koji koriste periferni uređaji). Ovaj razdjelnik koristi se u dvije svrhe. Prva upotreba je opskrba perifernih uređaja željenim PCLK-om pomoću VPB sabirnice kako bi mogle raditi odabranom brzinom ARM procesora. Da bi se to postiglo, ova brzina sabirnice može se smanjiti takt procesora s 1⁄2 -1⁄4.

Budući da ova sabirnica mora točno raditi pri uključivanju, a zadano stanje na RST (resetiranje) je da sabirnica radi na 1/4 takta procesora. Druga upotreba ovoga je omogućavanje uštede energije kad god aplikacija ne treba periferne uređaje za rad sa kompletnom brzinom procesora. Budući da je VPB-razdjelnik povezan s izlazom PLL-a, on ostaje aktivan tijekom mirovanja.

Emulacija i ispravljanje pogrešaka

Mikrokontroler (LPC2141 / 42/44/46/48) ima emulaciju i uklanjanje pogrešaka kroz serijski port-JTAG.Dodatni port omogućuje praćenje izvršenja programa. Funkcije praćenja i koncepti otklanjanja pogrešaka multipleksirani su s port1 i GPIO-ima.

Sigurnost koda

Sigurnosna značajka koda ovih mikrokontrolera LPC2141 / 42/44/46/48 omogućuje funkciju da kontrolira može li se zaštititi ili otkloniti pogreške od pregleda.

Dakle, ovdje se radi o arhitekturi mikrokontrolera zasnovanoj na ARM7 LPC2148. Iz gornjeg članka, konačno, možemo zaključiti da je ARM arhitektura koja se koristi u brojnim procesorima kao i mikrokontrolerima. Evo pitanja za vas, koja je arhitektura ARM procesora?