- 3D-Druck Einstieg und Tipps         
Ergebnis 1 bis 10 von 10

Thema: ADC für ATXmega128A1

Baum-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1

    Unglücklich ADC für ATXmega128A1

    Hallo,

    ich ein Fehler in dem Code. Wenn Spannung am ADC fehlt runter, LEDs zeigen das. Aber wenn es steigt, LEDs sind immer aus. Ich nutze CodeVisionAVR und arbeite mit dem Xmega128-A1 Xplained board.

    Code:
    #include <xmega128a1.h> //Xmega-A1-Xplained development board
    
    #define LED PORTE// LED as PORT E.
    
    volatile int Result;
    
    void main()
    {
    LED.DIR = 0b00001111;  //E0 - E3 - outputs.
    
    PORTA.DIR = 0;                                  // configure PORTA as input
    ADCA.CTRLA |= 0x1;                              // enable adc
    ADCA.CTRLB = ADC_RESOLUTION_12BIT_gc;           // 12 bit conversion
    ADCA.REFCTRL = ADC_REFSEL_VCC_gc | 0x02;        // internal 1V bandgap reference
    ADCA.PRESCALER = ADC_PRESCALER_DIV8_gc;         // peripheral clk/8 (2MHz/16=250kHz)
    ADCA.CH0.CTRL = ADC_CH_INPUTMODE_SINGLEENDED_gc;// single ended
    ADCA.CH0.MUXCTRL = ADC_CH_MUXPOS_PIN0_gc; 	    // PORTA:0 
    
        while(1)  // cycle
        { 
            ADCA.CH0.CTRL |= ADC_CH_START_bm; // start conversion on channel 0
            while(!ADCA.CH0.INTFLAGS);
            Result = ADCA.CH0RES;
            
            if (Result > 1000) //
            {
                LED.OUTSET = (1 << 0); // output E0 High.
            } //if
            if (Result > 2000) //
            {
                LED.OUTSET = (1 << 1); // output E1 High.
            } //if        
            if (Result > 3000) //
            {
                LED.OUTSET = (1 << 2); // output E2 High.
            } //if        
            if (Result > 4000) //
            {
                LED.OUTSET = (1 << 3); // output E3 High.
            } //if
           }//while(1)
    }//main
    Geändert von Fogtech (29.01.2013 um 12:25 Uhr)

Ähnliche Themen

  1. ATXmega128A1 Rev. H unerklärliches ADC-Phänomen
    Von Oreas im Forum C - Programmierung (GCC u.a.)
    Antworten: 7
    Letzter Beitrag: 28.11.2012, 13:24
  2. Mikrocontroller ATXmega128A1 Programmier-Problem
    Von Drazhoath im Forum AVR Hardwarethemen
    Antworten: 6
    Letzter Beitrag: 08.05.2012, 18:48
  3. Spannugsteiler für ADC
    Von kurzwelle im Forum Elektronik
    Antworten: 8
    Letzter Beitrag: 12.01.2010, 20:04
  4. BASCOM und ATxmega128A1
    Von Hellmut im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 7
    Letzter Beitrag: 07.10.2008, 11:31
  5. klassse für adc
    Von timfri im Forum C - Programmierung (GCC u.a.)
    Antworten: 6
    Letzter Beitrag: 06.02.2007, 12:11

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

LiFePO4 Speicher Test