实验目的

学习在 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 《信息安全系统设计基础》实验四 驱动程序设计相关推荐

  1. 信息安全系统设计基础实验四:外设驱动程序设计 20145222黄亚奇 20145213祁玮

    北京电子科技学院(BESTI) 实 验 报 告 封 面 课程:信息安全系统设计基础 班级:1452 姓名: 黄亚奇 祁玮 学号: 20145222 20145213 成绩: 指导教师:娄嘉鹏 实验日期 ...

  2. 信息安全系统设计基础 实验四:外社驱动程序设计 20135327郭皓 20135329 李海空...

    北京电子科技学院(BESTI) 实     验    报     告 课程:信息安全设计基础                         班级:1353 姓名:郭皓 李海空 学号:20135327 ...

  3. 信息安全系统设计基础实验四—20135215黄伟业20135222胡御风

    http://www.cnblogs.com/huyufeng/p/5004797.html 转载于:https://www.cnblogs.com/1551127024hwy/p/5010833.h ...

  4. 20145312《信息安全系统设计基础》实验四 驱动程序设计

    20145312<信息安全系统设计基础>实验四 驱动程序设计 实验目的与要求 学习在 LINUX 下进行驱动设计的原理 掌握使用模块方式进行驱动开发调试的过程 实验内容 在 PC 机上编写 ...

  5. 信息安全系统设计基础实验三

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

  6. 信息安全系统设计基础实验三—20135222胡御风20135215黄伟业

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

  7. 20135201李辰希20135219洪韶武——信息安全系统设计基础实验五报告

    北京电子科技学院(BESTI) 实     验    报     告 课程:信息安全系统设计基础          班级:   1352 姓名:李辰希,洪韶武 学号:20135201,20135219 ...

  8. 信息安全系统设计基础实验一—20135222胡御风20135215黄伟业

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

  9. 信息安全系统设计基础实验五—20135222胡御风20135215黄伟业

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

  10. 20135201李辰希20135219洪韶武——信息安全系统设计基础实验报告

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

最新文章

  1. 强化学习(Reinforcement Learning)是什么?强化学习(Reinforcement Learning)和常规的监督学习以及无监督学习有哪些不同?
  2. spring-data-redis 中使用RedisTemplate操作Redis
  3. 三十一、Scrapy爬取百度图片
  4. leetcode15. 三数之和(三指针)
  5. (WWWWWWWWWW)codevs 3305 水果姐逛水果街Ⅱ
  6. redis 公网 安全_最安全redis公网访问
  7. iOS自定义SearchBar样式
  8. MVCPager学习小记
  9. IdentityServer4学习及简单使用
  10. 在Linux系统中搭建web服务器
  11. 机翻福音-多种语言平行语料库资源
  12. 用正点原子的精英版与onenet云平台连接
  13. CTFSHOW 套娃shell
  14. Excel 基础的操作
  15. 图床程序 php,开源免费PHP图床程序–Qchan
  16. 【leetcode_easy_$】577. Employee Bonus
  17. 一切都是最好的安排之hibernate00
  18. 团购网站暴信任危机:团购无效电影票
  19. 探索篇 | C语言改变控制台输出内容颜色
  20. python发红包最佳手气王_给自己发了两亿个红包后,我找到了手气最佳的秘密

热门文章

  1. SpringMVC之拦截器和异常处理
  2. 系统分析之100亿级日志系统是怎么设计出来的?
  3. 攻防演练中的业务逻辑漏洞及检测思路
  4. JVM插桩之一:JVM字节码增强技术介绍及入门示例
  5. 【slighttpd】基于lighttpd架构的Server项目实战(7)—http-parser
  6. java图像处理之幂律变换
  7. highchart 柱状图,列宽自适应(x轴是时间的特殊情况)
  8. Linux基础命令---comm
  9. 领域驱动设计理论基础
  10. 17个服务器发展趋势,我们都给您总结好了!