Sunteți pe pagina 1din 5

Cap.7 Convertorul A/D 7.

1 Introducere Achiziia de date este una dintre operaiile frecvent ntlnite n practica sistemelor dedicate unor operaii de comand i control. !"m#edded$. Interaciunea unui asemenea sistem cu mediul n care este el ncorporat presupune cule%erea de informaii din mediul e&terior prin intermediul unor senzori' prelucrarea acestora conform unui anumit al%oritm specific aplicaiei i e&ecuia controlului prin comanda unor elemente de e&ecuie. (n cazul n care semnalul furnizat de traductor este unul analo%ic se impune transformarea acestuia ntr)un semnal numeric pentru a putea #eneficia de puterea de calcul i fle&i#ilitatea prelucrrii numerice oferite de unitatea central a microcontrolerului. Conversia analo% numeric se #azeaz pe o du#l discretizare i anume una n timp numit e antionare i una n amplitudine numit cuantizare' operaii realizate de #locul de conversie A/D a microcontrolerului. *chema #loc a modulului de conversie A/D este prezentat n fi% 7.1 +e% 1,.1 p.--. D* /odulul de conversie poate lucra cu 10 sau 11 canale de intrare analo%ice !n funcie de ncapsulare$. *emnalul aplicat pe un pin de intrare !confi%urat n preala#il ca fiind de tip intrare analo%ic$ este folosit pentru a ncrca condensatorul #locului de e antionare i meninere !*ample and 2old$. 3ensiunea de pe acest condensator este semnalul de intrare n convertorul analo% numeric propriu zis. Acesta lucreaz pe principiul apro&imrilor succesive i la sfr itul intervalului de conversie furnizeaz la ie ire valoarea numeric !cuvnt #inar de 10 #ii$ a e antionului prelevat din semnalul de intrare. Caracteristica de transfer a convertorului este prezentat n fi% 7.4i% 1,.- p --, D* 3ensiunea de referin necesar operaiei de conversie este selecta#il prin *5 fie ca fiind tensiunea de alimentare a microcontrolerului !A6DD i A6**$ sau o tensiune de referin conectat din e&terior astfel A71/6+"48 i A7-/6+"4) 7.- +e%i trii modulului de conversie A/D /odulul de conversie lucreaz cu dou re%istre de date' AD+"*2 respectiv AD+"*9' folosite pentru stocarea rezultatului conversiei i trei re%istre de comand ADC:70' ADC:71 i ADC:7-. +e%istrul ADC:70 este utilizat pentru a selecta canalul de intrare precum i modulul ce conversie A/D !fi%. 7.1$ +e%. 1,.1 p--; D* +e%istrul ADC:71 permite confi%urarea pinilor de port i selecia tensiunilor de referin !fi%.7.<$

+e%.1,.- p. --; D* +e%istrul ADC:7- permite selectarea timpului de achiziie precum i a formatul rezultatului conversiei !fi%.=$ +e%. 1,.1 p --7 D* 7.1 >a ii ce tre#uie urmai pentru a realiza o conversie analo% di%ital 1. Confi%urarea modulului A/D Confi%urarea pinilor analo%ici' a tensiunii de referin i a intrrilor i ie irilor di%itale !ADC:71$ *electarea canalului analo%ic de intrare !ADC:70$ *electarea timpului de achiziie !ADC:7-$ *electarea oscilatorului necesar conversiei !ADC:7-$ >ornirea modulului de conversie !ADC:70$ -. Confi%urarea condiiilor de ntrerupere !dac este necesar$ *e va ter%e #itul ADI4 *e va seta #itul de validare a ntreruperilor modulului ADI" *e va seta #itul %eneral de validare a ntreruperilor ?I" 1. *e va a tepta timpul necesar achiziiei semnalului <. *e va da startul conversiei prin selectarea #itului ?:/D:7" din re%istrul ADC:70 =. *e a teapt sfr itul conversiei fie prin e&aminarea repetat a #itului ?:/D:7" fie prin pro%ramarea %enerrii unei ntreruperi. ;. *e cite te rezultatul conversiei din perechea de re%istre AD+"*2 i AD+"*9 i se ter%e #itul ADI4. Inainte de a ncepe o nou conversie tre#uie asi%urat o ntrziere de minim - 3AD dup care se repet pa ii de mai sus. !3AD este timpul de conversie pe #it$. Derularea n timp a procesului de conversie precum i termenii folosii sunt prezentate n fi% 7.; 4i% -;.- p =., +/ 7.< 3impul de achiziie >entru a avea acurateea necesar unei conversii tre#uie asi%urat un timp de achiziie minim care s permit condensatorului din #locul de e antionare s se ncarce la valoarea curent a e antionului prelevat. /odelul unei intrri analo%ice este prezentat n fi% 7.7

4i% 1,.1 p--1 D* Impedana sursei +* precum i impedana comutatorului +** influeneaz n mod direct timpul de ncrcare al condensatorului C2:9D. 6aloarea ma&im recomandat pentru impedana sursei +* este de -.=@A iar valoarea rezistenei comutatorului analo%ic depinde de tensiunea de alimentare !vezi fi% 7.7$. Dup ce canalul este selectat tre#uie asi%urat un timp minim de achiziie 3ACB naintea nceperii conversiei propriu zise. (n momentul n care ncepe conversia condensatorul C2:9D este decuplat de la circuitul de intrare i cuplat la intrarea convertorului A/D. 3impul de achiziie este dat de relaia "B 1,. 1 p -10 D* Iar durata unei ncrcri este dat de "B 1,.- p -10 3impul de achiziie minim calculat n condiiileC C2:9D D -=p4 +* D -.=@A "roarea de conversie D E ls# 6DD D =6 de unde rezult +** D -@A !vezi fi%.7.7$ 3emperatura .= oC "B 1,.1 p -10 D* 7.= Ale%ere frecvenei de tact pentru conversie 3impul de conversie per #it este nota cu 3AD. : conversie analo% numeric complet pe zece #ii necesit un interval de timp e%al cu 11.= 3AD. 4recvena de tact necesar conversiei este selecta#il prin *oft din re%istrul ADC:7- !#iii ADC* F-)0G$ i permite ale%erea uneia din urmtoarele opt opiuniC - 3:*C' < 3:*C' . 3:*C' 1; 3:*C' 1- 3:*C' ;< 3:*C sau oscilatorul +C intern al convertorului A/D. >entru o conversie A/D corect frecvena oscilatorului tre#uie aleas astfel nct s asi%ure un minim de 1'; Hs a a cum este indicat n specificaiile electrice ale microcontrolerului. (n ta#elul 7.1 sunt indicate valorile admisi#ile' pentru o conversie corect' ale frecvenei de tact necesar conversiei n funcie de frecvena la care lucreaz microcontrolerul. 3a#el -;.1 p =,- +/ 7. ; Conversia A/D (n fi%. 7.. este prezentat un ciclu de conversie A/D cu un timp de achiziie de 3ACB3 D < 3AD naintea nceperii conversiei propriu zise !timpul de achiziie este selecta#il *5 cu #iii ACB3 F-)0G din re%istrul de comand ADC:7-$.

4i% 1,.= p -11 D* Conversia ncepe prin setarea #itului ?:/D:7" din re%istrul ADC:70. Irmeaz intervalul de < 3AD selectat pentru de achiziie 3ACB3 dup care urmeaz un interval de 11 3AD rezervat conversiei propriu zise. Dup terminarea unei conversii se recomand o ntrziere de - 3AD naintea nceperii unui nou ciclu de conversie. Dup aceast ntrziere se declan eaz n mod automat un nou ciclu de conversie pe canalul selectat. :#servaii. +esetarea #itului ?:/D:7" pe durata unei conversii duce la suspendarea automat a acesteia caz n care coninutul re%istrelor de date AD+"*2 i AD+"*9 va rmne nemodificat la valoarea conversiei anterioare (naintea fiecrei operaii de e antionare condensatorul C2:9D este descrcat. Acest lucru aJut la funcionarea repetorului care v)a ncrca de fiecare dat condensatorul C2:9D n loc s)l ncarce sau s)l descarce n funcie de valoarea e antionului precedent (n fi% 7., este prezentat un e&emplu de pro%ram pentru o conversie A/D "&.1;.1 p =,< +/ 4i% -;.< p =,< +/ >inii portului sunt confi%urai ca pini de intrare. 3ensiunile de referin 6+"48 respectiv 6+"4) sunt tensiunile de alimentare a microcontrolerului !A6DD i A6**$. 9ucrul n ntreruperi este activat iar oscilatorul a fost ales ca fiind 4+C !tact o#inut de la oscilatorul +C intern al convertorului$ selectat cu valoarea 111 a #iilor ADC* F-)0G. :#servaie. (n cazul utilizrii oscilatorului intern al convertorului A/D se adau% un ciclu ma in 3CK de ntrziere naintea nceperii conversiei A/D :r%ani%rama pro%ramului este prezentat n fi% 7.10 4i%.-;.= p =,= +/ +ezultatul unei operaii de conversie este stocat n perechea de re%istre AD+"*2 i AD+"*9 pe 1; #ii. Cum rezultatul conversiei este doar de 10 #iti se pune pro#lema alinierii celor 10 #ii n cei 1; #ii ai re%istrului de date. Alinierile posi#ile ! la stn%a respectiv dreapta$ sunt selecta#ile prin ale%erea #itului AD4/ !din re%istrul ADC:7-$ i conduce la urmtoarele rezultate prezentate n fi% 7.11 4i%. -;.; p =,7 +/ (n ncheierea acestui para%raf indicm i o secven de iniiere a unei conversii A/D "&. -;.= p ;01 +/

Desf urarea lucrrii !propunere$ 1. Analizai pro%ramul scris n asam#lare pentru msurarea tensiunii continue de pe cursorul unui poteniometru conectat pe canalul zeroL Al modulului A/D. Irmrii modul cum se modific tensiunea afi at n funcie de poziia poteniometrului. -. +escriei n C pro%ramul pentru aplicaia de la punctul 1. 1. *criei un pro%ram n C pentru conversia A/D a unui semnal sinusoidal aplicat din e&terior de la %eneratorul de semnal din la#orator. Calculai frecvena de e antionare necesar dac semnalul este de 1 @2z Calculai timpul de achiziie pentru frecvena de e antionare determinat anterior *criei pro%ramul astfel nct valorile achiziionate s apar afi ate ntr)un ta#el pe ecranul unui >C /odificai pro%ramul astfel ca valoarea numeric a e antioanelor s fie aplicat unui convertor D/A cuplat n e&terior Irmrii simultan pe ecranul osciloscopului semnalul sinusoidal de la intrare i pe cel de la ie irea convertorului D/A /odificai amplitudinea i apoi frecvena semnalului sinusoidal de la intrare i urmrii efectul acestor modificri asupra semnalului de la ie irea convertorului D/A /odificai pro%ramul astfel nct s multiplicai valoarea fiecrui e antion cu o constant. Irmrii efectul de amplificare asupra semnalului refcut la ie ire convertorului D/A