Avr lecke 22

A vezérlő Atmega8 ADC a következő jellemzőkkel rendelkezik

  • 10-bites felbontással
  • Az átalakítás a leolvasott 13-250 mikroszekundum, attól függően, hogy a bit mélység mérés, és az óra oszcillátor frekvenciáját, időzítés vezérlő,
  • Támogatás a start megszakítás,

Van egy csomó más jellemzők, mi is találkoztunk a jövőben.







Miként működik a digitális átalakítás?

A referencia feszültség veszünk, és összehasonlítjuk a mért. Ennek megfelelően a referencia feszültség mindig nagyobbnak kell lennie, mint a mért. Ha nem, akkor kell használni feszültség elválasztó.

ábrák vázlatosan a mérési folyamat

Avr lecke 22

Szegmens - a mérési tartományban. Ez a nulla és a referencia feszültség. Egy kéz - a mért feszültség.

Ez a szegmens van osztva a felére, és az ADC becslések, amelyben a fele az alkalmazott feszültség

Ha ez az oldalán a földön, a legnagyobb helyi értékű bit az eredmény kerül rögzítésre 0, és ha az oldalán a maximális feszültség, az egységet. Mi lesz egy. Aztán, hogy a fele a szegmens, amelyen a mért feszültség két részre oszlik több, és az ADC intézkedéseket újra, milyen már fél ebben a szegmensben, mi a feszültség mérésére

Avr lecke 22

Értékelés megy ugyanazon az elven - amelyhez oldalán a szegmensben. Esetünkben ez 0 lesz és nulla van írva a következő legkisebb helyiértékű

Aztán megint, egy negyedik rész van osztva a felére és újra értékeli az ADC, ahol a szegmens

Avr lecke 22

És az ADC és folytatja ezt a folyamatot, amíg nincs vége cella bit. Azaz, ha használjuk a 10 bites módban, akkor. illetve és 10 lesz hasonló méretű és töltete 10 bites érték. Minél több bit, annál jobb az eredmény, de ez több időt igényel, és sokkal komolyabb és pontos ADC. Ezzel az eredménnyel, akkor könnyen kiszámítható az érték a mért feszültség. Tudjuk. hogy ha van egy 10 bites ADC, ez az eredmény már tartományban van 0-1024, poluchaemtsya minden 1023 szegmensben. És akkor mi az eredmény osztva 1023 szorozva az érték a referencia feszültség.

Legyen egy tömbvázlata ADC a vezérlőben Atmega8

Avr lecke 22

Látjuk, hogy van egy multiplexer 8 csatornás bemenet MDO AREF feszültség. Van is egy 8 bites adatbusz, amely az értékeket a bizonyos nyilvántartásban. Bármely adat regiszter, vezérlő regiszter és állapot regiszter és multiplexer vezérlés.

Fogjuk használni a legelső ADC0 bemenet és fel fogja használni a központi lábát a változtatható ellenállás, mint a forrás a mért feszültség, az elektromos érintkezők podlklyuchennogo







Avr lecke 22

A munka az első a Proteus. azt is látjuk, hogy van egy csatlakoztatott kijelzőn a leggyakoribb módja.

Szintén mindannyian csatlakozni és élő vezérlő

Avr lecke 22

Számos változatban a referencia feszültség, akkor ispolzovat.v az ADC. Fogjuk használni a belső referencia feszültség 2,56 V, könnyebb, nem szükséges csatlakoztatni semmit. Talán ebben a megvalósításban a pontossága nem túl erős, de a probléma nem éri meg nekünk, hogy hozzon létre egy pontos mérőeszköz. Van egy kihívás -, hogy vizsgálja meg annak a lehetőségét, az ADC a vezérlő AVR.

És itt van az asztalon opronyh feszültségek ADC lehetőségek

Avr lecke 22

Sorolja fel a lehetőségeket adatok fentről lefelé az asztalra. 1 kiviteli alakban - a belső referencia feszültség megegyezik a tápfeszültség, 2. lehetőség - referencia feszültséget AREF jut a bemeneti kívülről, variáns 3 - belső 2,56 voltos használ külső kondenzátort, amely már forrasztva a PCB bizonyos hibakeresési vezérlő lábak.

ADC is van egy osztó, a frekvencia 2 és 128. Ez elválasztó hogy elértük az ADC gyakorisága legfeljebb 200 kHz, különben a mérési pontosság nagyon alacsony lesz, és mi csak zavaros a legkisebb helyi értékű bit. Ha lesz egy követelmény tulajdonában mérési sebesség és pontosság kell lennünk olyan fontos, fel tudjuk használni a magasabb frekvencia mérésre.

Most egy kicsit közelebbről szemügyre az ADC nyilvántartásokban.

ADCSRA nyilvántartás - az ellenőrzés és a státusz regiszter

ADEN - Ez kicsit teszi az ADC.

ADSC - amikor 1-be vezet az ADC hogy indítsa el a konverziót.

ADFR - használt mód használatával a megszakításokat. Szerelési 1 tartalmaz egy kör alakú mód, amelyben a mérés automatikus követik egymást.

ADIF - kicsit is csak a megszakítás üzemmódba. Ezt a megszakítást flag be van állítva, hogy bizonyos feltételek mellett.

ADIE - bites tartalmazó megszakítás üzemmódban.

ADPS2-ADPS0 - bitek a kombináció, amelynek az értéke függ elválasztó

Avr lecke 22

ADMUX regiszter - regiszter szabályozására multiplexer csatorna ADC

De amellett, hogy közvetlen csatorna vezérlő bitek ebben a nyilvántartásban van még néhány vezérlő biteket

REFS1-REFS0 - bitek, amely tartalmaz egy bizonyos mód alkalmazásával a referencia feszültség. A táblázat már megjelenik az oldalon fent.

ADLAR - Ez a bit szervezet a mért helyen 10 bit a két byte adatot regisztrálni pár. Közelebb ismerhetjük ez az elrendezés később.

MUX3-MUX0 - bitek, amely egy adott csatornát multiplexer

Avr lecke 22

Ez azt mutatja, hogy tudjuk kihasználni a több csatorna egyszerre csak egy időben, felváltva beleértve a különböző kombinációit adatbitek. Továbbá, az alján van két kombináció kalibrálásához az ADC.

És végül, a nyilvántartás pár ADCH és ADCL. álló vezető és junior bájtot, amely tárolja és mérhető eredményeket. Hogy pontosan azt, hogy illeszkedjen, ez az eredmény attól függ, hogy az állam a bit ADLAR, azt fentebb ADMUX nyilvántartásban

Avr lecke 22

Azaz, ha a bit nincs beállítva ADLAR, az alsó 8 bit az eredmény is az alacsony byte regiszter pár, és 2 nagy értékű bit - junior magas byte bit. Ha ADLAR bit be van állítva, a 8 legjelentősebb bit az eredmény a satrshem byte és 2 junior felső 2 bit a low byte regiszter pár. A második lehetőség az érdekes számunkra a isolzovanii 8-bites módban. Ebben az esetben azt olvassuk csak a magas byte.

A projekt jött létre teljes mértékben a projekt, hogy tanulmányozza a leckét 4-bites kapcsolat mód LCDTest09 és nevezték MyADCLCD.

Szintén a eltávolítása a kód végrehajtása a periféria az ADC hozták létre a szokásos módon, és két fájlt adc.h adc.c. Ennek adc.h fájl csatlakoztatták és main.h fájlt, és adc.c.

A MyADCLCD.c kódfájlhoz már teljesen másolt fő Test09 projekt fájlt, az összes felesleges lett távolítva. A kód ebben a fájlban a műtét után megtette a formája

void port_ini (void)




Kapcsolódó cikkek