Dom > Izložba > Sadržaj

Mikrokontroler Ugrađeni dizajn

Mar 08, 2019

Mikrokontroleri moraju pružiti realno-vremenski (predvidljivi, ali ne nužno brzi) odgovor na događaje u ugrađenom sistemu koji kontroliraju. Kada se dogode određeni događaji, sistem prekida može signalizirati procesoru da obustavi obradu trenutne sekvence instrukcija i da započne rutinu servisiranja prekida (ISR, ili "rukovatelj prekidom") koji će izvršiti bilo koju obradu koja je potrebna na osnovu izvora prekida, prije vraćanje na originalni niz instrukcija. Mogući izvori prekida su ovisni o uređaju, i često uključuju događaje kao što je prelijevanje internog tajmera, dovršavanje analogno-digitalne konverzije, promjena logičkog nivoa na ulazu kao što je gumb koji se pritisne i podaci primljeni na komunikacijskoj vezi. Tamo gde je potrošnja energije važna kao kod baterijskih uređaja, prekidi takođe mogu probuditi mikrokontroler iz stanja spavanja male snage, gde je procesor zaustavljen dok ne bude potrebno da nešto uradi perifernim događajem.


Programi

Programi mikrokontrolera obično moraju da stanu u raspoloživu memoriju na čipu, jer bi bilo skupo obezbediti sistem sa spoljnom, proširivom memorijom. Kompajleri i montažeri se koriste za konvertovanje kodova visokog nivoa i asemblerskih jezika u kompaktni mašinski kod za skladištenje u memoriji mikrokontrolera. U zavisnosti od uređaja, programska memorija može biti trajna, memorija samo za čitanje koja se može programirati samo u fabrici, ili može biti blic koji se menja u polju ili izbrisiva memorija samo za čitanje.


Proizvođači su često proizvodili posebne verzije svojih mikrokontrolera kako bi pomogli u razvoju hardvera i softvera ciljnog sistema. Prvobitno su uključene EPROM verzije koje imaju "prozor" na vrhu uređaja kroz koji se memorija programa može izbrisati ultraljubičastim svjetlom, spremna za reprogramiranje nakon programiranja ("snimanja") i testnog ciklusa. Od 1998. EPROM verzije su rijetke i zamijenjene su EEPROM-om i flash-om, koji su lakši za korištenje (mogu se izbrisati elektronički) i jeftiniji za proizvodnju.


Druge verzije mogu biti dostupne tamo gdje se ROM-u pristupa kao vanjskom uređaju, a ne kao interna memorija, ali oni postaju rijetki zbog rasprostranjene dostupnosti jeftinih programera mikrokontrolera.


Upotreba uređaja koji se mogu programirati na terenu na mikro kontroleru mogu omogućiti ažuriranje firmvera ili dozvoliti kasne fabričke revizije proizvoda koji su sastavljeni, ali još nisu otpremljeni. Programabilna memorija također smanjuje vrijeme potrebno za implementaciju novog proizvoda.


Tamo gdje su potrebne stotine tisuća identičnih uređaja, upotreba dijelova programiranih u vrijeme proizvodnje može biti ekonomična. Ovi "maski programirani" dijelovi imaju isti program kao i logika čipa.


Prilagođeni mikrokontroler sadrži blok digitalne logike koji se može personalizirati za dodatne mogućnosti obrade, periferije i interfejse koji su prilagođeni zahtjevima aplikacije. Jedan primjer je AT91CAP iz Atmela.


Ostale funkcije mikrokontrolera

Mikrokontroleri obično sadrže od nekoliko do desetak ulazno / izlaznih pinova opšte namene (GPIO). GPIO pinovi su softverski konfigurirani za ulaz ili izlaz. Kada su GPIO pinovi konfigurirani za ulazno stanje, oni se često koriste za čitanje senzora ili vanjskih signala. Konfiguriran prema izlaznom stanju, GPIO pinovi mogu upravljati vanjskim uređajima kao što su LED ili motori, često indirektno, preko vanjske elektronike napajanja.


Mnogi ugrađeni sistemi moraju čitati senzore koji proizvode analogne signale. To je svrha analogno-digitalnog pretvarača (ADC). Budući da su procesori napravljeni da interpretiraju i obrađuju digitalne podatke, tj. 1s i 0s, oni nisu u stanju da urade ništa sa analognim signalima koji se mogu poslati na njega od strane uređaja. Tako se analogno-digitalni pretvarač koristi za pretvaranje dolaznih podataka u formu koju procesor može prepoznati. Manje uobičajena karakteristika na nekim mikrokontrolerima je digitalno-analogni pretvarač (DAC) koji omogućava procesoru izlaz analognih signala ili naponskih nivoa.


Pored pretvarača, mnogi ugrađeni mikroprocesori sadrže i razne tajmere. Jedan od najčešćih tipova tajmera je programabilni intervalski tajmer (PIT). PIT može ili da odbroji od neke vrednosti do nule, ili do kapaciteta registra brojača, prelazeći na nulu. Kada dostigne nulu, šalje procesor prekidaču koji pokazuje da je završio brojanje. Ovo je korisno za uređaje kao što su termostati, koji povremeno testiraju temperaturu oko njih da vide da li je potrebno uključiti klima uređaj, uključiti grijač itd.


Namjenski blok za širinu impulsa (PWM) omogućava CPU-u da kontrolira energetske pretvarače, otporna opterećenja, motore, itd., Bez upotrebe mnogo CPU resursa u uskim timer petljama.


Univerzalni asinkroni prijemnik / predajnik (UART) blok omogućava primanje i slanje podataka preko serijske linije sa vrlo malim opterećenjem na CPU. Namjenski hardver na čipu često uključuje i mogućnosti komunikacije s drugim uređajima (čipovima) u digitalnim formatima kao što su inter-integrirani krug (I²C), serijski periferni interfejs (SPI), univerzalna serijska sabirnica (USB) i Ethernet.