Hallo Forum,
ich würde gern auf dem AVR XMEGA 128A1 den ADC Wandler konfiguieren.
Eingangsignal ist PORTA 0. Der Wert der dort gemessen wird, soll digital
ungewandelt werden.
Ich hab in das Datenblatt geschaut und ein paar Zeilencodes geschrieben.
Ich wollte fragen, ob dies richtig ist. So genau kenn ich mich da leider
nicht aus.
Ich weiß auch nicht, wo die Umwandlung, also der digitale Wert
gespeichert wird.
Für jede Hilfe bin ich dankbar.
Hier der Code:
1 | volatile unsigned int counter;
|
2 |
|
3 | int main( void )
|
4 | {
|
5 | PORTE.DIR=0x0;
|
6 |
|
7 | while(1)
|
8 | {
|
9 | if(PORTE.IN==1)
|
10 |
|
11 | {
|
12 |
|
13 | PORTA.DIR=1;
|
14 |
|
15 |
|
16 | ADCA.CTRLA=1; // AD-Wandler einschalten
|
17 | ADCA.REFCTRL=16; //Ref-Spannung
|
18 | ADCA.CH0.MUXCTRL=0;
|
19 | ADCA.EVCTRL=0;
|
20 | ADCA.PRESCALER=0;
|
21 | ADCA.CH0.CTRL=1;
|
22 |
|
23 | while(PORTE.IN==0)
|
24 | {}
|
25 |
|
26 | }
|
27 | }
|
28 | }
|
Ich hab noch programmiert, dass wenn man auf dem Bord auf den Taster
drückt, soll der AD Wandler laufen.
Danke