www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik USART Interrupt löst nicht aus; warum ?


Autor: MC_AVR (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Guten Abend !

Kann mir jemand sagen, wo ich hier einen Fehler mache ? Der Interrupt 
wird nie ausgelöst. Ich arbeite mit einem Attiny2313. Die Hardware 
funktioniert, da ich ohne Interrupt Methode sowohl senden auch als 
empfangen kann.

#include <avr/io.h>
//#include <util/delay.h>
#include <avr/interrupt.h>
//#include <avr/signal.h>

#define BAUD 9600UL      // Baudrate bestimmen
#define UBRR_VAL ((F_CPU+BAUD*8)/(BAUD*16)-1)   // clever runden

volatile unsigned char receive_char;
void init_uart(void);

int main(void)
{

   init_uart();
 
  sei(); 


  while(1)
  {
  }
   
   /*while(1)
    {
    UDR = 'z';
    _delay_ms(1000);
    } */

}


/***UART initialisieren***/
void init_uart()
{
    UCSRB |= (1<<RXCIE)|(1<<RXEN)|(1<<TXEN);
    UCSRC |= (3<<UCSZ0); /*UART: 8 Datenbits; keine Parität; 1                    Stopbit => 8N1*/
    UBRRH = UBRR_VAL >> 8;
    UBRRL = UBRR_VAL;
}


ISR(USART_RXC_vect)
{
       receive_char = (UDR);
       UDR = receive_char; // gleich zurücksenden !
}

Danke !

Autor: Carsten (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich glaube für den Tiny2313 heisst der Interruptvektor "USART_RX_vect" - 
also ohne "C".



Carsten

Autor: MC_AVR (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Du solltest es nicht nur glauben, sondern es ist wirklich nur RX... 
vielen Dank ! Mein Gott ey.. und ich sitze hier die ganze Zeit und guck 
mir die Register Einstellungen usw. alles an....

Danke !!

Autor: Michael M. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
compilerwarnings lesen hätte gereicht...

Autor: MC_AVR (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mein Compiler hat keine Warnung bezüglich dies gemeldet?!

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.