20145218&20145240 《信息安全系统设计基础》实验三 实时系统的移植
课程:信息安全系统设计基础
班级:1452
姓名:(按贡献大小排名)刘士嘉 张晓涵
学号:(按贡献大小排名)20145240 20145218
指导教师:娄嘉鹏
实验日期:2016.11.17
实验时间:10:00-12:30
实验序号:3
实验目的与要求:
1.根据实验指导书进行实时软件的安装。
2.尝试配置实验环境,并学会对软件进行测试。
3.(要求)正确使用连接线等实验仪器,并注意保护实验箱。实验结束之后将实验箱送回。
一、实验内容及步骤
实验环境配置
1.连接实验箱电源,用串口线、并口线、网线、连接实验箱和主机。
2.安装ADS
- 其中,在选择安装方式是“Install”,"Repair"还是"Remove"的选项卡中,选择remove选项,也就是要先删除旧版本的ADS。之后浏览并打开破解程序(位于00-ads1.2\Crack目录下的LICENSE.DAT)。
3.安装GIVEIO驱动(安装文件在01-GIVEIO目录下)
-
把整个GIVEIO目录拷贝到C:\WINDOWS下,并把该目录下的giveio.sys文件拷 贝到c:/windows/system32/drivers下。
-
在控制面板里,选添加硬件>下一步>选-是我已经连接了此硬件>下一步>选中-添加新的硬件设备>下一步>选中安装我手动从列表选择的硬件>下一步>选择-显示所有设备>选择-从磁盘安装-浏览,指定驱动为C:\WINDOWS\GIVEIO\giveio.inf文件,点击确定,安装好驱动。
4.安装JTAG驱动(安装文件在02-UArmJtag2.0目录下)
- 双击“UarmJtag2.0.exe”,按照默认安装即可,注意不要多次安装,如果电脑上已经有了多个,可以全部删除重新安装,我们在后面的步骤中发现,如果安装多了,可能会导致配置ARM9时出现异常,同时要注意,在控制面板里,模仿上一步中的驱动安装,将该驱动安装好。
5.配置超级终端:波特率为 115200,数据位 8,无奇偶校验,停止位 1,无数据流控制。注意一定要在配置ARM9驱动环境之前,就先进入vivi状态,因为它特别容易莫名其妙的进入“小企鹅”状态。
测试安装是否正确
- 打开ADS软件,打开需要测试的文件“exp11.mcp文件”,选中src、lib、startup、init文件夹,点击“mark”,会发现存在错误。
-
这时需要把04-test文件夹拷到英文英文目录中,再将Exp11_Date文件夹删除。重新做一遍这个步骤,发现只有警告,没有错误。
-
在进行下一步调试之前,首先打开Uarmjtag,点击初始化配置,选择处理器类型为ARM9,然后点击确定。
-
点击debug,Options->Configure Target 进行设置
-
Name:选择 ARM Ethernet driver
-
Configuration:配置为:127.0.0.1
-
回到ADS软件,点击debug进行调试。之后正常出现loading对话框。加载完成之后,屏幕上会出现等待执行的程序代码。点击go ,进行执行。
-
正常状态下,此时函数停在了main函数处,再次点击go,程序代码被完全执行。
-
所绘制的正弦函数动态曲线被显示在实验箱的液晶屏上。
-
实验代码:
void Main_Task(void *Id) //Main_Test_Task
{
int oldx,oldy;//保存原来坐标系位置
PDC pdc;//定义绘图设备上下文结构
int x,y;//坐标
double offset=0;//x坐标偏移量
ClearScreen();//清屏
pdc=CreateDC();//创建绘图设备上下文
SetDrawOrg(pdc, LCDWIDTH/2,LCDHEIGHT/2, &oldx, & oldy); //设置绘图原点为屏幕中心
Circle(pdc,0, 0, 50);//画圆
MoveTo(pdc, -50, -50);//移动到(-50,-50)
LineTo(pdc, 50, -50);//画线,当前位置变为(50,-50)
ArcTo(pdc, 80, -20, TRUE, 30);//画弧
LineTo(pdc, 80, 20);//画线,当前位置变为(80,20)
ArcTo(pdc, 50, 50, TRUE, 30);
LineTo(pdc, -50, 50);
ArcTo(pdc, -80, 20, TRUE, 30);
LineTo(pdc, -80, -20);
ArcTo(pdc, -50, -50, TRUE, 30);
OSTimeDly(3000);//将任务挂起3秒
ClearScreen();
SetDrawOrg(pdc, 0, LCDHEIGHT/2, &oldx,&oldy);//设置绘图原点为屏幕左边中部
for(;;)
{
MoveTo(pdc, 0, 0);
for(x=0;x<LCDWIDTH;x++)
{//画正弦波
y=(int)(50*sin(((double)x)/20.0+offset));//如果行数和列数偏移量超出工作表边缘,函数 OFFSET 返回错误值
LineTo(pdc, x, y);
}
offset+=1;
if(offset>=2*3.14)
offset=0;
OSTimeDly(1000);//将任务延时
ClearScreen();
}
DestoryDC(pdc);//删除绘图设备上下文
}
二、实验过程中遇到的问题以及解决方案。
1.安装ADS的时候,并未出现license wazird对话框。而安装的程序也无法使用。
- 需要先清除旧的ADS版本。因而我们重新安装了ADS;在选择安装方式是“Install”,"Repair"还是"Remove"的选项卡中,选择remove选项;就可以安装破解方法了。
2.一直到测试那一步,第一次run,程序正常的停在了main函数那里,这是再按run,在主机上的反应和指导步骤中的一样,但是,实验箱上没有反应。
- 我们之前的步骤都没有问题,所以我们换了一个试验箱,从头开始,这次成功出现了波形。