Atmega16 Analog Comperator: Flanke reagiert nicht

Gast #3710021
Lesenswert?
• ▲
▼
Ich möchte zu einem den Analog Comperator benutzen um bei fallender 
Flanke eine LED zum leuchten zu bringen und zum anderen später per ADC 
eine Spannung messen.

Ist es zu einem möglich dies irgendwie parallel laufen zu lassen oder 
geht es wirklich nur eins vom beiden?

ADC funktioniert super, nur der Comperator noch nicht:

#ifndef F_CPU
#   define  F_CPU   8000000    /* 8 MHz */
#endif
#include <avr/io.h> // Registernamen
#include <stdlib.h>
#include <util/delay.h>
#include <inttypes.h>
#include <avr/wdt.h>
#include <avr/interrupt.h>

volatile uint16_t AC0 = 0;

void AC_Init(void)
{
  ACSR &= ~(1<<ACD);      //AnalogComparator ein
  ADCSRA &= ~((1<<ADEN));  // ADC aus
  ACSR = (1<<ACIS1)|(1<<ACIE); //fallende Flanke

  DDRB = 0xFF;  // Alle Pins von Ports B als Ausgang
  DDRB &= ~((1 << DDB2) | (1 << DDB3));// b2,b3 eingänge
  PORTB |= 0xFF;
  PORTB &= ~ ((1 << PB0) | (1 << PB2) | (1 << PB3));
}

ISR( ANA_COMP_vect )    //ANALOG COMPARTOR Interrupt Routine
{
  //acflag=1;
  // AINO const: Interrupt wenn AIN1 < AIN0: Kein Licht
  PORTB = (1 << PB0); // LED ein
}

int main(void)
{
    AC_Init();
    sei();
    while(1){}
}

Ist die simple Software so richtig? Wenn AIN0>AIN1 ist müsste LED 
angehen, macht es aber nicht. PB0 ist weiterhin auf Low -.-.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 12 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.