Casa > Exposició > Contingut

Disseny de microcontrolador integrat

Mar 08, 2019

Els microcontroladors han de proporcionar una resposta en temps real (previsible, encara que no necessàriament ràpid) als esdeveniments del sistema que estan controlant. Quan es produeixen certs esdeveniments, un sistema d’interrupció pot indicar al processador que suspendre el processament de la seqüència d’instruccions actual i que comenci una rutina de servei d’interrupció (ISR o "controlador d’interrupcions") que realitzarà qualsevol processament requerit basat en l’origen de l’interrupció, abans tornant a la seqüència d'instruccions original. Les possibles fonts d’interrupció depenen del dispositiu i sovint inclouen esdeveniments com un desbordament del temporitzador intern, completant una conversió analògica a digital, un canvi de nivell lògic en una entrada com, per exemple, un botó que es pressiona i les dades rebudes en un enllaç de comunicació. Quan el consum d'energia és important, ja que en els dispositius de bateria, les interrupcions també poden despertar un microcontrolador des d'un estat de baixa potència on el processador es deté fins que es requereixi alguna cosa per un esdeveniment perifèric.


Programes

Normalment, els programes de microcontroladors han de cabre en la memòria disponible al xip, ja que seria costós proporcionar un sistema amb memòria expansible externa. Els compiladors i els muntadors s'utilitzen per convertir els codis de llenguatge de muntatge i d'alt nivell en un codi de màquina compacte per a l'emmagatzematge a la memòria del micro-controlador. Depenent del dispositiu, la memòria del programa pot ser de memòria permanent, de només lectura, que només es pot programar a la fàbrica, o pot ser que el flash sigui alterable al camp o la memòria de només lectura esborrable.


Sovint, els fabricants han produït versions especials dels seus microcontroladors per ajudar al desenvolupament de maquinari i programari del sistema objectiu. Originalment, es van incloure versions EPROM que tenen una "finestra" a la part superior del dispositiu a través de la qual es pot esborrar la memòria del programa per la llum ultraviolada, preparada per a la seva reprogramació després d'un cicle de programació ("gravar"). Des de 1998, les versions EPROM són rares i han estat substituïdes per EEPROM i flash, que són més fàcils d'utilitzar (es poden esborrar electrònicament) i són més barates de fabricar.


Hi ha altres versions disponibles on es pot accedir a la ROM com a dispositiu extern i no a la memòria interna, tot i que aquestes són cada vegada més rares a causa de la disponibilitat generalitzada de programadors de microcontroladors barats.


L’ús de dispositius programables en un camp en un micro controlador pot permetre l’actualització de camp del microprogramari o permetre revisions tardanes de la fàbrica de productes que s’han assemblat però que encara no s’envien. La memòria programable també redueix el temps necessari per al desplegament d'un nou producte.


Quan es necessiten centenars de milers de dispositius idèntics, l’ús de peces programades en el moment de la fabricació pot ser econòmic. Aquestes parts de "màscara programada" tenen el programa establert de la mateixa manera que la lògica del xip, alhora.


Un microcontrolador personalitzat incorpora un bloc de lògica digital que es pot personalitzar per a la capacitat de processament addicional, perifèrics i interfícies que s’adapten als requisits de l’aplicació. Un exemple és l’AT91CAP d'Atmel.


Altres funcions del microcontrolador

Els microcontroladors solen contenir de diverses fins a desenes de pins d’entrada / sortida d’ús general (GPIO). Els pins GPIO són programari configurable per a un estat d’entrada o de sortida. Quan els pins GPIO estan configurats per a un estat d’entrada, sovint s’utilitzen per llegir sensors o senyals externs. Configurat a l’estat de sortida, els pins GPIO poden conduir dispositius externs com ara LED o motors, sovint indirectament, a través d’electrònica de potència externa.


Molts sistemes integrats necessiten llegir sensors que produeixin senyals analògiques. Aquest és el propòsit del convertidor analògic a digital (ADC). Atès que els processadors estan construïts per interpretar i processar dades digitals, és a dir, 1s i 0, no són capaços de fer res amb els senyals analògics que poden ser enviats per un dispositiu. Així, el convertidor analògic a digital s’utilitza per convertir les dades entrants en una forma que el processador pot reconèixer. Una característica menys comuna en alguns microcontroladors és un convertidor digital a analògic (DAC) que permet al processador emetre senyals analògics o nivells de tensió.


A més dels convertidors, molts microprocessadors incrustats també inclouen una varietat de temporitzadors. Un dels tipus de temporitzadors més comuns és el temporitzador d'interval programable (PIT). Un PIT pot explicar el compte enrere des d'un valor a zero o fins a la capacitat del registre de comptes, desbordant a zero. Un cop arribi a zero, envia una interrupció al processador indicant que ha acabat de comptar. Això és útil per a dispositius com ara termòstats, que comproven periòdicament la temperatura que els envolta per veure si necessiten activar el condicionador d’aire, activar l’escalfador, etc.


Un bloc dedicat de modulació per amplada de pols (PWM) fa que la CPU pugui controlar els convertidors de potència, les càrregues resistives, els motors, etc., sense utilitzar molts recursos de CPU en bucles de temporitzador ajustat.


Un bloc de receptor / transmissor asíncron universal (UART) permet rebre i transmetre dades a través d’una línia sèrie amb molt poca càrrega a la CPU. El maquinari dedicat en un xip també inclou sovint capacitats per comunicar-se amb altres dispositius (xips) en formats digitals com ara Circuit Inter-Integrat (I²C), Interfície perifèrica de sèrie (SPI), Universal Serial Bus (USB) i Ethernet. [26]