[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RE: [avr-gcc-list] INTERRUPT v. SIGNAL problem
From: |
Dean Ferreyra |
Subject: |
RE: [avr-gcc-list] INTERRUPT v. SIGNAL problem |
Date: |
Tue, 23 Apr 2002 13:32:38 -0700 |
John,
I believe your problem is that INTERRUPT re-enables interrupts in the
preamble, before your code reaches your read of UDR, causing the processor
to interrupt again and again. If you want to re-enable interrupts in your
ISR, you can use SIGNAL, read from the UDR, and only then re-enable
interrupts yourself.
Dean
-----Original Message-----
From: address@hidden [mailto:address@hidden
Behalf Of Borchardt, John Joseph (UMC-Student)
Sent: Tuesday, April 23, 2002 12:23 PM
To: address@hidden
Subject: [avr-gcc-list] INTERRUPT v. SIGNAL problem
Hi,
I'm developing a data transmission protocol using the
2313 UART interrupts, and I'm experiencing a strange
problem. When I change SIGNAL(SIG_UART_RECV){ ... } to
INTERRUPT(SIG_UART_RECV){ ... }, the isr will not be
called. Timer and external interrupts are disabled,
and only the UART transmit complete and receive complete
are enabled. The first thing the SIG_UART_RECV isr does
is to read the UDR, clearing the RXC flag. The second
thing the isr does is to put a pin high for debugging
purposes. Everything seems to work fine with SIGNAL,
but not INTERRUPT. Does anyone know why I'm experiencing
this problem?
Thanks in advance for your help.
-John Borchardt
address@hidden
avr-gcc-list at http://avr1.org
avr-gcc-list at http://avr1.org