void TaskName(void *Id) {
//添入任务初始化语句 for(;;)
{ //添入任务循环内容
OSTimeDly(SusPendTime);//挂起一定时间,以使其他任务可
以占用CPU
} }
uCOS-II 至少要有一个任务,这里首先创建一个系统任务SYS_Task,其中由语句
OSRunning=TRUE; //使能uCOS-II 运行 uHALr_InstallSystemTimer(); 启动系统时钟和多任务切换。
7.7 实验结果总结
使用ARM的C语言和汇编语言的编程方法,将μC/OS-II 内核移植到ARM 7 处理器上的基本原理与嵌入式编程实现方法。实现了ucos-II移植。
7.8 心得体会
通过本实验,我了解μC/OS-II 内核的主要结构和ARM7处理器结构,掌握了将μC/OS-II 内核移植到ARM 7 处理器上的基本原理与嵌入式编程实现方法。为以后的实验打下了基础。
8. 实验八
8.1 实验名称
各接口模块相互衔接综合实验
8.2 实验目的
(1)回顾串口、键盘、LED接口、A/D、电机转动、定时器中断、LCD接口及触摸屏驱动控制等接口模块驱动设计及开发方法。
(2)提高开发综合应用系统的能力。
8.3 实验环境
硬件:ARM 嵌入式开发平台、用于ARM7TDMI 的JTAG 仿真器、PC 机Pentium100 以上。
软件:PC 机操作系统Windows、ADS1.2 集成开发环境、仿真器驱动程序、超级终端通讯程序。
8.4实验内容及要求
内容:
综合应用串口、键盘、LED接口、A/D、电机转动、定时器中断、LCD接口及触摸屏驱动控制等接口模块驱动设计及开发方法全部或者部分模块,实现一个嵌入式综合应用系统, 要求:
至少用到8个模块中的5个。尽量使综合应用系统具备合理的功能。
8.5实验设计与实验步骤
①综合运用串口、键盘、LED接口、A/D、电机转动、定时器中断、LCD接口及触摸屏驱动控制共八个模块。
②对main.c函数进行设置使得
按下键盘上1、2、3、4、5、6时,分别有以下实验结果:
直流电机开始转动、步进电机转动、屏幕上输出字母、开始计数、计数停止、在屏幕上点击两个点,使其实现直线连接。
8.6实验过程与分析
核心代码如下: void go() { U16 key;
if(!(rPDATG&ZLG7289_KEY)) {
*Revdata = RdURXH0(); key = GetKey(); if(key == 1) {
flag = 1;
}
while(flag == 1)
{
ADData = GetADresult(0); Delay(10);
SetPWM((ADData - 512) * MOTOR_CONT/1024);
}
Delay(1000);
if(key == 3) { }
if(key == 4) { }
if(key == 5) { }
if(key == 6) {
flag = 6; } flag = 5; flag = 4; flag = 3;
}
if(key == 2) { }
flag = 2;
}
Delay(10);
SetPWM(0);
lastADData = GetADresult(0); Delay(10);
while(flag == 2) { }
while(flag == 3) { }
while(flag == 4) { }
SetPWM(0); for(i=0;i<=7;i++) { }
SETEXIOBITMASK(stepdata[i],0xf0); Delay(200); LCD_Init();
LCD_ChangeMode(DspTxtMode); LCD_Cls();
LCD_printf(\Delay(100000);
SetISR_Interrupt(INT_TIMER3_OFFSET,Timer3_ISR,1); Open_INT(BIT_TIMER3); Start_Timer3();
while(flag == 5) { }
while(flag == 6) { }
ARMTargetInit(); if(TchScr_Test()==0) {
ARMTargetInit(); flag = 4; }
x1 = GetADresult(0); Uart_Printf(\Delay(1000);
Delay(1000);
8.7 实验结果总结
按下键盘上1、2、3、4、5、6时,分别有以下实验结果:
直流电机开始转动、步进电机转动、屏幕上输出字母、开始计数、计数停止、在屏幕上点击两个点,使其实现直线连接。
成功实现了综合应用串口、键盘、LED接口、A/D、电机转动、定时器中断、LCD接口及触摸屏驱动控制等接口模块驱动设计及开发方法的部分模块,实现了一个嵌入式综合应用系统,
8.8 心得体会
这是最后一次实验,对以往的实验进行了回顾和总结。总体来说,我的编程能力得到了提高,但是还不能完全独立完成编码,对编码的部分内容,得向别人询问才能学会,但总体来说,还是达到实验目的,完成了实验要求,正因为自己会的并不多,所以每当实验结果得以实现时,总会感觉很满足。