mirror of
https://github.com/oliverschmidt/contiki.git
synced 2024-12-23 01:29:33 +00:00
The radio driver now takes care of adjusting for the transmission time
This commit is contained in:
parent
88a010acdc
commit
1640b11972
@ -34,7 +34,7 @@
|
|||||||
*
|
*
|
||||||
* This file is part of the Contiki operating system.
|
* This file is part of the Contiki operating system.
|
||||||
*
|
*
|
||||||
* $Id: timesynch.c,v 1.4 2007/12/23 14:57:11 oliverschmidt Exp $
|
* $Id: timesynch.c,v 1.5 2008/01/08 07:54:16 adamdunkels Exp $
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -107,25 +107,36 @@ read_packet(void)
|
|||||||
|
|
||||||
len = mac->read();
|
len = mac->read();
|
||||||
|
|
||||||
|
if(len == 0) {
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
/* We check the authority level of the sender of the incoming
|
/* We check the authority level of the sender of the incoming
|
||||||
packet. If the sending node has a lower authority level than we
|
packet. If the sending node has a lower authority level than we
|
||||||
have, we synchronize to the time of the sending node and set our
|
have, we synchronize to the time of the sending node and set our
|
||||||
own authority level to be one more than the sending node. */
|
own authority level to be one more than the sending node. */
|
||||||
if(simple_cc2420_authority_level_of_sender < authority_level) {
|
if(simple_cc2420_authority_level_of_sender < authority_level) {
|
||||||
adjust_offset(simple_cc2420_time_of_departure +
|
|
||||||
simple_cc2420_time_for_transmission,
|
adjust_offset(simple_cc2420_time_of_departure,
|
||||||
simple_cc2420_time_of_arrival);
|
simple_cc2420_time_of_arrival);
|
||||||
if(simple_cc2420_authority_level_of_sender + 1 != authority_level) {
|
if(simple_cc2420_authority_level_of_sender + 1 != authority_level) {
|
||||||
authority_level = simple_cc2420_authority_level_of_sender + 1;
|
authority_level = simple_cc2420_authority_level_of_sender + 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* XXX the authority level should be increased over time except
|
|
||||||
for the sink node. */
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return len;
|
return len;
|
||||||
}
|
}
|
||||||
/*---------------------------------------------------------------------------*/
|
/*---------------------------------------------------------------------------*/
|
||||||
|
#if 0
|
||||||
|
static void
|
||||||
|
periodic_authority_increase(void *ptr)
|
||||||
|
{
|
||||||
|
/* XXX the authority level should be increased over time except
|
||||||
|
for the sink node (which has authority 0). */
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
/*---------------------------------------------------------------------------*/
|
||||||
static void
|
static void
|
||||||
set_receive_function(void (* recv)(const struct mac_driver *))
|
set_receive_function(void (* recv)(const struct mac_driver *))
|
||||||
{
|
{
|
||||||
|
Loading…
Reference in New Issue
Block a user