You are on page 1of 23

TELECOMENZI SI ELECTRONICA IN TRANSPORTURI

MICROCONTROLLER – ul ATMEGA 16 - Hardware, software , aplicatii

Capitolul 2

Sistemul de dezvoltare EasyAVR 4

Introducere

Sistemul de dezvoltare EasyAVR4 reprezintă o soluŃie completă pentru aplicaŃiile cu


microcontrolere AVR Atmel. A fost proiectat pentru a permite studenŃilor şi inginerilor să exploreze
cu uşurinŃă capacităŃile microcontrolerelor AVR. Facilitează interfaŃarea cu circuite externe şi cu o
gamă largă de periferice, permiŃând utilizatorului să se concentreze în dezvoltarea software.
Figura 4.1 prezintă aspectul general al plăcii. Fiecare componentă este marcată sau
numerotată. Aceste marcaje descriu conexiunile cu microcontrolerul, modul de operare şi furnizează
informaŃii utile. Nu sunt necesare multe scheme suplimentare deoarece toate informaŃiile relevante
sunt tiparite pe placă.

Microcomutatoarele (SWITCHES)

EasyAVR4 dispune de câteva dispozitive periferice. Înainte de a utiliza aceste dispozitive (în
programare), e nevoie să se verifice poziŃia microcontactelor (jumpers sau switches) care trebuie
poziŃionate conform programului. Switches sunt contacte cu două poziŃii – ON şi OFF care au rolul

1
TELECOMENZI SI ELECTRONICA IN TRANSPORTURI
MICROCONTROLLER – ul ATMEGA 16 - Hardware, software , aplicatii

de a stabili sau întrerupe un circuit electric. EasyAVR4 are trei grupuri de switch-uri.
Primul grup, SW1, permite conectarea între portul microcontrolerului cu dispozitive analogice
(PORTA) şi rezistoare externe conectate la plus sau la masa. Aceste rezistoare trebuie deconectate
de la pinii analogici de intrare, altfel ei vor afecta nivelul tensiunii de intrare. Când pinii portului
PORTA sunt folosiŃi ca intrări/ieşiri digitale, rezistoarele trebuie să fie conectate.
Al doilea grup, SW2, este folosit pentru a permite LED-urilor conectarea la PORTA, PORTB,
PORTC şi PORTD. De exemplu, dacă switch-ul pentru PORTB este OFF, toate led-urile PORT-ului
B vor fi stinse.
Partea superioară de 4 switch-uri ale lui SW3 este folosită pentru validarea comunicării SPI
cu cardul MMC. Partea inferioară de 4 switch-uri ale lui SW3 sunt folosite pentru validarea
afişajului 7- segmente. Dacă nu este nevoie de acest afişaj, aceste switch-uri trebuie să fie OFF.

PunŃi de legatură (JUMPERS)

Jumper-ii ca şi switch-urile, pot întrerupe sau stabili o legătură între două puncte. Dedesubtul
capacului de plastic al jumper-ului este un contact de metal, care face sau nu conexiunea.
De exemplu, interfaŃa de comunicare RS232 are doi jumperi, J11 şi J12, folosiŃi ca switch-uri. Ei
sunt folosiŃi pentru conectarea sau deconectarea pinului Rx la PD0 şi pinului Tx la pinul PD1 al
microcontrolerului. Conexiunea este făcută când jumper-ul este plasat între două contacte.

2
TELECOMENZI SI ELECTRONICA IN TRANSPORTURI
MICROCONTROLLER – ul ATMEGA 16 - Hardware, software , aplicatii

Mai mult, adesea jumper-ii sunt folosiŃi ca selectori între două posibile conexiuni prin folosirea
unui al treilea pin conector (contact comutator). Ilustrat ca în figura 4.4, contactul de mijloc poate fi
conectat la pinul din stânga sau din dreapta, depinzând de poziŃia jumper-ului.

Soclurile pentru UC

EasyAVR4 este livrat cu Atmega16 – 40 pin microcontroler. Utilizatorii îl pot inlocui cu alt
microcontroler care este compatibil la pini cu soclurile DIP40, DIP28, DIP20, DIP18, DIP14 .

Notă1: Sunt două mufe DIP40 cu diferiŃi pini de ieşire (SKT1 şi SKT2). Când punem
microcontrolerul de 40 de pini în mufa DIP40 alegem pe acela care corespunde. De exemplu,
Atmega8535 utilizează mufa SKT2, în timp ce Atmega8515 utilizează mufa SKT1.
Notă2: Cele 2 socluri sunt conectate in paralel, asa ca nu trebuie să fie mai mult de un
microcontroler pe placă.

3
TELECOMENZI SI ELECTRONICA IN TRANSPORTURI
MICROCONTROLLER – ul ATMEGA 16 - Hardware, software , aplicatii

Fig.4.5 Soclurile MCU


Notă: Jumper-ul J13 trebuie să fie conectat doar dacă se doreşte utilizarea
microcontrolerului DIP8 cu sursă de ceas externă.
Pinii microcontrolerului sunt îndreptaŃi spre diferite periferice ca în Fig.4.6. Toate porturile
au conexiune directă la conectorii Direct Port Access. Astfel de conectorii sunt tipic folosiŃi pentru
conectarea la perifericele externe ale plăcii sau pentru furnizarea punctelor folositoare la conectarea
logică digitală de verificare.
Toate porturile sunt conectate la leduri, butoane-apăsare switch-uri şi rezistoare cu sau fără
revenire care permit uşor monitorizarea şi testarea stărilor digitale ale pinului.
Unii pini sunt conectaŃi la alte periferice cum ar fi senzorul de temperatură, DS1820,
comunicaŃia RS-232, display-ul 7-segmente, LCD, etc.

Fig.4.6 Conectarea sistemului

Alimentarea

Ca sursă de alimentare, utilizatorii pot selecta oricare dintre alimentatoarele obişnuite: cablul
USB (în mod normal) sau alimentatorul de putere extern. În cazul alimentatorului USB, sistemul
trebuie conectat la PC folosind cablul USB, în timp ce jumper-ul J10 trebuie să fie conectat în
dreapta.
În cazul unui alimentator de putere extern, placa EasyAVR4 produce +5V utilizând un
regulator de tensiune, LM7805. Alimentatorul de putere extern poate fi AC sau DC, cu o tensiune

4
TELECOMENZI SI ELECTRONICA IN TRANSPORTURI
MICROCONTROLLER – ul ATMEGA 16 - Hardware, software , aplicatii

cuprinsă între 8V şi 16V şi jumper-ul J10 trebuie să fie setat în poziŃia -stânga. În Fig.4.7 se vede
USB şi conectorii pentru sursa de alimentare externă.

ON-BOARD USB 2.0 PROGRAMMER

Nu este nevoie de un echipament extern pentru programare, deoarece sistemul de dezvolatre


EasyAVR4 are propriul său “USB 2.0 programmer”. Tot ceea ce trebuie făcut este conectarea
sistemului la PC folosind cablul USB urmând apoi încărcarea programului în microcontroler prin
AVRprog programare software.
Notă: Nu este nevoie de reset manual pentru MCU, după programare. Programatorul va
reseta MCU automat.

5
TELECOMENZI SI ELECTRONICA IN TRANSPORTURI
MICROCONTROLLER – ul ATMEGA 16 - Hardware, software , aplicatii

Fig.4.10 On-Board USB Programmer

Oscilatorul

EasyAVR4 are pe placă un circuit oscilator care generează ceasul microcontrolerului. În


interiorul programului AVRprog se poate alege oricare dintre oscilatorul RC intern sau ceasul
extern. Oscilatorul extern este conectat la pinul XT1 al microcontrolerului. În cazul soclului DIP8
microcontrolerul nu are pin special de ceas dedicat numai pentru intarea de la oscilator. Deoarece
numărul pinilor este redus, pinul PB4 este multiplexat între I/O şi funcŃia de intrare a ceasului.

Fig.4.12 Oscilator

Dacă se doreşte folosirea pinului PB4 cu funcŃiile I/O trebuie folosit oscilatorul intern, RC.
Dacă nu este nevoie de funcŃia I/O a pinului PB4, atunci se poate folosi oscilatorul de pe placă prin
validarea jumper-ului J13. Se face astfel o conexiune directă între circuitul oscilator şi pinul PB4.
Notă: Jumper-ul J13 trebuie validat doar dacă se doreşte utilizarea microcontrolerului din

6
TELECOMENZI SI ELECTRONICA IN TRANSPORTURI
MICROCONTROLLER – ul ATMEGA 16 - Hardware, software , aplicatii

soclul DIP8 cu sursa ceas externă.

Fig.4.13 Conexiunea Oscilatorului cu MCU

Notă: Pentru simplificarea schemelor din acest manual, circuitul oscilator este reprezentat de
acest simbol:

LED –urile
Light Emitting Diodes (LEDs) sunt cele mai des folosite componente, de obicei pentru
prezentarea stărilor digitale ale pinilor. EasyAVR4 are 32 de leduri care sunt conectaŃe la PORTA,
PORTB, PORTC şi PORTD ale microcontrolerului.
Fiecare grup de opt leduri poate fi conectat sau nu, folosind switch-ul SW2. Fig.4.15 arată
conexiunea ledurilor la PORT A . Un rezistor este folosit în serie cu ledul pentru limitarea
curentului. În acest caz valoarea rezistorului este 1K.

7
TELECOMENZI SI ELECTRONICA IN TRANSPORTURI
MICROCONTROLLER – ul ATMEGA 16 - Hardware, software , aplicatii

Fig.4.14 Light Emitting Diodes

Ledul este conectat când switch-ul corespunzător, SW2 este ON. Când sunt conectate,
ledurile vor arăta starea pinilor corespunzători microcontrolerului; când nu sunt conectate, ledurile
întotdeauna vor fi OFF (stinse) , necontând ce stare are portul.

Fig.4.15 LED schematic

8
TELECOMENZI SI ELECTRONICA IN TRANSPORTURI
MICROCONTROLLER – ul ATMEGA 16 - Hardware, software , aplicatii

Comutatoarele de tip “apăsat”

Easy AVR4 are 32 butoane push. Acestea pot fi folosite pentru schimbarea starilor intrărilor
digitale ale porturilor microcontrolerului. Acolo este de asemenea un switch care acŃionează ca
RESET.
Schema comutatorului de Reset este aratată în schema 4.17.

Fig.4.16 Reset switch

Când butonul nu este apăsat, starea pinului este determinată de contactele legate la port.
În exemplul arătat în Fig.4.19, J6 este conectat la +5V, aşadar apăsarea butonului va produce
1 logic la pinul corespunzător.

9
TELECOMENZI SI ELECTRONICA IN TRANSPORTURI
MICROCONTROLLER – ul ATMEGA 16 - Hardware, software , aplicatii

În Fig.4.20 jumper-ul J1 este setat la +, aşadar cînd butonul nu este apăsat, rezistorul
conectează pinul PA3 al microcontrolerului la +5V.

10
TELECOMENZI SI ELECTRONICA IN TRANSPORTURI
MICROCONTROLLER – ul ATMEGA 16 - Hardware, software , aplicatii

Apăsarea butonului produce conectarea pinului port la masă (J6 este în poziŃie spre masă).
Astfel, doar când butonul este apăsat starea pinului microcontrolerului va fi 0 logic, altfel va fi
întotdeauna 1 logic.
În Fig.4.21 jumper-ul J1 este setat spre masă, aşadar când butonul nu este apăsat rezistorul
conectează pinul PA3 al microcontrolerului la 0V.

Apăsarea butonului produce conectarea pinului port la +5V (J6 este în poziŃie superioară).
Astfel, doar când butonul este apăsat starea pinului microcontrolerului va fi 1 logic, altfel va fi
întotdeauna 0 logic.

11
TELECOMENZI SI ELECTRONICA IN TRANSPORTURI
MICROCONTROLLER – ul ATMEGA 16 - Hardware, software , aplicatii

DISPLAY–ul 7 segmente

EasyAVR4 are un display 7-segmente conectat în mod multiplexat. Liniile de date sunt
conectate la Portul A în timp ce fiecare display este activat prin biŃii PB0 -PB3 ai Portului B (4 biŃi).

AFIŞAJUL LCD (mod grafic)

Afişajul LCD permite afişarea unor mesaje vizuale complexe. În timp ce displayul LCD
poate afişa numai caractere alfa numerice, cel GLCD poate fi folosit pentru a afişa mesaje sub forma
unor desene şi a unor bitmap-uri. Cel mai folosit LCD este cel cu rezoluŃia de 128x64 pixeli. Înainte
de a conecta GLCD-ul trebuie să programaŃi jumper-ul J8 în poziŃia sus. Contrastul GLCD-ului
poate fi ajustat cu ajutorul potenŃiometrului P1, care este situat în dreapta GLCD-ului.

12
TELECOMENZI SI ELECTRONICA IN TRANSPORTURI
MICROCONTROLLER – ul ATMEGA 16 - Hardware, software , aplicatii

LCD 2x16 în modul 4 Bit

Display-ul LCD standard este probabil cea mai utilizată componentă de vizualizare a datelor.
De obicei, poate afişa două linii de 16 caractere alfanumerice fiecare realizat din 5x8 pixeli.
Display-ul LCD comunică cu microcontrolerul printr-o magistrală de 4 sau 8 biŃi fiecare necesitând
folosirea unui conector diferit la Easy AVR4. Pentru folosirea magistralei pe 4 biŃi, LCD-ul ar trebui
plasat în partea stângă a plăcii chiar deasupra LED-urilor. Conexiunea cu microcontrolerul este
prezentată în Fig.4.28 unde nu sunt decat patru linii de date.
Este important de ştiut că LCD-ul ar trebui conectat sau deconectat de pe placa EasyAVR4,
numai când alimentarea este oprită.

13
TELECOMENZI SI ELECTRONICA IN TRANSPORTURI
MICROCONTROLLER – ul ATMEGA 16 - Hardware, software , aplicatii

LCD 2x16 în modul 8bit

Când folosim un display LCD în modul 8 bit, conectorul care este la comun cu GLCD-ul
trebuie utilizat şi el. Având 20 de pini iar LCD-ul doar 14 este nevoie de mai multă atenŃie în
plasarea LCD-ului. Altfel, poate fi deteriorat definitiv.
LCD-ul trebuie plasat în poziŃia corespunzatoare cu 2 pini liberi la stanga şi 4 pini liberi la
dreapta. Este important de notat că LCD-ul trebuie pus sau înlăturat din Easy AVR4 numai când s-a
oprit alimentarea. Înainte de a ataşa LCD-ul trebuie setat jumpeul J8 pe cea mai inferioară poziŃie .
Contrastul LCD-ul poate fi ajustat folosind un potenŃiometru P1 care se află la dreapta conectorului
GLCD/LCD.
NOTĂ: Este necesară o atenŃie specială când se poziŃionează LCD-ul. Altfel acesta poate fi
deteriorat.

14
TELECOMENZI SI ELECTRONICA IN TRANSPORTURI
MICROCONTROLLER – ul ATMEGA 16 - Hardware, software , aplicatii

In order to enable LCD, jumper


J8 should be set to the lower
position, labeled as CHAR

Fig.4.29
LCD 8-bit mode schematic

Comunicarea serială RS232 RS-232

Comunicarea RS-232 facilitează transferul de date punct la punct. Este în mod frecvent
utilizată în aplicaŃiile de stocare a datelor, pentru transferul acestora între microcontroler şi PC.
Pentru că nivelurile de tensiune ale microcontrolerului şi ale PC-ului nu sunt în mod direct
compatibile între ele, trebuie folosit un buffer de tranziŃie cum ar fi MAX232. Pentru a dispune de
un sistem mai flexibil, microcontrolerul este conectat la MAX232 prin doi jumperi: J11 si J12.
Jumperul J11 este folosit pentru a conecta linia Rx cu pinul PD0. J12 este folosit pentru a conecta
linia Tx cu pinul PD1.

15
TELECOMENZI SI ELECTRONICA IN TRANSPORTURI
MICROCONTROLLER – ul ATMEGA 16 - Hardware, software , aplicatii

16
TELECOMENZI SI ELECTRONICA IN TRANSPORTURI
MICROCONTROLLER – ul ATMEGA 16 - Hardware, software , aplicatii

Termometrul digital DS 1820

Termometrul digital DS1820 este destinat măsurării temperaturii mediului ambiant, având
gama cuprinsă între -55 grade Celsius şi 125 grade Celsius cu o marjă de eroare de +/- 0,5 grade
Celsius. El trebuie să fie corect aranjat în soclul la cei 3 pini furnizati de către EasyAVR4 (ca în
Fig.4.32), altfel DS1820 ar fi definitiv deteriorat. Pinul de date al lui DS1820 poate fi conectat fie la
pinul PC6 fie la PC7, prin intermediul jumperului J7.

Fig.4.33 DS1820 schematic

17
TELECOMENZI SI ELECTRONICA IN TRANSPORTURI
MICROCONTROLLER – ul ATMEGA 16 - Hardware, software , aplicatii

Tensiunea de referinŃă de 4.096V

Unele microcontrolere Atmel au integrate convertoare Analog/Digitale. Pentru ca acest


convertor să funcŃioneze, trebuie folosită tensiunea de referinŃă. Ea reprezintă o valoare maximă care
poate fi măsurată de microcontroler. EasyAVR4 foloseşte o referinŃă de tensiune de 4.096 V pentru
că numărul 4.096 reprezintă puterea lui 2, lucru care uşurează reprezentarea valorilor ca numere
binare în microcontroler. În cazul convertorului A/D de 10 biŃi, rezoluŃia trebuie să fie de 4mV /bit.
În cazul convertorului A/D de 12 biŃi rezoluŃia trebuie să fie de 1mV/bit.
Pinii de intrare analogică sunt plasaŃi pe PORTA al microcontrolerului. Pentru a măsura
semnalele analogice fără interferenŃe, rasuciŃi butonul corespunzător lui SW1 pe poziŃia OFF. Acest
lucru va deconecta pinul PORTA până la rezistorii de conectare.
AplicaŃiile conversiilor A/D sunt variate. Microcontrolerul preia semnalul analog de la pinul
de intrare şi îl transformă în valoare digitală. De fapt, poŃi măsura orice semnal analogic care intră în
gama acceptată de MCU. Cu tensiunea de referinŃă de 4.096V folosită (jumper J9 în poziŃie joasă)
această gamă este cuprinsă între 0V-4.096V. Dacă plasaŃi jumper-ul J9 în poziŃia de sus vor fi
folosiŃi 5V ca referinŃă de tensiune şi de aceea gama de măsurare va fi cuprinsă între 0V-5V.

Fig.4.34 Tensiunea de referinŃă 4.096

18
TELECOMENZI SI ELECTRONICA IN TRANSPORTURI
MICROCONTROLLER – ul ATMEGA 16 - Hardware, software , aplicatii

Fig.4.35
4.096 voltage reference schematic

Accesul direct la porturi

ToŃi pinii de intrare/ieşire ai microcontrolerului pot fi accesaŃi prin conectori amplasaŃi în


partea dreapta a plăcii. Pentru fiecare dintre PORTA, PORTB, PORTC,PORTD şi PORTE există un
conector cu 10 pini care asigură VCC, GND şi până la opt pini / port.
Aceşti conectori pot fi folosiŃi pentru mărirea sistemului cu plăci externe cum ar fi Serial
Ethernet, Compact Flash, MMC/SD, ADC, DAC, CAN, RTC, RS-485 etc. AsiguraŃi-vă că
perifericele de pe placă sunt deconectate de la microcontroler, prin setarea jumperilor, când
perifericele externe folosesc aceeaşi pini.

19
TELECOMENZI SI ELECTRONICA IN TRANSPORTURI
MICROCONTROLLER – ul ATMEGA 16 - Hardware, software , aplicatii

Fig.4.38
PORTC conection

20
TELECOMENZI SI ELECTRONICA IN TRANSPORTURI
MICROCONTROLLER – ul ATMEGA 16 - Hardware, software , aplicatii

Conectorul JTAG

Conectorul JTAG poate fi folosit ca interfaŃă programabilă serială sau ca sistem de


devirusare "on-Chip". Pentru sistemul de devirusare ON-Chip, în plus faŃă de pinii interfeŃei JTAG,
pinul RESET este monitorizat de debugger (cel care face devirusarea) pentru a fi capabil să
detecteze sursele sau semnalele externe de RESET. Sistemul de devirusare poate să tragă pinul
RESET în jos şi să reseteze înterg sistemul. InterfaŃa Jtag este accesată prin 4 pini ai
microcontrolerului:
- TMS: Test Mode Select,
- TCK: Test Clock,
- TDI: Test Data In,
- TDO: Test Data Out.

Fig.4.39
JTAG connector schematic

21
TELECOMENZI SI ELECTRONICA IN TRANSPORTURI
MICROCONTROLLER – ul ATMEGA 16 - Hardware, software , aplicatii

MMC/SD MMC/SD (MULTIMEDIA CARD)

Cardul MMC este folosit pentru stocarea informaŃiilor de către instrumentele portabile. De
exemplu o cameră foto digitală foloseşte cardul MMC pentru a stoca imagini. Cu un cititor de
carduri MMC se pot tansfera cu uşurinŃă datele în calculator. Microcontrolerul la EasyAVR4
comunică cu MMC prin protocolul SPI.
Computerele mai noi precum şi laptopurile dispun de sloturi SD care pot citi cardurile MMC.
Pentru a porni MMC card trebuie să activezi butoanele 1,2,3,4 şi SW3. Astfel liniile de
comunicaŃii SPI ale microcontrolerului şi “Chip Select” sunt conectate la MMC. Tensiunea de lucru
pentru EasyAVR4 este de 5V în timp ce tensiunea de lucru a cardului MMC este de 3.3V. De aceea
există un regulator de tensiune pe placă. Liniile de date de la microcontroler la cardul MMC trebuie
de asemenea ajustate la 3.3V

22
TELECOMENZI SI ELECTRONICA IN TRANSPORTURI
MICROCONTROLLER – ul ATMEGA 16 - Hardware, software , aplicatii

Fig.4.41 MMC Schematic

23