移植LED和按键驱动
2017-12-22 10:22
169 查看
移植LED和按键驱动
注:此节主要移植的驱动是在一期编写的驱动
移植first_drv(点亮LED)
将first_drv整个文件夹上传到 /work/drivers_and_test_new目录下,修改其makefile,编译,出现好多错误(如图)vi Makefile
make
解决错误,重新编译(成功)
—重新编译
编译测试程序,将可执行程序和上步编译生成的.ko文件拷贝到根文件系统目录下(/work/nfs_root/fs_mini_mdev_new)
—编译测试程序
arm-linux-gcc -o firstdrvtest firstdrvtest.c
—拷贝文件
cp first_drv.ko firstdrvtest /work/nfs_root/fs_mini_mdev_new
测试驱动(先加载,后测试,最后卸载)
移植second_drv(查询方式的按键驱动)
根据移植LED的经验,拷贝second_drv文件夹后修改Makefile,并修改驱动文件中的头文件、新函数(参考上面移植LED驱动)—修改Makefile
—初步修改驱动
上传驱动文件,编译驱动(成功),编译测试程序,拷贝文件到根文件系统目录下
—编译成功
—编译测试程序,拷贝文件
测试驱动
移植third_drv(中断方式的按键驱动)
根据移植LED的经验,拷贝third_drv文件夹后修改Makefile,并修改驱动文件中的头文件、新函数(参考上面移植LED驱动)—修改Makefile
—初步修改驱动
上传驱动文件,编译驱动(失败),出现许多错误
解决错误
—根据文档提示,找到对应头文件,参照头文件修改,并且包含头文件gpio.h
—上传文件,再次编译,仍存在错误
—再解决一部分错误
---搜索wake_up_interruptible,由宏一步步找到所需头文件
---搜索request_irq,参照其他文件是如何使用的,由相近的宏找出相应的头文件,并找到我们所需要的宏
—上传文件,再次编译驱动,编译成功
编译测试程序,拷贝文件到根文件系统目录下,并测试驱动程序
移植forth_drv(poll机制的按键驱动)
根据上述移植的中断方式的按键驱动经验,拷贝forth_drv文件夹后修改Makefile,并根据third_drv.c初步修改forth_drv.c驱动文件—修改Makefile
—初步修改驱动文件
上传文件,编译驱动(成功),在编译其测试程序,将生成的ko文件和可执行程序拷贝到根文件系统目录下
—编译成功
—编译测试程序,并拷贝文件
arm-linux-gcc -o forthdrvtest forthdrvtest.c
cp forth_drv.ko forthdrvtest /work/nfs_root/fs_mini_mdev_new
测试驱动
移植fifth_drv(异步通知机制的按键驱动)
拷贝fifth_drv文件夹后修改Makefile,并对比forth_drv.c初步修改fifth_drv.c驱动文件—修改Makefile
—初步修改驱动文件
上传文件,编译驱动(成功),在编译其测试程序,将生成的ko文件和可执行程序拷贝到根文件系统目录下
—编译成功
—编译测试程序,并拷贝文件
测试驱动程序
移植sixth_drv(同步、互斥、阻塞的按键驱动)
拷贝sixth_drv文件夹后修改Makefile,并对比fifth_drv.c初步修改sixth_drv.c驱动文件—修改Makefile
—初步修改驱动文件
上传文件,编译驱动,出现一些错误,并解决错误
—错误提示
—解决错误:根据提示找到所在行
—修改
上传文件,编译驱动(成功),在编译其测试程序,将生成的ko文件和可执行程序拷贝到根文件系统目录下
—编译成功
—编译测试程序,并拷贝文件
arm-linux-gcc -o sixthdrvtest sixthdrvtest.c
cp sixth_drv.ko sixthdrvtest /work/nfs_root/fs_mini_mdev_new
测试驱动程序
移植7th_buttons_all(定时器防抖动的按键驱动)
拷贝7th_buttons_all文件夹后修改Makefile,并对比sixth_drv.c初步修改buttons.c驱动文件—修改Makefile
—初步修改驱动文件
上传文件,编译驱动(成功),在编译其测试程序,将生成的ko文件和可执行程序拷贝到根文件系统目录下
—编译成功
—编译测试程序,并拷贝文件
测试驱动程序
———-2017.12.13
相关文章推荐
- 05-S3C2440学习之内核(移植)linux3.4.2移植(4)支持LED驱动、按键驱动
- 移植驱动到内核学习笔记2-----LED和按键驱动
- tiny6410 Linux 按键控制LED驱动
- android系统移植之按键驱动篇
- android系统移植之按键驱动篇
- android系统移植之iMX53按键驱动篇 .
- 木其工作室(专业程序代写服务)[原]ok6410学习笔记(16.按键中断控制led驱动)
- AM335x(TQ335x)学习笔记——GPIO按键驱动移植 分类: TI-AM335X 2015-05-22 08:44 144人阅读 评论(0) 收藏
- 【TINY4412】LINUX移植笔记:(22)设备树LCD按键驱动
- TP----Android系统移植之按键驱动篇
- 按键控制led驱动
- Linux-2.6.32.2内核在mini2440上的移植(十五)---移植LED驱动
- ok6410学习笔记(16.按键中断控制led驱动)
- AM335x(TQ335x)学习笔记——GPIO按键驱动移植
- S3c6410 linux内核移植(6)---添加按键驱动
- S3C6410 linux内核移植(11)---添加充电控制脚驱动(LED驱动)
- FL2440移植LINUX-3.4.2 -- 按键驱动和触摸屏驱动移植
- AM335x(TQ335x)学习笔记——GPIO按键驱动移植
- 【TINY4412】U-BOOT移植笔记:(11)LED驱动
- Linux驱动开发之S3C2440按键点亮LED