Forum: Mikrocontroller und Digitale Elektronik AT32UC3 xplain ADC


von Heinz W. (harryhirsch_4711)


Lesenswert?

Hallo Experten,

ich teste gerade den Mikrocontroller und bin beim ADC hängen geblieben 
und finde meinen Fehler nicht.

Die Überlegung ist nun folgende: Ich möchte im ersten Step die AD 
Wandlung gezielt anstoßen. Später eventuell über einen Timer....
1
#include <compiler.h>
2
#include <sysclk.h>
3
#include <board.h>
4
#include <gpio.h>
5
#include <delay.h>
6
#include <adc.h>
7
8
......
9
10
  volatile avr32_adc_t *adc = &AVR32_ADC; // ADC IP registers address
11
12
  sysclk_init();
13
  board_init();
14
15
  
16
  adc->cher = 0x0002; 
17
  //adc->mr = 0x00;
18
  adc->chdr=0x00;
19
  
20
  int adc0 = 0; 
21
  int adc1 = 0;
22
  int adc2 = 0;
23
  int aa = 0;
24
  int ab = 0;
25
  
26
  adc->cr=0xff;
27
  
28
  while (1){
29
    
30
    
31
    adc1=adc->cdr0;
32
    adc2=adc->cdr1;
33
34
    adc->cr=0x00;
35
    delay_ms(100);
36
    adc->cr=0x02;
37
38
    gpio_toggle_pin(LED0_GPIO);
39
    
40
    adc0=adc->sr;
41
    ab=0;
42
    while (ab < adc2 ) {
43
      gpio_toggle_pin(LED1_GPIO);
44
      delay_ms(1);
45
      ab = ab +1;
46
      
47
    }
48
  }

Wo ist der Fehler oder was fehlt noch? Danke für Euer Hilfe.

PS: Die Spannung am NTC ändert sich, wenn man ihn erwärmt.

Gruß Harry

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.