// // Example of time-related functions // #include #include #include "mmkernel.h" TASK_INFO task_info; mKTIME timedate; void task1(void); void task2(void); //------------------------------------------------------------------- void main() { // microkernel initialization mK_init(); // task_creation task_info.stack_size = 4000; task_info.default_priority = 0; task_info.current_priority = 0; task_info.name = "1st task"; task_info.code = task1; mK_create_task(&task_info); task_info.name = "2nd task"; task_info.code = task2; mK_create_task(&task_info); mK_start(); } //----------------------------------------- void task1(void) { static int i; if(mK_local_init()) { return; } for(i=0;i<200;++i) { mK_time_of_day(&timedate); printf("Time:%d:%d:%d Date:%d/%d/%d \n", timedate.hours, timedate.minutes, timedate.seconds, timedate.monthday, timedate.month, timedate.year); mK_yield(); } mK_end(); } //----------------------------------------------------------- void task2(void) { if(mK_local_init()) { return; } while(1) { unsigned int ticks; ticks = mK_get_systicks(); printf("System clock ticks: %d \n", ticks); mK_yield(); } }