学号20145332 《信息安全系统设计基础》实验四 驱动程序设计
实验目的
学习在 LINUX 下进行驱动设计的原理。
掌握使用模块方式进行驱动开发调试的过程
实验内容
在PC机上编写简单的虚拟硬件驱动程序并进行调试,实验驱动的各个接口函数的实现, 分析并理解驱动与应用程序的交互过程。
连接arm开发板
将 arm 开发板电源线接好,保持开发板开关处于闭合状态。再分别将串口线、并口线和网线与 pc 机连接好。
建立超级终端
运行WindowsXP中:开始→所有程序→附件→通讯→超级终端(HyperTerminal)。
新建一个通信终端。要求输入区号、电话号码等信息请随意输入,为所建超级终端取名为 arm,随意为其选一个图标。
在属性对话框中,将波特率设为 115200,数据位设为 8,无奇偶校验,停止位为 1,无数据流控制。将其另存为在桌面。
打开超级终端
打开超级终端,打开 arm 机电源开关。等待一分钟,arm 机的信息会显示在超级终端的窗口中。输入“boot”后会引导kernel,启动linux系统。在应用程序目录下,可以通过“ls”查看。
环境配置
输入ifconfig命令,记录下arm机的ip为:192.168.0.123。修改xp系统与redhat虚拟机的ip,使得它们均与arm机的ip在同一网段。xp系统为192.168.0.78,redhat为192.168.0.121.将三个IP地址ping一下,确保是相互联通的。
在pc机中“开始”、“运行”,输入虚拟机的ip。\192.168.0.121,输入用户名bc,密码123456 然后确定,就可以访问虚拟机的文件了。然后把所需文件解压缩拷贝到共享文件夹bc中。进入虚拟机,在命令行中输入./install.sh,安装脚本程序将会自动建立
目录,配置编译环境。
在虚拟机中使用vi修改/root/.bash_profile文件中的PATH变量为PATH=$PATH:$HOME/bin:/opt/host/armv4l/bin/(因为该文件为隐藏系统文件,所以使用ls命令不可见),存盘后执行:source /root/.bash_profile,则以后armv4l-unknown-linux-gcc会自动搜索到,可以在终端上输入。
实验步骤
1、阅读和理解源代码
进入/arm2410cl/exp/drivers/01_demo,使用vi编辑器或其他编辑器阅读理解源代码。
2、编译驱动模块及测试程序
上面介绍了在 Makefile 中有两种编译方法,可以在本机上使用 gcc 也可以使用交叉编 译器进行编译
3、测试驱动程序
如果使用 gcc 编译的话,需要通过#mknod /dev/demo c 254 0 命令来建立设备节点,如果使用交叉编译器 的话,不需要建立设备节点
4、编译成功
[root@BC 01_demo]# ./test_demo
write 32 bytes data to /dev/demo
0: 0 1 2 3
1: 4 5 6 7
2: 8 9 10 11
3: 12 13 14 15
4: 16 17 18 19
5: 20 21 22 23
6: 24 25 26 27
7: 28 29 30 31
*****************************************************
Read 32 bytes data from /dev/demo
0: 31 30 29 28
1: 27 26 25 24
2: 23 22 21 11
3: 12 13 14 15
4: 16 17 18 19
5: 20 10 9 8
6: 7 6 5 4
7: 3 2 1 0
*****************************************************
转载于:https://www.cnblogs.com/lx20145332/p/6058820.html
学号20145332 《信息安全系统设计基础》实验四 驱动程序设计相关推荐
- 信息安全系统设计基础实验四:外设驱动程序设计 20145222黄亚奇 20145213祁玮
北京电子科技学院(BESTI) 实 验 报 告 封 面 课程:信息安全系统设计基础 班级:1452 姓名: 黄亚奇 祁玮 学号: 20145222 20145213 成绩: 指导教师:娄嘉鹏 实验日期 ...
- 信息安全系统设计基础 实验四:外社驱动程序设计 20135327郭皓 20135329 李海空...
北京电子科技学院(BESTI) 实 验 报 告 课程:信息安全设计基础 班级:1353 姓名:郭皓 李海空 学号:20135327 ...
- 信息安全系统设计基础实验四—20135215黄伟业20135222胡御风
http://www.cnblogs.com/huyufeng/p/5004797.html 转载于:https://www.cnblogs.com/1551127024hwy/p/5010833.h ...
- 20145312《信息安全系统设计基础》实验四 驱动程序设计
20145312<信息安全系统设计基础>实验四 驱动程序设计 实验目的与要求 学习在 LINUX 下进行驱动设计的原理 掌握使用模块方式进行驱动开发调试的过程 实验内容 在 PC 机上编写 ...
- 信息安全系统设计基础实验三
北京电子科技学院(BESTI) 实 验 报 告 课程:信息安全系统设计基础 班级:1352 姓名:马悦 学号:20135235 成绩: ...
- 信息安全系统设计基础实验三—20135222胡御风20135215黄伟业
北京电子科技学院(BESTI) 实 验 报 告 课程:信息安全系统设计基础 班级: 1352 姓名:胡御风 黄伟业 ...
- 20135201李辰希20135219洪韶武——信息安全系统设计基础实验五报告
北京电子科技学院(BESTI) 实 验 报 告 课程:信息安全系统设计基础 班级: 1352 姓名:李辰希,洪韶武 学号:20135201,20135219 ...
- 信息安全系统设计基础实验一—20135222胡御风20135215黄伟业
北京电子科技学院(BESTI) 实 验 报 告 课程:信息安全系统设计基础 班级: 1352 姓名:胡御风 黄伟业 ...
- 信息安全系统设计基础实验五—20135222胡御风20135215黄伟业
北京电子科技学院(BESTI) 实 验 报 告 课程:信息安全系统设计基础 班级: 1352 姓名:胡御风 黄伟业 ...
- 20135201李辰希20135219洪韶武——信息安全系统设计基础实验报告
北京电子科技学院(BESTI) 实 验 报 告 课程:信息安全系统设计基础 班级:1352班 ...
最新文章
- 强化学习(Reinforcement Learning)是什么?强化学习(Reinforcement Learning)和常规的监督学习以及无监督学习有哪些不同?
- spring-data-redis 中使用RedisTemplate操作Redis
- 三十一、Scrapy爬取百度图片
- leetcode15. 三数之和(三指针)
- (WWWWWWWWWW)codevs 3305 水果姐逛水果街Ⅱ
- redis 公网 安全_最安全redis公网访问
- iOS自定义SearchBar样式
- MVCPager学习小记
- IdentityServer4学习及简单使用
- 在Linux系统中搭建web服务器
- 机翻福音-多种语言平行语料库资源
- 用正点原子的精英版与onenet云平台连接
- CTFSHOW 套娃shell
- Excel 基础的操作
- 图床程序 php,开源免费PHP图床程序–Qchan
- 【leetcode_easy_$】577. Employee Bonus
- 一切都是最好的安排之hibernate00
- 团购网站暴信任危机:团购无效电影票
- 探索篇 | C语言改变控制台输出内容颜色
- python发红包最佳手气王_给自己发了两亿个红包后,我找到了手气最佳的秘密