在线时间119 小时
UID22290
注册时间2007-6-20
NXP金币0
TA的每日心情 | 郁闷 2021-1-9 21:21 |
---|
签到天数: 56 天 连续签到: 1 天 [LV.5]常住居民I
金牌会员
 
- 积分
- 1470
- 最后登录
- 2021-1-9
|
main.c
#pragma location=".skyone"
skyone_DateTime_t m_Buffer[100];
msg_queue_handler_t sky_msg_handler;
semaphore_t sky_sem;
/*lint -save -e970 Disable MISRA rule (6.3) checking. */
int main(void)
/*lint -restore Enable MISRA rule (6.3) checking. */
{
/* Write your local variable definition here */
/*** Processor Expert internal initialization. DON'T REMOVE THIS CODE!!! ***/
PE_low_level_init();
/*** End of Processor Expert internal initialization. ***/
/* Write your code here */
/* For example: for(;;) { } */
printf("System is startting\r\n");
sky_msg_handler = OSA_MsgQCreate((uint32_t*)(&m_Buffer), 30, 2);
OSA_SemaCreate(&sky_sem, 0);
/*** Don't write any code pass this line, or it will be deleted during code generation. ***/
/*** RTOS startup code. Macro PEX_RTOS_START is defined by the RTOS component. DON'T MODIFY THIS CODE!!! ***/
#ifdef PEX_RTOS_START
PEX_RTOS_START(); /* Startup of the selected RTOS. Macro is defined by the RTOS component. */
#endif
/*** End of RTOS startup code. ***/
/*** Processor Expert end of main routine. DON'T MODIFY THIS CODE!!! ***/
for(;;){}
/*** Processor Expert end of main routine. DON'T WRITE CODE BELOW!!! ***/
} /*** End of main routine. DO NOT MODIFY THIS TEXT!!! ***/
os_task.c
#endif } /* extern "C" */#ifdef __cplusplus/* END os_tasks */}#endif }#ifdef PEX_USE_RTOS WDOG_DRV_Refresh(); GPIO_DRV_TogglePinOutput(LED_RED); //OSA_TimeDelay(330); printf("semaphore has arrived...........\r\n"); OSA_SemaWait(&sky_sem, OSA_WAIT_FOREVER); /* Write your code here ... */#endif while (1) {#ifdef PEX_USE_RTOS /* Write your local variable definition here */{void TaskRED_task(os_task_param_t task_init_data)*/** ===================================================================** Returns : Nothing** task_init_data - OS task parameter** Parameters :** Description : Task function entry.** Callback : TaskRED_task** ===================================================================/*}#endif }#ifdef PEX_USE_RTOS GPIO_DRV_TogglePinOutput(LED_GREEN); OSA_TimeDelay(1000); //* Example code (for task release) printf("当前时间: %d-%d-%d %d:%d:%d\r\n", my_buffer.year, my_buffer.month, my_buffer.day, my_buffer.hour, my_buffer.minute, my_buffer.second); OSA_MsgQGet(sky_msg_handler, (void*)(&my_buffer), OSA_WAIT_FOREVER); skyone_DateTime_t my_buffer; /* Write your code here ... */#endif while (1) {#ifdef PEX_USE_RTOS /* Write your local variable definition here */{void TaskGREEN_task(os_task_param_t task_init_data)*/** ===================================================================** Returns : Nothing** task_init_data - OS task parameter** Parameters :** Description : Task function entry.** Callback : TaskGREEN_task** ===================================================================/*}#endif }#ifdef PEX_USE_RTOS printf("semaphore has sendded...........\r\n"); OSA_SemaPost(&sky_sem); GPIO_DRV_TogglePinOutput(LED_BLUE); OSA_TimeDelay(100); //* Example code (for task release) } i = 0; { if(i > 200) i++; osa_status_t s_status = OSA_MsgQPut(sky_msg_handler, (void*)(&my_buffer)); my_buffer.second = i; my_buffer.minute = 23; my_buffer.hour = 12; my_buffer.day = 31; my_buffer.month = 12; my_buffer.year = 16; skyone_DateTime_t my_buffer; /* Write your code here ... */#endif while (1) {#ifdef PEX_USE_RTOS /* Write your local variable definition here */{void TaskBLUE_task(os_task_param_t task_init_data)*/** ===================================================================** Returns : Nothing** task_init_data - OS task parameter** Parameters :** Description : Task function entry.** Callback : TaskBLUE_task** ===================================================================/*extern semaphore_t sky_sem;extern msg_queue_handler_t sky_msg_handler; uint8_t i = 0;
|
|