北航ARM9实验报告(4)
北京航空航天大学研究生实验报告
char err; char *c;
#define rUTRSTAT0 (*(volatile unsigned *)0x50000010)
#define RdURXH0() (*(volatile unsigned char *)0x50000024)
#define WrUTXH0(ch) (*(volatile unsigned char *)0x50000020)=(unsigned char)(ch)
#define RED (0xff << 16) #define BLUE (0xff << 8) #define GREEN (0xff)
char Uart_Getchn(char* Revdata, int Uartnum, int timeout); void Uart_SendByten(int Uartnum, U8 data);
///******************任务定义***************///
/*OS_STK SYS_Task_Stack[STACKSIZE]= {0, }; //system task刷新任务堆栈 #define SYS_Task_Prio 1 void SYS_Task(void *Id);*/
OS_STK task1_Stack[STACKSIZE]={0, }; //Main_Test_Task堆栈 void Task1(void *Id); //Main_Test_Task #define Task1_Prio 12
OS_STK task2_Stack[STACKSIZE]={0, }; //test_Test_Task堆栈 void Task2(void *Id); //test_Test_Task #define Task2_Prio 15
OS_STK task3_Stack[STACKSIZE]={0, }; //test_Test_Task堆栈 void Task3(void *Id); //test_Test_Task #define Task3_Prio 17
OS_STK task4_Stack[STACKSIZE]={0, }; //test_Test_Task堆栈 void Task4(void *Id); //test_Test_Task #define Task4_Prio 19
/**************已经定义的OS任务************* #define SYS_Task_Prio 1 #define Touch_Screen_Task_Prio 9 #define Main_Task_Prio 12
#define Key_Scan_Task_Prio 58 #define Lcd_Fresh_prio 59
- 15 -
北京航空航天大学研究生实验报告
#define Led_Flash_Prio 60
***************************************/////////
///*****************事件定义*****************///
/////////////////////////////////////////////////////
// Main function. // //////////////////////////////////////////////////// int main(void) { ARMTargetInit(); // do target (uHAL based ARM system) initialisation // OSInit(); // needed by uC/OS-II // //OSInitUart(); //initOSFile();
//#if USE_MINIGUI==0 // initOSMessage(); // initOSDC(); // LoadFont(); //#endif //loadsystemParam(); // create the tasks in uC/OS and assign increasing // // priorities to them so that Task3 at the end of // // the pipeline has the highest priority. // //LCD_printf(\ //OSTaskCreate(SYS_Task, (void *)0, (OS_STK *)&SYS_Task_Stack[STACKSIZE-1], SYS_Task_Prio); OSTaskCreate(Task1, (void *)0, (OS_STK *)&task1_Stack[STACKSIZE-1], Task1_Prio); OSTaskCreate(Task2, (void *)0, (OS_STK *)&task2_Stack[STACKSIZE-1], Task2_Prio); OSTaskCreate(Task3, (void *)0, (OS_STK *)&task3_Stack[STACKSIZE-1], Task3_Prio);
OSTaskCreate(Task4, (void *)0, (OS_STK *)&task4_Stack[STACKSIZE-1],
- 16 -
北京航空航天大学研究生实验报告
Task4_Prio); OSAddTask_Init(0);
BSPprintf(0,\ //LCD_printf(\ //LCD_printf(\ //LCD_ChangeMode(DspGraMode); OSStart(); // start the OS // // never reached // return 0; }//main
////////////////////////////////////////////////////////////////////////////////////////////////////////////////// void Task1(void *Id) { for(;;){ BSPprintf(0,\ if(ac_key == TRUE) {
ac_key = FALSE;
for(i=0;i LCDBufferII2[j][i] = RED; } } LCD_Refresh(); ac_key = TRUE; } OSTimeDly(1000); } } void Task2(void *Id) { for(;;){ BSPprintf(0,\ if(ac_key == TRUE) - 17 - 北京航空航天大学研究生实验报告 { ac_key = FALSE; for(i=0;i LCDBufferII2[j][i] = GREEN; } } LCD_Refresh(); ac_key = TRUE; } OSTimeDly(2000); } } void Task3(void *Id) { /*char txmsg; MboxSem = OSMboxCreate((void *)0); txmsg = 'A';*/ for(;;){ //OSMboxPost(MboxSem, (void *)&txmsg); //BSPprintf(0,\ if(ac_key == TRUE) { ac_key = FALSE; for(i=0;i LCDBufferII2[j][i] = BLUE; } } LCD_Refresh(); ac_key = TRUE; } OSTimeDly(5000); } } void Task4(void *Id) { - 18 - 北京航空航天大学研究生实验报告 //char *rxmsg; // INT8U err; for(;;){ // rxmsg = (char *)OSMboxPend(MboxSem, 0, &err); //BSPprintf(0,\ err=Uart_Getchn(c,0,0); //从串口采集数据 Uart_SendByten(0, *c); Uart_SendByten(0,0xa);//换行 Uart_SendByten(0,0xd);//回车 //OSTimeDly(1000); } } void Uart_SendByten(int Uartnum, U8 data)//ok eric rong { //int i; if(Uartnum==0) { while(!(rUTRSTAT0 & 0x4)); //Wait until THR is empty. hudelay(10); WrUTXH0(data); } } char Uart_Getchn(char* Revdata, int Uartnum, int timeout) { while(!(rUTRSTAT0 & 0x1)); //Receive data read *Revdata=RdURXH0(); return TRUE; } 八、思考题 1. 如何提高键盘的响应速度?
相关推荐:
- [互联网资料]2022年厦门大学机电工程系824机械设计
- [互联网资料]东南大学2022年硕士研究生拟录取名单公
- [互联网资料]能源调研报告(精选多篇)
- [互联网资料]初三英语下学期 中考英语 语法填空训练
- [互联网资料]2022内蒙古选调生行测常识备考:新事物
- [互联网资料]自驾必备!在新西兰租什么样的车自驾游
- [互联网资料]佛教素食菜谱44页未完
- [互联网资料]盈利能力分析外文翻译
- [互联网资料]2022年南昌航空大学音乐学院736马克思
- [互联网资料]优选外贸跟单实习报告总结(精品版)
- [互联网资料]银行新员工培训总结
- [互联网资料]2_year_visa_new_guidance_190316
- [互联网资料]天津市五校宝坻一中静海一中杨村一中芦
- [互联网资料]2007--2008学年第一学期高三数学宁波市
- [互联网资料]Chromatic framework for vision in ba
- [互联网资料]幼儿园大班上学期美术教案《心愿树》含
- [互联网资料]2022年华中农业大学信息学院820微型计
- [互联网资料]硬盘坏道的表现 __硬盘使用久了
- [互联网资料]江苏省2016年会计从业资格考试《会计基
- [互联网资料]公共场所卫生监督试卷全解
- 高级英语第一册所有修辞方法及例子总结
- 综合交通枢纽规划与城市发展
- 沃尔玛的企业文化案例分析
- 美国Thanksgiving Day 感恩节 介绍
- PEP六年级英语上册Unit6How do you fee
- 最齐全的中国大型商场购物中心名单
- 数据结构实验报告八—哈夫曼编译码
- 杭州市余杭区人民政府(通知)
- 七年级语文成语运用专项训练
- 微观经济学第三章 消费者行为 课后习题
- 对_钱学森之问_的思考
- Excel_三级联动_下拉菜单
- 办公用品需求计划申请表
- 对外汉语教材必须要知道的发展史
- 挑战杯大学生学术科技作品竞赛作品申报
- 举办民办教育培训机构应具备下列条件
- 太阳能路灯项目设计方案
- 2013年八年级上最新人教版新教材Unit3I
- 【历史】 6-4 《近代科学之父牛顿》 课
- 高中生物《第四章 第二节 探讨加酶洗衣




