【Linux实验】I/O接口实验(Vmware虚拟机、S5P6818开发板)

一、实验目的

  1. 掌握S5P6818芯片的I/O口控制寄存器的配置。
  2. 掌握实验掌握ARM芯片使用I/O口控制LED显示。
  3. 熟练使用嵌入式交叉编译器
  4. 掌握Makefile文件书写。

二、实验内容

编写程序控制实验平台的发光二极管亮灭。

三、实验设备

  • Vmware虚拟机
  • S5P6818开发板

四、实验步骤

  1. 连接开发板,在设备管理器中查看端口号为COM3
    在这里插入图片描述

  2. 把实验箱中的串口调试工具PuTTY放到桌面。Connection type选择Serial类型,设置Serial line为COM3,Speed为115200。
    在这里插入图片描述

  3. 把试验箱工具软件中的Fastboot拷贝到本机并设置环境变量
    在这里插入图片描述

  4. 安装试验箱工具软件中的Fastboot驱动。

  5. 设置开发板启动方式为101

  6. 通过USB线连接目标机与PC,开发板供电后,PuTTY出现Hit any key to stop autoboot,在倒计时内按任意键进入操作系统。
    在这里插入图片描述
    输入命令fastboot。fastboot是uboot中用来快速下载镜像的一个命令同时也是windows上的一个软件。
    在这里插入图片描述

  7. 连接蓝线到USB口,查看本机多出的设备Android 1.0
    在这里插入图片描述

  8. 在Windows系统下烧写镜像文件,打开cmd,进入D盘,烧写映像文件boot.imgsystem_linux.img。烧写命令如下:
    烧写内核:fastboot flash boot boot.img
    烧写文件系统:fastboot flash system system_linux.img
    在这里插入图片描述

  9. 烧写完成后拔掉线,重启开发板。
    在这里插入图片描述

  10. 编写.c和.h文件,然后编写.c文件的Makefile文件,make命令执行时,需要一个makefile文件,以告诉make命令需要怎么样的去编译程序,整个工程完全自动编译,提高了软件开发的效率。
    在这里插入图片描述
    在这里插入图片描述

  11. 执行make命令生成 .ko文件,内核模块文件.ko文件是把内核的一些功能移动到内核外边,需要的时候插入内核,不需要时卸载。

  12. 将驱动程序拷贝到U盘上,把U盘插到开发板的U口上,串口打印信息,在dev目录下可以找到sda1,即插入的U盘设备文件。

  13. 输入命令:mount /dev/sda1 /mnt/usb挂载U盘到/mnt/usb中,进入/mnt/usb目录查看U盘内容,然后找到.ko文件。
    输入命令:insmod char_drive_led.ko。然后会自动创建节点文件。

  14. 编写测试程序,里面可以传两个参数,编译并运行测试程序test_led_c,使得红灯亮一秒----->绿灯亮一秒----->蓝灯亮一秒----->全部亮一秒,循环往复。
    在这里插入图片描述

五、总结

  通过这次实验,我深刻认识到了Linux内核和硬件之间有着非常紧密的联系,而设备驱动程序就是起到了连接两者的桥梁。这次实验使我们了解了如何编写linux内核驱动程序,掌握了驱动程序的编写和调试技巧。在编写驱动程序时,需要了解硬件的基本信息,然后根据硬件的特点进行代码的编写。同时,编写好的驱动程序也需要经过严格的测试和调试,保证其稳定性和可靠性。总之,这次实验让我对嵌入式开发领域有了更深入的了解和认识,提高了我的技术水平,更重要的是培养了我们解决实际问题的能力,也让我更加热爱这个领域。

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

会举重的薯片

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值