04 2022 档案

摘要:通过前面两章内容我们先后做了个虚拟设备驱动,还成功共过驱动文件操作GPIO的点亮了LED,但是那个驱动的架构是有些问题的: 需要自己设定主次设备号,并且要在去驱动中定义好设备号。移植性差,在A机子开发的驱动放在B设备上可能设备号被占用,需要重新i修改驱动,并且要手动查询哪些设备号可以被使用。 每次模 阅读全文
posted @ 2022-04-10 23:43 银色的音色 阅读(318) 评论(0) 推荐(0) 编辑
摘要:在前面章节我们通过点亮LED完成了最基础的IO驱动,但是有两个问题: 只能通过挂载/卸载设备控制输出 没有对应的用户APP 下面我们就要针对这两点内容修改程序 驱动程序修改 驱动程序主要是修改write函数,思路就是先编写一个函数,用来实现LED的状态切换 #define LEDOFF 0 #def 阅读全文
posted @ 2022-04-05 22:27 银色的音色 阅读(271) 评论(0) 推荐(0) 编辑
摘要:前面说了那么多,终于到了这一激动人心的环节——点灯。我们在一开始做裸机开发的时候就是从点灯开始的,那么如何在Linux下通过驱动程序点亮一个LED呢?其实和裸机开发差不多,Linux下也是通过最终配置寄存器实现IO口输入输出的功能的。我们要点亮的LED是连接在GPIO1_IO03这个引脚上,在引脚输 阅读全文
posted @ 2022-04-04 23:37 银色的音色 阅读(584) 评论(0) 推荐(0) 编辑
摘要:在前面的三章里我们完成了驱动的框架、应用程序的编写,但是并没有实现文件的实际读写功能(只是通过内核打印出了调试信息)。这一章我们着重实现文件实际的读写效果。 由于没有实际数据IO,我们只是在驱动中定义一个数据传递给应用程序;在应用程序中定义个用户数据用来传递给内核(驱动)。 内核空间和用户空间的数据 阅读全文
posted @ 2022-04-03 13:18 银色的音色 阅读(295) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示