Documente Academic
Documente Profesional
Documente Cultură
1. Introducere Pentru afiarea caracterelor alfanumerice (consacrate sau definite de utilizator), utilizarea dispozitivelor de afiare cu cristale lichide (LCD) n format matricial este modul cel mai comod i mai rspndit. Fiind o aplicaie complex, managementul datelor afiate trebuie asigurat de un microsistem (cu microprocesor sau microcontroler). n lucrarea de fa se va folosi un afiaj LCD tip L2432 (Seiko), ce permite afiarea caracterelor alfanumerice n format matricial 5x7, pe dou linii, cu cte 24 de caractere pe linie. Afiajul permite afiarea a 192 de caractere ASCII, n forma memorat n memoria fix a generatorului de caractere (CG ROM), precum i a maxim 8 caractere definite de utilizator n forma memorat n memoria volatil RAM (CG RAM). Cele maxim 8 caractere sunt disponibile la un moment dat al desfurrii programului de afiare. Pe durata ntregului program, caracterele pot fi schimbate, modificnd coninutul memoriei CG RAM, ceea ce permite utilizarea unui numr mai mare dect 8 caractere (capacitatea de memorare maxim a memoriei RAM a generatorului de caractere definite de utilizator). La elaborarea programului de control al afiajului trebuie inut cont c simultan pe afiaj nu pot fi vzute dect maxim 8 caractere definite de utilizator. Pentru controlul afiajului se folosete un sistem de dezvoltare tip PK-HCS12C32 pentru microcontrolere de 16 bii MC9S12C32 (Motorola). Kitul de dezvoltare are i uneltele software necesare dezvoltrii programelor, cum ar fi compilatorul pentru limbaj de programare C/C++, linkeditorul, debuggerul etc. Cu resursele sistemului de dezvoltare, aplicaia studiat n lucrarea de laborator va fi dezvoltat n limbaj C, cu adaptrile necesare funcionrii microcontrolerului. 2.1 Schema bloc a dispozitivului de afiare L2432 n figura 9.1 este dat schema bloc a dispozitivului de afiare L2432 (Seiko).
Dispozitivul de afiare se conecteaz la microsistemul pe care l deservete prin intermediul magistralei de date DB0~7 (bilateral, se pot scrie/citi date n/din controlerul dispozitivului de afiare) i prin intermediul a trei linii de control, astfel: - RS - selecie registru (Register Selection). Semnalul de pe aceast linie selecteaz tipul registrului intern din controlerul dispozitivului de afiare (registru de date sau registru de instruciuni);
- R/W - citete/scrie (Read/Write). Semnalul de pe aceast line precizeaz dac operaiunea cu registrele interne ale dispozitivului de afiare este scriere sau citire; - E - autorizare (Enable). Semnalul de pe aceast linie activeaz sau dezactiveaz conectarea controlerului dispozitivului de afiare la microsistem (pentru transmiterea de date sau de instruciuni). Pentru alimentarea dispozitivului de afiare sunt prevzute dou linii: VDD (conectat la o tensiune cu voloarea tipic 5 V) i VSS (conectat la mas GND). Mai exist o linie notat VLC - tensiune de comand cristale lichide (Liquid crystal driving voltage). Tensiunea pe aceast linie variaz ntre 0 i VDD. Funcie de valoarea acestei tensiuni, se va controla contrastul afiajului. Dac linia este lsat n aer (neconectat), pe afiaj nu apare niciun caracter, chiar dac toate celelate condiii de programare i semnal sunt corect ndeplinite. Controlerul dispozitivului de afiare realizeaz secvenele de semnale necesare controlului panoului cu matricile de afiare de tip 5x7 puncte, conform poziiilor pe care trebuie scrise informaiile. 2.2 Schema bloc a controlerului KS0066 n figura 9.2 se d schema bloc a controlerului KS0066 folosit n sistemul de afiare. Semnificaia diferitelor blocuri va rezulta din capitolele ce urmeaz.
2.3 Instruciuni de utilizare Registre Controlerul (KS0066) are dou tipuri de registre de 8 bii: registrul de instruciuni (IR) i registrul de date (DR). Acestea sunt selectate cu semnalul selecie registru (RS), ca n Tabelul 1. Registrul de instruciuni IR stocheaz codurile de instruciuni, cum ar fi tergere afiaj sau cursor home i informaiile de adres a datelor RAM afiate (DD RAM) sau generatorul de caractere (CG RAM). Registrul de instruciuni poate fi scris de ctre unitatea cu microcontroler, dar nu poate fi citit. Registrul de date DR stocheaz temporar datele ce trebuie scrise n DD RAM sau CG RAM sau datele citite de la DD RAM sau CG RAM. Pentru a scrie date, datele scrise n registrul de date DR de ctre unitatea cu microcontroler sunt n mod automat scrise n DD RAM sau CG RAM printr-o operaie intern. Pentru a citi date, atunci cnd adresa datei este scris n registrul de instruciuni IR, data corespunztoare este extras din registrul de datre DR printr-o operaie intern. Apoi unitatea cu microcontroler citete data din registrul de date DR. Dup operaia de citire, se fixeaz urmtoarea adres i data din DD RAM sau CG RAM este citit de la adres i preluat de registrul de date DR pentru urmtoarea operaie de citire.
Flagul Busy (ocupat) (BF) Flagul busy indic dac modulul este gata s accepte urmtoarea instruciune. Dup cum se arat n Tabelul 1, semnalul este scris la DB7 dac RS = 0 i R/W = 1. Dac starea este 1, modulul este n ciclu de funcionare intern i instruciunea nu poate fi acceptat. Dac flagul busy este n starea 0, se poate scrie urmtoarea instruciune. Ca urmare, starea flagului busy trebuie testat nainte de executarea unei instruciuni. Pentru a executa o instruciune fr a testa starea flagului, trebuie s se atepte mai mult dect timpul necesar executrii instruciunii precedente. n capitolul Descrierea instruciunilor se gsete timpul necesar fiecrei instruciuni. Contorul de adrese (AC) - Address Counter Contorul de adrese (AC) precizeaz o adres atunci cnd data este scris n DD RAM sau CG RAM i cnd este extras prin citire data stocat n DD RAM sau CG RAM. Dac o instruciune de setare adres (pentru DD RAM sau CG RAM) este scris n registrul de instruciuni IR, informaia despre adres este transferat din registrul de instruciuni IR n contorul de adrese AC. Cnd datele afiate sunt scrise n sau citite din DD RAM sau CG RAM, contorul de adrese AC este incremetat sau decrementat automat, conform cu modul de introducere fixat. Coninutul contorului de adrese AC este extras la ieirile DB0 la DB6 dac RS = 0 i R/W = 1, dup cum se prezint n Tabelul 1. Memoria RAM a datelor afiate (DD RAM) - Display Data Random Access Memory Memoria DD RAM are capacitatea pn la 80 x 8 bii, stocnd date pentru 80 de caractere cu coduri de 8 bii. Unele zone de stocare ale memoriei DD RAM, nefolosite la afiare, pot fi utilizate ca locaii de memorie de date RAM generale. O adres DD RAM care urmeaz a fi nscris n contorul de adrese AC se exprim n hexazecimal astfel: De exemplu, adresa DD RAM 07 Corespondena ntre adresa DD RAM i digiii afiai pe panoul LCD este prezentat mai jos:
Adresele locaiilor de memorie DD RAM Adresele locaiilor de memorie DD RAM i digiii afiai pe panoul LCD sunt n urmtoarea coresponden pentru modulele LCD comandate cu factor 1/16. Un controler poate afia maxim 80 de caractere.
Se observ c ultima adres de pe prima linie (27H) i adresa de nceput a celei de-a doua (40H) nu sunt consecutive. Adresele locaiilor de memorie DD RAM pentru modulul de afiaj L2432 folosit n cadrul lucrrii de fa sunt prezentate mai jos.
Generatorul de caractere ROM (CG ROM) Character Generator Read Only Memory Memoria CG ROM genereaz abloanele caracterelor pentru matricea de 5x7 puncte pornind de la codurile de 8 bii ale caracterelor. n modulele cu caractere n format matricial 5x7 puncte, generatorul de caractere CG genereaz 192 de tipuri de caractere. Tabelul 2 prezint corespondena ntre codurile caracterelor din CG ROM i abloanele craracterelor respective n format matricial de 5x7 puncte. Generatorul de caractere RAM (CG RAM) Character Generator Random Access Memory Memoria CG RAM este folosit pentru a crea prin program abloane n mod liber. n memoria CG RAM pot fi scrise abloane n format matricial de 5x7 puncte pentru 8 tipuri de caractere. n Tabelul 3 se prezint abloane de caractere create R i ), precizndu-se adresele CG RAM i datele CG RAM.
Pentru a afia un caracter cu ablon creat, codul caracterului scris n coloana din stnga a tabelului este scris n DD RAM n coresponden cu poziia pe afiaj (digit). Zonele nefolosite pentru afiare sunt disponibile ca locaii RAM de memorie de date generale.
* - valoare indiferent a bitului Note: - n datele CG RAM, 1 nseamn selecia afiajului, iar 0 neselecia; - Biii codurilor de caracter 0 la 2 i biii de adres CG RAM 3 la 5 sunt n coresponden (3 bii 8 octei); - Biii de adres CG RAM 0 la 2 specific poziia liniei pentru ablonul caracterului, linia 8 a ablonului este poziia cursorului, pentru care se afieaz rezultatul funciei logice SAU ntre cursor i data CG RAM. Pentru a afia cursorul, se fixeaz la 0 data liniei 8. Dac data este schimbat n 1, bitul corespunztor este afiat, indiferent de cursor; - Poziiile coloanelor ablonului caracterului corespund biilor de date 0 la 4 din CG RAM, iar bitul 4 se plaseaz la captul din stnga. Bii 5 la 7 din CG RAM nu sunt afiai, dar pot fi folosii ca date RAM de tip general. - Cnd se lucreaz cu ablonul unui caracter din CG RAM, se fixeaz n 0 toi biii 4 la 7 din codul caracterului. Biii 0 la 2 determin care ablon va fi extras. Deoarece bitul 3 nu este valabil, 00H i 08H selecteaz acelai caracter. Circuitul de control al cursorului/licrire - Cursor/Blink Control Circuit Circuitul poate genera cursorul sau efectul de licrire. Cnd numrtorul de adrese (AC) selecteaz adreasa DD RAM, pe poziia digitului corespunztor adresei apare cursorul sau efect de licrire. Cnd contorul de adres AC are coninutul 08H, cursorul sau efectul de licrire apare pe poziia digitului 9 de pe linia 1, cum se prezint mai jos. Cursorul sau efectul de licrire apar i atunci cnd se selecteaz memoria RAM a generatorului de caractere (CG RAM) de ctre numrtorul de adrese. n acest caz cursorul sau efectul de licrire nu au nicio semnificaie.
3. Descrierea instruciunilor Cnd o unitate cu microprocesor comand controlerul de pe modulul de afiare LCD, respectiva unitate controleaz direct numai dou registre ale controlerului: registrul de instruciuni (IR) i registrul de date (DR). nainte s nceap o operaiune intern, controlerul stocheaz temporar informaiile de control n aceste registre, pentru a permite interfaarea cu diferite tipuri de microprocesoare sau circuite integrate periferice de control ce funcioneaz la diferite viteze i a le adapta cu viteza intern de lucru a controlerului. n Tabelul 4 se prezint instruciunile i timpul lor de execuie. Tabelul 4. Lista instruciunilor
* : bit indiferent I/D=1: incrementare B=1: licrire ON N=1: umplere 1/16 I/D=0: decrementare B=0: licrire OFF N=0: umplere 1/8 sau 1/11 ACG : adres CG RAM ADD : adres DD RAM AC : adres GC RAM S=1: deplasare afiaj S/C=1 deplasare afiaj F=1: matrice 5x10 puncte S=0: fr deplasare afiaj S/C=1 micare cursor F=0: matrice 5x7 puncte D=1: afiaj ON R/L=1: deplasare dreapta BF=1: operaie intern n desf. D=0: afiaj OFF R/L=0: deplasare stnga BF=0: se poate accepta instructiune C=1: cursor ON DL=1: 8 bii C=0: cursor OFF DL=0: 4 bii ** Timpul de execuie din tabelul de mai sus indic valoarea maxim cnd frecvena oscilatorului fosc este 250 kHz. Cnd fosc se schimb, se schimb i timpul. De exemplu, dac fosc = 270 kHz, timpul de execuie este 40 s x 250/270 = 37 s. Cnd controlerul execut o instruciune i este n desfurare o operaiune intern, controlerul nu va accepta i executa nicio alt instruciune, cu excepia instruciunii Flag Ocupat / Citire adres (Busy Flag / Address Read). Deoarece flagul ocupat (busy) este setat la valoarea 1 cnd o instruciune este n curs de execuie, nainte de a trimite de la microprocesor spre controler o alt instruciune se testeaz starea flagului i trebuie s ne asigurm ca aceasta este 0. Pentru a transmite instruciuni far testarea flagului ocupat (busy) trebuie s ne asigurm c intervalul de timp dintre dou instruciuni este mai mare dect timpul de execuie al instruciunii precedente.
Dup executarea unei operaiuni de scriere/citire n/din CG/DD RAM, contorul de adrese al memoriei RAM este incrementat sau decrementat cu o unitate n mod automat. Timpul de la frontul cztor al flagului ocupat (busy) pn la sfritul rennoirii contorului de adrese (tADD) este prezentat mai jos. 4. Iniializare 4.1 Iniializare automat Sistemul este inializat automat la stabilirea alimentrii, dac sunt ndeplinite urmtoarele condiii pentru sursa de alimentare:
setare funcie DL = 1 : lungimea interfeei de date: 8 bii N = 0, F = 0 : umplere 1/8, font caracter: matrice de 5x7 puncte - control afiaj ON/OFF D = 0 : afiaj OFF C = 0 : cursor OFF B = 0 : licrire OFF - fixare mod introducere I/D = 1 : incrementare S = 0 : afiajul nu se deplaseaz Deoarece unele condiii fixate la iniializare pot fi neconvenabile n aplicaia modulului afiaj LCD, ulterior se execut instruciunea de setare funcie. Flagul busy indic ocupat pn se termin iniializarea. Starea ocupat se menine nc 20 ms dup ce VDD atinge 4,5 V. Cnd condiiile pentru sursa de alimentare nu sunt ndeplinite, iniializarea automat nu se execut. Iniializarea se execut n acest caz folosind instruciuni, ca n paragraful 4.2 Iniializare cu instruciuni. 4.2 Iniializare cu instruciuni Dac iniializarea automat nu a fost executat datorit nendeplinirii condiiilor necesare de ctre sursa de alimentare, se folosete o interfa de date de 8 sau de 4 bii (funcie de aplicaie) i instruciunile din Tabelul 4 i Tabelul 5 pentru iniializare. Cum nu se poate ti dac lungimea interfeei de date a fost setat la 8 sau 4 bii la conectarea alimentrii, se execut de dou ori instruciunea setare funcie pentru a fixa lungimea interfeei de date la 8 bii i apoi se fixeaz lungimea dorit pentru interfaa de date, prin executarea adecvat a instruciunii setare funcie.
5. Descrierea instruciunilor 5.1 tergere afiaj terge afiajul i aduce cursorul pe pozitia iniial (home) la adresa 0. La toate adresele DDRAM se scrie codul "spaiu" 20h, iar n contorul de adrese (AC) se nscrie adresa DDRAM 0, iar
dac a fost mutat, displayul revine pe poziia iniial. Cursorul revine pe captul din stnga al liniei 1, cu excepia M4024. n cazul M4024, cnd cursorul sau clipirea sunt pe linia 3 sau 4, acesta revine la captul din stnga al liniei 3. Dup executarea instruciunii tergere afiaj, se seteaz bitul I/D = 1 (incrementare) n funciile mod de intrare.
Aduce cursorul pe pozitia iniial (home). n contorul de adrese (AC) se seteaz adresa DDRAM 0. Afiajul deplasat revine pe poziia iniial (home) i coninutul DDRAM nu se schimb. Cnd cursorul sau clipirea este ON, el revine pe captul din stnga al liniei 1, cu excepia M4024. n cazul M4024, cnd cursorul sau clipirea sunt pe linia 3 sau 4, atunci acesta revine la captul din stnga al liniei 3. 5.3 Setare mod intrare
Fixeaz direcia deplasrii cursorului i dac informaia afiat pe display se deplaseaz atunci cnd datele sunt scrise sau citite. I/D: adresa DDRAM este incrementat sau decrementat cu 1 cnd un cod caracter este scris n sau citit din DDRAM (valabil pentru scriere/citire n/din CGRAM). Cnd I/D = 1, adresa este incrementat cu o unitate i cursorul sau clipirea se deplaseaz spre dreapta. Cnd I/D = 0, adresa este decrementat cu o unitate i cursorul sau clipirea se deplaseaz spre stnga. S: daca S = 1, ntregul display este shiftat spre dreapta sau stnga pentru scriere n DDRAM. Poziia cursorului nu se schimb, numai coninutul afiajului se mut. Nu se execut mutare display pentru citire din DDRAM. Cand S = 1 i I/D = 1, displayul se mut cu un digit spre stnga dup ce data a fost scris n DDRAM. Cnd S = 1 i I/D = 0, displayul se mut cu un digit spre dreapta dup ce data a fost scris n DDRAM. Dac S = 0 nu apare shiftare a afiajului. 5.4 Control afisaj ON/OFF
Asigur comutarea ON/OFF a ntregului afiaj, a cursorului i controleaz clipirea cursorului. Cnd D = 1, displayul este ON Cnd D = 0, displayul este OFF. Dac se folosete D = 0, datele afiate rmn n DDRAM. Datele pot fi afiate din nou fixnd D = 1. C: Cnd C = 1, cursorul este afiat; Cnd C = 0, cursorul nu este afisat; Cursorul este afiat pe linia de puncte de sub fonturi. B: Cnd B = 1, caracterul de pe poziia cursorului ncepe s clipeasc; Cnd B = 0, caracterul nu clipete. D:
Pentru a clipi, toate punctele negre i caracterul sunt comutate la fiecare cca 0,4 s, pentru frecvena a oscilatorului = 250 kHz. Cursorul i clipirea pot fi active n acelai timp.
Asigur deplasarea cursorului i mutarea afiajului fr modificarea coninutului memoriei DDRAM. Poziia cursorului corespunde coninutului contorului de adrese (AC). Instruciunea este util la corectarea sau refacerea coninutului afiajului, deoarece poziia cursorului sau a displayului se poate modifica fr a scrie sau citi datele afiate. Pentru un display cu dou linii, cursorul este deplasat de pe poziia digitului 40 (adresa DDRAM 27) a liniei 1 pe poziia 1 a liniei 2. Informaiile afiate pe liniile 1 i 2 sunt mutate n timp ce comanda "mutare display" deplaseaz orizontal coninutul fiecrei linii. Totui coninutul liniei 1 nu este deplasat pe linia 2 i nici coninutul liniei 2 nu este deplasat pe linia 1; NOTA: M1641 funcioneaz intern ca un display de 8 caractere x 2 linii, L1614 ca dispaly cu 32 caractere x 2 linii, L2014 ca display cu 40 caractere x 2 linii i M4024 ca dou displayuri cu 40 caractere x 2 linii. (paragraful "Locaii de adres" din documentaie). S/C 0 0 1 1 R/L 0 1 0 1 Funcionare Poziia cursorului este mutat spre stnga (contorul de adrese este decrementat cu 1) Pozitia cursorului este mutat spre dreapta (contorul de adrese este incrementat cu 1) ntregul display se mut spre stnga mpreun cu cursorul ntregul display se mut spre dreapta mpreun cu cursorul
Funcia "setare funcionare" fixeaz lungimea de date a interfeei (4 sau 8 bii paralel), numrul de linii ale displayului i tipul de font caracter (5x7 sau 5x10). DL: lungimea datei n interfa Cnd DL = 1, lungimea datei este fixat la opt bii (BD7 la DB0). Cnd DL = 0, lungimea datei este fixat la patru bii (DB7 la DB4). Cu o interfa de 4 bii, mai nti se transfer cei 4 bii superiori, apoi cei 4 bii inferiori. N: cnd N = 1, serviciul este 1/16; cnd N = 0, serviciul este 1/8 sau 1/11. F: fonturile pentru caractere Cnd F = 1, fontul pentru caractere este fixat la matrice de 5x10 puncte; Cnd F = 0, fontul pentru caractere este fixat la matrice de 5x7 puncte. Dac N este fixat la valoarea 1, F devine "indiferent".
10
N 0 0 1
F 0 1 *
O instruciune de setare funcie trebuie s fie executat nainte de toate instruciunile, cu excepia instruciunii citire flag ocupat / adres. Dac se execut mai nti o alt instruciune, nu este efectiv nicio lungime a datelor pentru interfa. 5.7 Fixare adres CG RAM
Fixarea adresei CGRAM este exprimat binar prin AAAAAA i se transfer contorului de adrese (AC). Data scris sau citit de procesor este n sau de la CGRAM. Prima adres CG RAM este 40h, cand AAAAAA = 000000. 5.9 Fixare adres DD RAM
Fixarea adresei DDRAM se exprim binar prin AAAAAAA i se transfer contorului de adrese (AC). Data scris sau citit de procesor este n sau de la DD RAM. Cnd N = 0 (display cu 1 linie), adresele sunt de la 00H la 40H. Cnd N = 1 (display cu 2 linii: M1632, L1642, L1652, L2012, L2022, L2432, L4042), adresele folosite pentru linia 1 (AAAAAA) sunt de la 00H la 27H, iar cele pentru linia 2 sunt de la 40H la 67H. Pentru M1641, L1614, L2024 si M2024, vezi paragraful "Locaii de adres" din documentaie. 5.9 Citire flag ocupat/adres
Se citete flagul "ocupat", indicnd dac modulul lucreaz ntr-o operaiune inten din cauza instruciunii anterioare. Cnd BF = 1, modulul execut o operaiune intern i instruciunea urmtoare nu poate fi acceptat pn cnd BF nu devine 0. Cnd BF = 0, instruciunea urmtoare poate fi acceptat. Ca urmare, trebuie ca BF = 0 nainte de a scrie o nou instruciune. Valoarea binar AAAAAA a contorului de adrese (AC) este citit n acelai moment ca i flagul "busy". Adresele contorului de adrese sunt folosite att pentru CG RAM ct i pentru DD RAM, iar instruciunea de fixare adres de dinaintea executrii acestei instruciuni arat dac adresa este de la CG RAM sau DD RAM.
11
5.10 Scrie date n CG RAM sau DD RAM Se scrie o dat binar de 8 bii DDDDDDDD n CG RAM sau DD RAM. Adresa CG RAM sau DD RAM fixat naintea acestei instruciuni selecteaz zona de RAM specific. Dup scriere, adresa este incrementat sau decrementat automat, dup cum s-a fixat modul de intrare. Astfel, modul de intrare setat determin dac displayul se shifteaz sau nu dup o operaiune de scriere.
Se citete o dat binar de 8 bii DDDDDDDD din CG RAM sau DD RAM. Adresa CG RAM sau DD RAM fixat naintea acestei instruciuni selecteaz zona de RAM specific. Dac nu s-a executat nicio instruciune de fixare a adresei naintea unei instruciuni de citire, prima dat citit nu este valabil. Data este n mod normal citit la timpul al doilea dac se execut citiri consecutive. Pentru DD RAM, dac s-a executat o instruciune de deplasare cursor chiar nainte de citrea DDRAM, nu mai este necesar s se execute o instruciune de fixare adres, deoarece instruciunea deplasare cursor realizeaz acest lucru. Dup o operaiune de citire, adresa este n mod automat incrementat sau decrementat, conform cu modul de intrare fixat, dar displayul nu este shiftat conform modului de intrare ales. NOTA. Contorul de adrese (AC) este automat incrementat sau decrementat cu o unitate conform modului de intrare selectat dup ce se execut o instruciune de scriere n CGRAM sau DDRAM. Dac o instruciune de citire se execut imediat dup o astfel de instruciune, informaia din RAM specificat de contorul de adrese (AC) nu este extras. Data corect este extras n urmtoarele condiii: -- se execut o instruciune de fixare adres chiar nainte de o instruciune de citire; -- pentru DD RAM, o instruciune de deplasare a cursorului se execut imediat nainte de o instruciune de citire; -- a doua instruciune sau urmtoarele se execut succesiv cu o instruciune de citire. 6. Interfaarea cu uniti cu microprocesor Modulele LCD cu controler propriu pot fi interfaate cu uniti cu microprocesor de 4 i 8 bii. 6.1 Interfaare n funcionare pe 8 bii Cnd interfaa de date este de 8 bii, datele se transfer folosind magistrala de date DB0 la DB7. 7. Sistemul de dezvoltare cu microcontroler Pentru realizarea aplicaiei de afiare pe modul matricial LCD s-a folosit kitul SofTec PKHCS12C32. Sistemul permite dezvoltarea de aplicaii pentru microcontrolere de tip Motorola MC9S12C32. Principalele caracteristici ale microcontrolerului MC9S12C32 sunt:
12
nucleu de 16 bii de nalt performan; memorie FLASH de 32 KB; memorie RAM de 2 KB; o interfa serial de comunicaii asincrone (SCI); o interfa serial pentru periferice (SPI) un modul timer de 16 bii cu 8 canale (TIM); generator de impulsuri cu modulare n durat de 8 bii cu 6 canale (PWM); un convertor analog digital de 10 bii cu 8 canale (ADC); un modul CAN compatibil software cu standardul CAN 2.0 A, B (MSCAN); modul generator reset clock (CRG); magistral cu viteza de 25 MHz; domeniul tensiunii de intrare de la 2,97 la 5,5 V; mod de depanare cu sistem single wire (BDM); modul de depanare avansat, incluznd puncte de ntrerupere (breakpoints) i buffer de modificare a desfurrii programului (DBG12) Kitul de dezvoltare folosete avantajele mediului de dezvoltare integrat (IDE) Metrowerks CodeWarrior (care grupeaz Editor, Asamblor, Compilator C i Debugger) i ale interfeei Motorola BDM, care permite ncrcarea i depanarea aplicaiei utilizator n memoria FLASH a microcontrolerului. mpreun cu CodeWarrior, kitul de dezvoltare asigur uneltele necesare pentru a scrie, compila, ncrca, emula in-circuit i depana codul utilizator. Executarea programului la ntreaga vitez permite testarea hardware i software n timp real. Kitul PK-HCS12C32 se conecteaz la calculatorul gazd folosind un port USB. n Figura 9.3 este interfaa USB BDM ce permite ncrcarea fiierelor executabile obinute n mediul IDE Metrowerks CodeWarrior (dup compilare i linkeditare) i depanarea aplicaiei (folosind comenzi ale mediului de dezvoltare generate de calculatorul gazd).
13
Fig. 9.4 Interfaa USB BDM a sistemului de dezvoltare PK-HCS12C32 cu microcontroler Motorola MC9S12C32
n Figura 9.4 se d schema electric a unitii centrale cu microcontroler Motorola MC9S12C32, din sistemul de dezvoltare PK-HCS12C32 i modul de conectare a dispozitivului de afiare LCD tip L2432. Datele necesare afiajului LCD sunt vehiculate prin intermediul portului B (PB0, , PB7), n timp ce liniile de control al afiajului se conecteaz n portul A, dup cum urmeaz: linia RS n PA0, linia R/W n PA1 i linia E n PA2.
14
15