已知下列程序通过μC/OS-II系统,在51内核上实现了字符串数据接收,以及字符串解析的功能,其中任务A进行字符串数据的接收,优先级为5,任务B进行字符串数据的解析,优先级为6,请补全代码。(部分空格可能需要多行代码,只要逻辑正确,不一定要按照题目要求填写) #include
#include
......//其他必要的h文件 #define STK_SIZE 64 OS_STK stk1[STK_SIZE],stk2[STK_SIZE]; BOOL fin = FALSE; char* buff[64],pt = 0; void analyze_msg(char* buff);//字符串解析函数,略 void TaskA(void* param); void TaskB(void* param); void main(void) { SYSInit();//系统硬件初始化,略 OSInit(); _________________________(第1空,该处推荐填写两行) OSStart(); } //串口读取任务 void TaskA(void* param) { while(1) { if(RI) { RI = 0; ________________________;(第2空,该处推荐填写1行) if((buff[pt++] = SBUF)=='\0') { fin = TRUE; } OSSchedUnlock(); } } } //字符串解析任务 void TaskB(void* param) { while(1) { BOOL fin2 = FALSE; char* buff2[64],pt2; OSSchedLock(); if(fin) { ______________________(第3空,该处推荐填写4行) } ______________________(第4空,该处推荐填写1行) if(fin2) { cmd_analyze(buff2); } } }