int main () { nrk_setup_ports(); nrk_setup_uart(UART_BAUDRATE_115K2); nrk_init(); nrk_time_set(0,0); nrk_time_get(seed); srand(seed->nano_secs); //Initialize tasks //Higher value higher priority` // INITIALIZE_TASK(1, BASIC_TASK); // INITIALIZE_TASK(2, CBS_TASK); // INITIALIZE_TASK(3, BASIC_TASK); INITIALIZE_TASK(1, CBS_TASK); INITIALIZE_TASK(2, BASIC_TASK); INITIALIZE_TASK(3, CBS_TASK); nrk_start(); return 0; }
int main () { nrk_setup_ports(); nrk_setup_uart(UART_BAUDRATE_115K2); nrk_init(); nrk_time_set(0,0); //Initialize tasks INITIALIZE_TASK(1); INITIALIZE_TASK(2); nrk_start(); return 0; }
int main () { nrk_setup_ports(); nrk_setup_uart(UART_BAUDRATE_115K2); printf( "Starting up...\r\n" ); nrk_init(); nrk_time_set(0,0); //Initialize tasks INITIALIZE_TASK(1); INITIALIZE_TASK(2); INITIALIZE_TASK(3); //instead of passing the ceiling priority, the task with the shortest period that accesses the semaphore is given //in this case, task1 which has a period 350*NANOS_PER_MS my_semaphore = nrk_sem_create(1,350*NANOS_PER_MS); if(my_semaphore==NULL) nrk_kprintf( PSTR("Error creating sem\r\n" )); nrk_start(); return 0; }