- 12V Akku mit 280 Ah bauen         
Ergebnis 1 bis 10 von 13

Thema: ATmega8 ext. Interrupt

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Erfahrener Benutzer Roboter-Spezialist Avatar von sast
    Registriert seit
    30.11.2004
    Alter
    54
    Beiträge
    502
    Ohne deinen konkreten Code zu sehen läßt sich da jetzt schwer was sagen. Aber ich finde 10s in einer Interruptroutine schon echt heftig.

    sast

    雅思特史特芬
    开发及研究

  2. #2
    Erfahrener Benutzer Robotik Visionär Avatar von 021aet04
    Registriert seit
    17.01.2005
    Ort
    Niklasdorf
    Alter
    37
    Beiträge
    5.093
    Das war auch nur zum Testen. Beim endprogramm sollte man delays in den Interrupt vermeiden.

    MfG Hannes

  3. #3
    Benutzer Stammmitglied
    Registriert seit
    16.04.2011
    Beiträge
    78
    Hallo und vielen Dank für die Unterstützung,

    @oberallgeier: Das ist echt 'ne gute Idee für jedes Mikrocontroller-implementiertes Projekt so eine Testroutine zu machen, spart viel Arbeit bei der Fehlersuche. Diese Idee werde ich mir mal leihen

    Der Code ist etwas größer, die Timer 0,1,2 inkl. der Interrrupts beim Überlauf bzw. Erreichen des Vergleichswertes werden verwendet sowie der I²C-Bus. Ich hätte nicht gedacht, dass das Ansteuern eines externen Interrupts mir diese Schmerzen bereiten wird.

    Code:
    #include .....
    
    volatile uint8_t taster = 0;
    
    ISR(INT1_vect)
    {
       taster = 1;
    }
    
    ...
    
    int main(void)
    {
       MCUCR |=(1<<ISC11)|(1<<ISC10);  // auf steigende Flanke triggern
       GICR |= (1<<INT1);     // ext. Interrupt freigeben
    
    ...
    
    sei();
    
    while(1)
    {
       while( taster ==1)
       {
          //auszuführender Code
    
           taster = 0;
       }
       
         // Rest des Codes, falls der Taster nicht 1 ist.
    }
    
       return 0;
    
    }
    Ich befürchte, mittlerweile sehe ich den Wald vor lauter Bäumen nicht. Bei fallender und steigender Flankentriggerung funktioniert es nun - jedoch nur genau ein Mal. Ist auch zeitlich unabhängig, wann ich diesen Taster drücke.

  4. #4
    Erfahrener Benutzer Robotik Visionär Avatar von 021aet04
    Registriert seit
    17.01.2005
    Ort
    Niklasdorf
    Alter
    37
    Beiträge
    5.093
    Hast du schon simuliert oder nur am Controller getestet?

    Ich habe dein erstes Programm mit einem mega88 getestet, ohne Probleme. Habe nur die Register geändert. Ich weiß wirklich nicht woran es liegt.

    MfG Hannes

Ähnliche Themen

  1. ext. Quarz an ATmega8
    Von Zwerwelfliescher im Forum AVR Hardwarethemen
    Antworten: 3
    Letzter Beitrag: 14.03.2010, 18:31
  2. ext. Quarz an ATmega8
    Von Zwerwelfliescher im Forum AVR Hardwarethemen
    Antworten: 18
    Letzter Beitrag: 24.02.2010, 21:01
  3. Ext. Interrupt löst nur unregelmässig aus
    Von Murus im Forum AVR Hardwarethemen
    Antworten: 27
    Letzter Beitrag: 08.01.2007, 17:34
  4. Rücksprungposition nach einem ext.Interrupt
    Von lejcko im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 9
    Letzter Beitrag: 27.01.2006, 16:21
  5. Verständnisfrage Counter mit ext. Interrupt
    Von m@rkus33 im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 3
    Letzter Beitrag: 23.12.2005, 08:13

Berechtigungen

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

LiFePO4 Speicher Test