AT90S4433 Uart-Interrupt mit avrgcc

Gast #100078
Lesenswert?
• ▲
▼
hallo,
möchte gerne irgendein byte über den uart schicken, und wenn es
angekommen ist, dann soll die interrupt routine jedesmal den PortB
invertieren.
Die Led die dort angeschlossen ist blinkt dem entsprechend.
ohne interrupt un  in assembler läuft dieses.

was mache ich falsch?? avrgcc neuling!! hier mein quellcode:

#include <avr/io.h>
#include <avr/sfr_defs.h>
#include <avr/signal.h>
#include <avr/interrupt.h>


INTERRUPT (SIG_UART_RECV)
{
  PORTB=~PORTB;


}


/************************************************/
void uartreceive_ini (unsigned char data)
{
  UBRR=data;

  UCSRB  |= (1<<RXEN)|(1<<TXEN)|(1<<RXCIE);
}
/************************************************/
int main (void)
{
  uartreceive_ini(25);


  DDRB=0xFF;
  PORTB=0x00;
  sei();
  while(1)
    {

    }

  return 0;
}

danke schon einmal
peter bauer

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren