I can't say as I know HOW it works but the general idea
is that the radio, in normal non-low-power use, listens
to the channel and grabs all messages. If the message
is received cleanly, belongs to the GroupID of the node,
and the destination matches it's NodeID or BCAST it is
passed to the AM dispatcher which calls the receive()
method defined in your config file for the message's AM
type value.

Thus the packet "just pops out" into the right function.

There isn't really a TOS scheduler as such. Tasks are executed
in a sequential manner, when one returns the next one is started.
Interrupts can break into a task and wreck havoc as they desire,
but tasks are not timesliced or anything fancy.

MS

Arik wrote:
> Hi all,
> 
>  
> 
> Does anybody know how the Receive .receive works?
> 
> I mean when I send a message, I use AMSend.Send(), but I don't do the 
> same for the receiver side.
> 
> The packet just "pops out" into the Receive.receive().
> 
> Does TinyOS always listens to the channel when the radio is not 
> transmitting?
> 
> What happens between AMSend.SendDone() and Receive.receive()?
> 
> Where in general I look into TinyOS scheduler?
> 
>  
> 
> Thanks,
> 
> Arik
> 
> 
> ------------------------------------------------------------------------
> 
> _______________________________________________
> Tinyos-help mailing list
> Tinyos-help@millennium.berkeley.edu
> https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
_______________________________________________
Tinyos-help mailing list
Tinyos-help@millennium.berkeley.edu
https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help

Reply via email to