29#define debounceTime 200
32#if defined (__AVR_ATmega2560__) || defined (__AVR_ATmega1280__) || defined(__AVR_ATmega2561__)
33ISR(INT4_vect, ISR_NAKED)
37#if defined(__AVR_ATmega168__) || defined(__AVR_ATmega328P__) || defined(__AVR_ATmega328__) || defined(__AVR_ATmega32U4__)
38ISR(INT0_vect, ISR_NAKED)
92 Serial.print(
"Timeout "); Serial.print(miss); Serial.print(
" "); Serial.println(
ISRoverflow);
97 Serial.print(
"get kick no "); Serial.print(
i); Serial.print(
" "); Serial.println(
ISRoverflow);
100 Serial.println(
"lost msg "); Serial.println(sumclp);
112 Serial.begin(115200);
115 Serial.println(
"\n\njust bef init part");
125pinMode(2, INPUT_PULLUP);
131__asm__
volatile (
"cli");
133#if defined (__AVR_ATmega2560__) || defined (__AVR_ATmega1280__) || defined(__AVR_ATmega2561__)
134EICRB |= (1 << ISC41);
137Serial.println(EICRB, HEX);
138Serial.println(EIMSK, HEX);
142#if defined(__AVR_ATmega168__) || defined(__AVR_ATmega328P__) || defined(__AVR_ATmega328__) || defined(__AVR_ATmega32U4__)
143EICRA |= (1 << ISC01);
147__asm__
volatile (
"sei");
151Serial.println(
"If you see this then krnl didnt start :-( ");
int ki_signal(struct k_t *sem)
signal a semaphore from AN ISR - no task shift , do not enable intr,...
int k_wait2(struct k_t *sem, int timeout, int *nrClip)
wait with add info .ยด- nr of in max limit from signals since last time(saturation)
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
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)
ISR(INT0_vect, ISR_NAKED)
unsigned long k_millis_counter