Wake up from sleep in the interrupt when the receiver process is going
to be polled.
This commit is contained in:
parent
d21572da02
commit
f9d24f0d24
@ -272,6 +272,7 @@ int
|
|||||||
cc1020_read(void *buf, unsigned short size)
|
cc1020_read(void *buf, unsigned short size)
|
||||||
{
|
{
|
||||||
unsigned len;
|
unsigned len;
|
||||||
|
printf("Read time: %lu\n", RTIMER_NOW());
|
||||||
|
|
||||||
if (cc1020_rxlen <= HDRSIZE)
|
if (cc1020_rxlen <= HDRSIZE)
|
||||||
return 0;
|
return 0;
|
||||||
@ -450,7 +451,8 @@ interrupt(UART0RX_VECTOR) cc1020_rxhandler(void)
|
|||||||
// disable receiver
|
// disable receiver
|
||||||
DISABLE_RX_IRQ();
|
DISABLE_RX_IRQ();
|
||||||
CC1020_SET_OPSTATE(CC1020_RX | CC1020_RX_PROCESSING);
|
CC1020_SET_OPSTATE(CC1020_RX | CC1020_RX_PROCESSING);
|
||||||
|
_BIC_SR_IRQ(LPM3_bits);
|
||||||
|
printf("Poll time: %lu\n", RTIMER_NOW());
|
||||||
// call receiver to copy from buffer
|
// call receiver to copy from buffer
|
||||||
process_poll(&cc1020_receiver_process);
|
process_poll(&cc1020_receiver_process);
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user