信息安全系统设计基础_exp3
| 北京电子科技学院(BESTI) | ||
| 实 验 报 告 | ||
| 课程:信息安全系统设计基础 | 班级:1353 | 姓名:吴子怡、郑伟 |
| 学号:20135313、20135322 | 指导教师: 娄嘉鹏 | 实验日期:2015年11月25日 |
| 必修/选修:必修 | 实验序号:exp3 | 实验时间:15:30-18:00 |
| 实验名称: exp3_实时系统的移植 | ||
| 实验目的与要求 | 1、安装ADS | |
| 2、安装GIVEIO驱动 | ||
| 3、安装JTAG驱动 | ||
| 4、测试基本安装是否正确 | ||
| 实验器材 | 1、Lenovo计算机一台 | |
| 2、ARM实验箱一个 | ||
搭档博客链接:20135313吴子怡http://www.cnblogs.com/paperfish/
配置实验环境:
1. 安装ADS(安装文件在00-ads1.2目录下,破解方法00-ads1.2\Crack目录下)

2. 安装GIVEIO驱动(安装文件在01-GIVEIO目录下)
把整个GIVEIO目录拷贝到C:\WINDOWS下,并把该目录下的giveio.sys文件拷贝到c:/windows/system32/drivers下。
在控制面板里,选添加硬件>下一步>选-是我已经连接了此硬件>下一步>选中-添加新的硬件设备>下一步>选中安装我手动从列表选择的硬件>下一步>选择-显示所有设备>选择-从磁盘安装-浏览,指定驱动为C:\WINDOWS\GIVEIO\giveio.inf文件,点击确定,安装好驱动
3. 安装JTAG驱动(安装文件在02-UArmJtag2.0目录下)
4. 配置超级终端:波特率为 115200,数据位 8,无奇偶校验,停止位 1,无数据流控制。
5. 测试基本安装是否正确,参考文档“03-测试文档.pdf”,测试程序在04-Test目录下
|
1
|
在pc机中“开始”、“运行”,输入虚拟机的ip。\\192.168.0.234,输入用户名bc,密码123456。然后就可以访问虚拟机的文件。再把所需文件解压缩拷贝到共享文件夹bc中。 |
|
1
2
3
4
5
6
7
8
|
首先运行ADS.1.2集成开发环境。单击File->Open
选择工程文件exp3/Exp11绘图的API函数为例,选择Exp11.mcp后打开
选择需编译的文件,在相应文件夹前空白点击选中,头文件库文件不能选中,因已经被包含到源代码中。
点击make进行编译连接,编译结果为4个警告,15个其他信息,见下图。
在调试程序运行之前务必开启Uarmjtag点击初始化配置,选择ARM9,并保证平台停止在VIVI状态下,如图。
点击Debug按钮进行仿真调试。
点击Option->Configure Target,弹出对话框,选configure,更改设置,name:ARM Ethernet driver,
Configuration:127.0.0.1,点击确定,选择ADP,出现加载页面。这次需要关闭,在Debug,才是正常加载页面,如图。然后点击run。正常状态下停止在main函数。继续点击RUN可运行绘图实验,出现绘图好的图形,如图。结束前,先暂停在退出程序。
|






二、遇到的问题及解决方法
1、选择需编译的文件,在相应文件夹前空白点击选中,头文件库文件不能选中,因已经被包含到源代码中。点击make进行编译连接,编译结果为4个警告,15个其他信息
(注意:编译失败的原因可能是路径中含中文或者是Exp11_Data问题)
2、在点击run后,运行程序,运行了很久,一直到不了正常状态之下,后来才发现,终端要在检测安装是否正确的时候才启动。
三、uc/os-II
- μC/OS-II任务的代码结构是一个可以带有临界段的无限循环。
void MyTask(void *pdata)
{
for (;;)
{
可以被中断的用户代码;
OS_ENTER_CRITICAL( );//进入临界段(关中断)
不可以被中断的用户代码;
OS_EXIT_CRITICAL( ); //退出临界段(开中断)
可以被中断的用户代码;
}
}
- μC/OS-II提供的另一个系统任务是统计任务OSTaskStat( )。这个统计任务每秒计算一次CPU在单位时间内被使用的
时间,并把计算结果以百分比的形式存放在变量OSCPUsage中,以便应用程序通过访问它来了解CPU的利用率,所以这个系
统任务OSTaskStat( )叫做统计任务。
在应用程序中定义任务堆栈的栈区非常简单,即定义一个OS_STK类型的一个数组并在创建一个任务时把这个数组的地址赋给该任务就可以了。
例如:
//定义堆栈的长度
#define TASK_STK_SIZE 512//定义一个数组来作为任务堆栈
OS_STK TaskStk[TASK_STK_SIZE];- (PS:
使用函数OSTaskCreate( )创建任务时,一定要注意所使用的处理器对堆栈增长方向的支持是向上的还是向下的
)
void main(void)
{
……
OSTaskCreate(
MyTask, //任务的指针
&MyTaskAgu, //传递给任务的参数
& MyTaskStk[MyTaskStkN-1],//任务堆栈栈顶地址
20 //任务的优先级别
);
……
}
四、心得体会
实验三的实验环境与其他实验环境不一样,操作步骤也是按照实验指导书一步步做的,就是偶尔有时候出现一些小状况,要重新做。比如进错了系统,进成了window7,就找不到添加/删除硬件的选项,比如终端应该何时启用,要看到有企鹅的标识什么的,这些都是实验指导书上没有的,需要我们去摸索,或者在老师的指导下发现的一些错误。学习了μc/os-II的特点,学习了一些学习实时系统的概念与方法,在老师提供的资料,与同学的共同探讨下,或多或少地学到了一些实时系统里的一些相关的概念与代码知识。
信息安全系统设计基础_exp3的更多相关文章
- 20145213《信息安全系统设计基础》实验一 Linux开发环境的配置
北京电子科技学院(BESTI) 实 验 报 告 课程:信息安全系统设计基础 班级:1452 姓名: 黄亚奇 祁玮 学号:20145213 20145222 成绩: 指导教师:娄嘉鹏 实验日期:2016 ...
- 20145215&20145307《信息安全系统设计基础》实验二 固件设计
20145215&20145307<信息安全系统设计基础>实验二 固件设计 实验目的与要求 了解多线程程序设计的基本原理,学习 pthread 库函数的使用. 了解在 linux ...
- 20145215&20145307《信息安全系统设计基础》实验五 网络通信
小组成员:20145215卢肖明.20145307陈俊达 实验报告链接:信息安全系统设计基础--实验五实验报告
- 20145223《信息安全系统设计基础》 GDB调试汇编堆栈过程分析
20145223<信息安全系统设计基础> GDB调试汇编堆栈过程分析 分析的c语言源码 生成汇编代码--命令:gcc -g example.c -o example -m32 进入gdb调 ...
- 20145216 20145330 《信息安全系统设计基础》 实验五 简单嵌入式WEB 服务器实验
20145216 20145330 <信息安全系统设计基础> 实验五 简单嵌入式WEB 服务器实验 实验报告封面 实验步骤 1.阅读理解源码 进入/arm2410cl/exp/basic/ ...
- 20145208《信息安全系统设计基础》实验五 简单嵌入式WEB 服务器实验
20145208<信息安全系统设计基础>实验五 简单嵌入式WEB 服务器实验 20145208<信息安全系统设计基础>实验五 简单嵌入式WEB 服务器实验
- 2016-2017-1 《信息安全系统设计基础》 学生博客及Git@OSC 链接
2016-2017-1 <信息安全系统设计基础> 学生博客及Git@OSC 链接 博客 1452 20145201李子璇 20145202马 超 20145203盖泽双 20145204张 ...
- 20145215&20145307信息安全系统设计基础实验报告
20145215&20145307信息安全系统设计基础实验报告 PART1 一.实验原理 交叉编译,简单地说,就是在一个平台上生成另一个平台上的可执行代码.同一个体系结构可以运行不同的操作系统 ...
- 20145315&20145307《信息安全系统设计基础》实验五
20145315&20145307<信息安全系统设计基础>实验五 北京电子科技学院(BESTI) 实 验 报 告 课程:信息安全系统设计基础 班级:1453 1452 姓名:陈俊达 ...
随机推荐
- 20个简化开发任务的 JavaScript库
所谓JavaScript库就是预先写好的可以简化基于JavaScript的应用程序开发的,尤其是Ajax和其它以web为中心的技术的 JavaScript代码集.JavaScript主要用于写内嵌于H ...
- 解决tomcat6部署spring4+mybatisJSP页面产生的500错误,控制台报java.lang.NullPointerException的问题
搭建spring4+mybatis+springMVC访问项目时产生异常: 严重: Servlet.service() for servlet jsp threw exception java.lan ...
- OOD沉思录 --- 类和对象的关系 --- 包含关系2
4.6 尽量让类中定义的每个方法尽可能多地使用包含的对象(即数据成员) 这其实就是高内聚的翻版强调.如果每个类的情况并非如此,那很可能是这一个类表示了两个或更多的概念,记住一个类只应该表示一个概念. ...
- CentOS 6.4安装配置LNMP服务器(Nginx+PHP+MySQL)
准备篇 1.配置防火墙,开启80端口.3306端口 vi /etc/sysconfig/iptables-A INPUT -m state --state NEW -m tcp -p tcp --dp ...
- C#初级知识点整理及VS的简单使用
C#预处理器指令#define #undef 声明一个不需赋值的变量注意的一点事它必须放到using 上面,如 #define TEST using System.xxx; public class ...
- 数据结构--树状数组&&线段树--基本操作
随笔目的:方便以后对树状数组(BIT)以及基本线段树的回顾 例题链接:http://acm.hdu.edu.cn/showproblem.php?pid=1166 例题:hdu 1166 敌兵布阵 T ...
- C# url信息获取
假设当前页完整地址是:http://www.360jht.com/game/bbb.aspx?id=5&name=kelli "http://"是协议名 "www ...
- Maximum Subsequence Sum(接上篇)
Given a sequence of K integers { N1, N2, ..., NK }. A continuous subsequence is defined to be { Ni, ...
- DAC使用基本准则
DAC Nyquist Zones, Zero Order Hold, and Images why do the Fout images exist in every Nyquist zone? W ...
- hyperstart 容器创建流程分析
hyperstart中运行的pod的核心数据结构如下所示: struct hyper_pod { struct hyper_interface *iface; struct hyper_route * ...

