X-Git-Url: https://git.gag.com/?p=fw%2Faltos;a=blobdiff_plain;f=ao_task.c;h=2e0a8b33207921e87feee02f0382240429ab0c5e;hp=24bd319ac563b69d33dd77999a0a532763eaa592;hb=fbd8f4aff5058f4d371596b04715b7cb6d38e729;hpb=fb63262699d3a6fbf347d24efda8b01f75b7d0d3 diff --git a/ao_task.c b/ao_task.c index 24bd319a..2e0a8b33 100644 --- a/ao_task.c +++ b/ao_task.c @@ -162,9 +162,9 @@ ao_yield(void) _naked int ao_sleep(__xdata void *wchan) { - ao_interrupt_disable(); + __critical { ao_cur_task->wchan = wchan; - ao_interrupt_enable(); + } ao_yield(); } @@ -181,11 +181,6 @@ ao_wakeup(__xdata void *wchan) void ao_start_scheduler(void) { - ao_timer_init(); - ao_adc_init(); - ao_beep_init(); - ao_led_init(); - ao_usb_init(); ao_cur_task_id = AO_NO_TASK; ao_cur_task = NULL;