102 Serial.println(
"If you see this then krnl didnt start :-( ");
112#if defined(__AVR_ATmega168__) || defined(__AVR_ATmega328P__) || defined(__AVR_ATmega328__)
113 for (
int i = 8;
i < 8 + 6;
i++)
116#elif defined (__AVR_ATmega2560__) || defined (__AVR_ATmega1280__) || defined(__AVR_ATmega2561__)
117 for (
int i = 22;
i < 22 + 6;
i++)
127volatile unsigned char reg = 0;
134#if defined(__AVR_ATmega168__) || defined(__AVR_ATmega328P__) || defined(__AVR_ATmega328__)
138#elif defined (__AVR_ATmega2560__) || defined (__AVR_ATmega1280__) || defined(__AVR_ATmega2561__)
152#if defined(__AVR_ATmega168__) || defined(__AVR_ATmega328P__) || defined(__AVR_ATmega328__)
154 PORTB = (1 <<
pRun->nr) & r;
156#elif defined (__AVR_ATmega2560__) || defined (__AVR_ATmega1280__) || defined(__AVR_ATmega2561__)
158 PORTA = (1 <<
pRun->nr) & r;
193#if defined(__AVR_ATmega168__) || defined(__AVR_ATmega328P__) || defined(__AVR_ATmega328__)
197#elif defined (__AVR_ATmega2560__) || defined (__AVR_ATmega1280__) || defined(__AVR_ATmega2561__)
int k_signal(struct k_t *sem)
Signal a semaphore w eventually task shift.
int k_mut_ceil_set(struct k_t *sem, char prio)
set ceiling priority on a mutex
int k_wait(struct k_t *sem, int timeout)
stand wait on semaphore call with timeout facility
int k_mut_ceil_leave(struct k_t *sem)
leave a "ceiled mutex" enter with k_mut_ceil_enter
struct k_t * k_crt_task(void(*pTask)(void), char prio, char *pStk, int stkSize)
create a task - only to be called before k_start creates a task and put it in the active Q
int k_set_sem_timer(struct k_t *sem, int val)
attach a periodic timer to a semaphore, to be used for realtime
int k_mut_ceil_enter(struct k_t *sem, int timeout)
set ceiling priority on a mutex
struct k_t * k_crt_sem(int init_val, int maxvalue)
change task priority and reinserts it in task Q and do a task shift
int k_init(int nrTask, int nrSem, int nrMsg)
void bugBitReset(int bitNr)
void k_sem_noclip(unsigned char nr)
void k_sem_clip(unsigned char nr, int i)
void bugBitSet(int bitNr)