__________________________________________________
Preguntá. Respondé. Descubrí.
Todo lo que querías saber, y lo que ni imaginabas,
está en Yahoo! Respuestas (Beta).
¡Probalo ya!
http://www.yahoo.com.ar/respuestas
--- Begin Message ---
That the TOSH_SIGNAL(SIG_UART0_RECV) routine be
reentrant means that every routine called from this
routine is reentrant too? (for example
HPLUART.putDone() defined in UARTM)
I'm usign tinyos 1.x
José
--- Adam <[EMAIL PROTECTED]> escribió:
> Thank you for explaining this, does this apply to
> other platforms
> (telosb/micaZ) too?
>
> I personally think that it is better for TinyOS to
> unify that: the routine
> inside "async command/event" should be same as
> routine in "atomic" ---
> interrupt is disabled. So that user can develop a
> predictable system. If an
> event/command is interrupt-enabled, let's not use
> "async" keyword.
>
> Otherwise, probably very few people know such
> difference -- not good for
> this community
>
> -----Original Message-----
> From: Philip Levis [mailto:[EMAIL PROTECTED]
> Sent: Friday, September 08, 2006 9:24 AM
> To: Adam
> Cc: 'jose m'; [email protected]
> Subject: Re: Rv: Re: [Tinyos-help] Interrupts and
> async events question
>
> On Sep 8, 2006, at 9:16 AM, Adam wrote:
>
> > Thanks for pointing out this. But I have traced
> UARTReceive.receive
> > up, the original interrupt is defined as this:
>
> I was talking about the 2.x code.
>
> Regardless, look at the 1.x UART code:
>
> tos/platform/mica2/HPLUART0M.nc:
>
> TOSH_INTERRUPT(SIG_UART0_TRANS) {
> signal UART.putDone();
> }
>
> TOSH_SIGNAL(SIG_UART0_RECV) {
> if (inp(UCSR0A) & (1 << RXC))
> signal UART.get(inp(UDR0));
> }
>
> Note that the receive interrupt is a SIGNAL, so has
> interrupts disabled
> while it executes. In contrast, the transmit
> interrupt is an INTERRUPT, so
> has interrupts enabled while it executes. The reason
> being that a reentrant
> RX interrupt could cause bytes to be reordered (rate
> controlled by external
> source), but as the TX interrupt handler is
> generally what triggers the next
> interrupt to occur, making it reentrant isn't a big
> deal.
>
> All of this is completely independent of tasks.
>
> Phil
>
> _______________________________________________
> Tinyos-help mailing list
> [email protected]
>
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
>
__________________________________________________
Preguntá. Respondé. Descubrí.
Todo lo que querías saber, y lo que ni imaginabas,
está en Yahoo! Respuestas (Beta).
¡Probalo ya!
http://www.yahoo.com.ar/respuestas
--- End Message ---
_______________________________________________
Tinyos-help mailing list
[email protected]
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help