Archiv verlassen und diese Seite im Standarddesign anzeigen : ADC(Analog Digital Converter) in C auslesen
seitenmaster
01.06.2005, 10:01
Hi, wie ich hier schon öfter gelesen habe gibt es in Basic die möglichkeit die ADC-Ports, für z.B. eine Spannungsmessung mit getadc(x) oder sowas in der Richtung auszulesen, wie geht denn das in C?
seitenmaster
01.06.2005, 10:58
Hab selbst was gefunden :-)
http://www.mikrocontroller.net/articles/AVR-GCC-Tutorial#Analoge_Ein-_und_Ausgabe
seitenmaster
01.06.2005, 12:51
Ich brächte doch nocht etwas Hilfe dazu. Z.B. muss laut text zum einschalten des ADC Bit 7 von Port C (ADEN) gesetzt werden, allerdings gibt es bei meiner Bauform (DIL) kein Bit 7, sondern lediglich 0 bis 5. Wo ist bei mir dieses Bit?
Arexx-Henk
01.06.2005, 13:57
Hallo,
zum einschalten des ADC Bit 7 von Port C (ADEN) gesetzt werden
Z.B. Beim Atmega16 ist ADEN bit 7 vom ADCSRA register und ist nicht teil vom Port C. Vielleicht ist hier ein irrtum?
gruss
Henk
seitenmaster
01.06.2005, 14:24
Hmm...
mal was anderes...
was genau macht das im C Quelltext?
(1<<ADEN)
oder das
|=
Arexx-Henk
01.06.2005, 16:43
Hallo,
ADEN ist gleich wie decimal 7 (dass komt von bit 7)
(1<<ADEN) ist gleich wie (1<<7), heisst schieb die 1 ('eins' oder (hex) 0x01, oder (binair) '0000 0001') 7 mahl nach links.
daraus komt: (binair) '1000 0000' oder (hex 0x80) oder (decimal) 128
ander beispiel:
(1<<0) = '0000 0001'
(1<<3) = '0000 1000'
(2<<1) = '0000 0100'
(3<<1) = '0000 0110'
'|=' ist gleich wie 'ist oder'
a |= 4 ist gleich wie a = a | 4 ist gleich wie a = a oder 4
z.B. wenn a = 2 denn a|=4 ist gleich wie a=2 oder 4
0000 0010 = 2
0000 0100 = 4
------------ oder
0000 0110 = 6
a|=4 ist gleich wie 6
gruss
Henk
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.