Fórum témák

» Több friss téma
Cikkek » Oszcilloszkóp óra
Oszcilloszkóp óra
Szerző: zzzzzzzzzz, idő: Jún 30, 2008, Olvasva: 24230, Oldal olvasási idő: kb. 1 perc
Lapozás: OK   10 / 13

A D/A átalakítót vezérlő rész:

Ennek a D/A átalakítónak 16 bites adatsorozatokra van szüksége. Az első bit egy cím bit (A0), aztán követi két vezérlő bit (C1, C0), majd az adatbitek, mivel ez egy 12 bites D/A átalakító, ezért 12 db adatbitje van (D11 – D0) és végül egy lezáró bit (S0).

A D/A átalakítót legkevesebb 3 bemenettel lehet vezérelni, ez a CS, az SCLK és a DIN bemenet. A következő ábrán látható, hogy hogyan és mikor lehet adatot beírni. A CS bemenetnek 0-ban kell lennie és az SCLK lábra adott órajelnek pedig a 0 > 1 átmeneténél íródik be az adott bit. Továbbá látható még, hogy az A0-tól D0-ig a biteknek 0 vagy 1 is lehet az értékük, de az S0 lezáró bit mindig 0.

Két csatornás, vagyis 2 analóg kimenete van az átalakítónak. A kimeneti feszültség a következő képlettel számolható ki: Vout = (Vref * (NB / 4096)) * 2, ahol az NB a 12 adatbitnek a decimális értéke.

Mivel a D/A-nak 16 bites adatsorozatra van szüksége, ezért egy 16 bites adatot kell kiküldeni. Két változót használtam, amelyben tároljuk a sorosan kiküldeni kívánt biteket, ez az ADADAT1 és az ADADAT2. Két rutin van a két változóban tárolt bitek sorosan való kiküldésére, ez az ADDATA1 és az ADDATA2. Az ADDATA1 rutin lényegében azt csinálja, hogy a 16 bites sorozat első 8 bitjét sorosan kiküldi, a legnagyobb bittől kezdve, valamint a CS lábat 0-ba rakja és gondoskodik az órajelről (SCLK).

Az ADDATA2 rutin nagyon hasonló az ADDATA1 rutinhoz, annyi a különbség, hogy itt a második 8 bitet küldi ki és a végén a CS lábra újra 1-et kell adni.

Vannak még egyéb kisebb rutinok, ezekről a következő oldalon fogtok (ha akartok) olvasni.


A cikk még nem ért véget, lapozz!
Következő: »»   10 / 13
Értékeléshez bejelentkezés szükséges!
Bejelentkezés

Belépés

Hirdetés
XDT.hu
Az oldalon sütiket használunk a helyes működéshez. Bővebb információt az adatvédelmi szabályzatban olvashatsz. Megértettem