Privit din exterior, microcontrolerul mid-range produs de Microchip (de care ne vom ocupa in acesta carte) este un circuit integrat ordinar cu 8 pana la 68 de pini avand diferite tipuri ale capsulei.
Din punct de vedere al apartenentei la domeniul electronicii analogice sau digitale, este un hibrid continand atat elemente analogice (esantionarememorare, convertoare analogic-digitale, comparatoare, referinte de tensiune) cat si elemente digitale complexe specifice microprocesoarelor si sistemelor de dezvoltare (memorie RAM-volatila, memorie EEPROM-nevolatila, temporizatoare, registrii cu functii variate: Puls With Modulation - modulatie cu largime de puls, Universal Synchronous Asynchronous Receiver Transmiter - transmitator/ receptor universal sicron/ asincron etc.).
Ceea ce deosebeste esential un microcontroler de un circuit integrat analogic sau digital este faptul ca el nu valoreaza aproape nimic atat timp cat nu este programat, mai mult, neprogramat nu functioneaza nici macar oscilatorul acestuia! Programul software ii confera aceluiasi sistem cu microcontroler, puterea de a avea utilitati diferite desi schema hardware ramine aproape neschimbata. Avantajul unui microcontroler flash fata de unul clasic One Time Programable sau cu stergere prin expunere la radiatie ultravioleta, este posibilitatea de a rescrie memoria program a acestuia de cel putin 10000 de ori.
Daca programul nu functioneaza din prima incercare (e miracol daca functioneaza!) avem posibilitatea modificarii acestuia si rescrierea lui in memoria program a microcontrolerului. Inevitabil, editarea si testarea unui program, necesita cunostinte medii de programare si existenta unor dispozitive ajutatoare numite “unelte de dezvoltare”. Acestea sunt: programatorul, editorul, compilatorul, simulatorul, bootloaderul, si eventual emulatorul.