课程:信息安全系统设计基础

班级: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,在主机上的反应和指导步骤中的一样,但是,实验箱上没有反应。

  • 我们之前的步骤都没有问题,所以我们换了一个试验箱,从头开始,这次成功出现了波形。

20145218&20145240 《信息安全系统设计基础》实验三 实时系统的移植的更多相关文章

  1. 20145215&20145307信息安全系统设计基础实验报告

    20145215&20145307信息安全系统设计基础实验报告 PART1 一.实验原理 交叉编译,简单地说,就是在一个平台上生成另一个平台上的可执行代码.同一个体系结构可以运行不同的操作系统 ...

  2. 20145220&20145209&20145309信息安全系统设计基础实验报告(5)

    20145220&20145209&20145309信息安全系统设计基础实验报告(5) 实验报告链接: http://www.cnblogs.com/zym0728/p/6132249 ...

  3. 20145220&20145209&20145309信息安全系统设计基础实验报告(3)

    20145220&20145209&20145309信息安全系统设计基础实验报告(3) 实验报告链接: http://www.cnblogs.com/zym0728/p/6132243 ...

  4. 20145220&20145209&20145309信息安全系统设计基础实验报告(4)

    20145220&20145209&20145309信息安全系统设计基础实验报告(4) 实验报告链接: http://www.cnblogs.com/zym0728/p/6132246 ...

  5. 20145220&20145209&20145309信息安全系统设计基础实验报告(2)

    20145220&20145209&20145309信息安全系统设计基础实验报告(2) 实验报告链接: http://www.cnblogs.com/zym0728/p/6083664 ...

  6. 信息安全系统设计基础实验一 20135211&20135216

    北京电子科技学院(BESTI) 实 验 报 告 封面 课程:信息安全系统设计基础              班级:1352           姓名:(按贡献大小排名)李行之 刘蔚然          ...

  7. 信息安全系统设计基础实验四:外设驱动程序设计 20135211李行之&20135216刘蔚然

    北京电子科技学院(BESTI) 实 验 报 告 封面 课程:信息安全系统设计基础                                           班级:1352           ...

  8. 信息安全系统设计基础实验二 20135210&20135218

    北京电子科技学院(BESTI) 实     验    报     告 课程:信息安全系统设计基础                                          班级:1352 姓名 ...

  9. 信息安全系统设计基础实验四 20135210&20135218

    北京电子科技学院(BESTI) 实     验    报     告 课程:信息安全系统设计基础          班级:   1352 姓名:程涵,姬梦馨 学号:20135210,20135218 ...

随机推荐

  1. 一个java的Profile工具

    场景:我们在系统运行中,需要监控某个代码段的运行时间,我们完全可以使用currentTimeMillis来做,但是做起来比较麻烦,尤其是需要阶段监控的时候,那么这个工具就出现啦~~~ 先说下想要实现的 ...

  2. 货运APP雨后春笋 传统物流模式将被改变

    移动互联网正在改变我们的生活方式,各种手机APP充斥着人们的生活,物流行业也不例外.货运APP的出现,对于物流行业是一个提升的机会,也是迈向标准化和专业化的一个有效途径.有专家预测,这将为物流行业的发 ...

  3. QT数据库操作

    浏览: 在QSqlQuery类中当执行exec()后会把指针放在记录集中第一个记录之上,所以需要调用QSqlQuery::next()来获取第一个数据,下面通过循环体来遍历所有表中的数据. while ...

  4. Linux的常用命令

    1.cd命令 这是一个非常基本,也是大家经常需要使用的命令,它用于切换当前目录,它的参数是要切换到的目录的路径,可以是绝对路径,也可以是相对路径.如:   cd /root/Docements # 切 ...

  5. 《编写可维护的JavaScript》——JavaScript编码规范(六)

    变量.函数和运算符 在讨论过基本的JavaScript书写格式化之后,接下来关注如何使用函数.变量和运算符来减少复杂度和增强可读性就显得十分重要了. 变量声明 变量声明是通过var语句来完成的.var ...

  6. unity3d随机地牢生成代码

    现在也是处于失业状态,碰巧看到个面试题是要用unity生成个随机地牢,就把做题过程中的思路和代码记录一下吧. 做完了以后我又想了一下,发现其实根本不需要这么麻烦,果然demo里的代码对我的思路影响还是 ...

  7. 关于js写全选的方法

    思路:用一个变量来存储值,点击复选框来改变值: 代码 var num = 0; obj.onclick = function(){ if(this.checked == true){ for(var ...

  8. The Same Game-POJ1027模拟

    The Same Game Time Limit: 1000MS Memory Limit: 10000K Description The game named "Same" is ...

  9. RK 61 键盘 Ubuntu 下键位映射修改方案

    在用户 Home 目录下面创建 .Xmodmap 文件,然后输入以下的内容: remove Lock = Caps_Lock remove Control = Control_L remove Con ...

  10. readline,readlines,read函数

    readline是读取每一行,包括'\n'.读出来是一个含'\n'的字符串. realines是读取整个文件,返回所有行的一个list(写代码的时候你需要一个文件的某几行,就可以用这个函数去切分) r ...