没有合适的资源?快使用搜索试试~ 我知道了~
linux编写led驱动总结
资源推荐
资源详情
资源评论
一、驱动开发首先要建立对应平台的 linux 内核树,模块编译会用到。
编译内核树和编译开发板的内核流程一样,编译完内核之后,还需要增加几步,见文后的网
络参考第四步,之前的内核编译参考网络 linux4sam 就可以。
遇到的问题和解决方法:
1、 开发板上的内核版本必须和构建的内核树版本一样,可以 uname -r 查看开发板的内核
版本,如果不一样,加载内核时会有错误提示:version magic:错误。内核树编译完之
后生成/linux-at01/include/generated/utsrelease.h c 文件,内容为#define UTS_RELEASE
"4.1.0-linux4sam_5.3+",这个就是内核树的版本,此版本由两部分决定,一个部分是
Makefile VERSION = 4
PATCHLEVEL = 1
SUBLEVEL = 0
EXTRAVERSION = -linux4sam_5.3
后面的+号由另一部分决定,我也不知道在哪里,最后决定从新编译开发板内核,生成
的镜像拷贝到内存卡上,从而保持开发板的内核和主机内核树的版本一致。
2、 编译时候遇到错误
cc1: error: unrecognized command line option "-m64"
cc1: error: unrecognized command line option "-mno-red-zone"
cc1: error: unrecognized command line option "-mcmodel=kernel"
cc1:error:unrecognizedcommandlineoption"-maccumulate-outgoing-arg
s"
解决方法:编译时缺少编译对象,需要加入 ARCH=arm
二、编译模块,加载模块,创建设备文件
主机上编译模块,开发板上 insmod 模块。mknod 创建设备文件
使用的命令:
fdisk -l 看 u 盘的盘符
mount -t vfat /dev/xxx(上步查到的) /mnt/usb 挂载 U 盘
:/字符 按 n 选定下一个 Vim 搜索字符
cp led/* /work/led/
insmod ***.ko 加载模块
lsmod 查看模块
资源评论
chxasdf
- 粉丝: 20
- 资源: 11
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 为 Go 自动生成的 Google API .zip
- 一组快速入门示例,演示了适用于 Android 和 iOS 的 Google API.zip
- 一款简单但有效的 Go 网站迷你分析器.zip
- 一个线程安全的并发映射.zip
- 一个用于与任意 JSON 交互的 Go 包.zip
- 一个用于 go 的 cron 库.zip
- 基于BJUI + Spring MVC + Spring + Mybatis框架的办公自动化系统设计源码
- 基于百度地图的Java+HTML+JavaScript+CSS高速公路设备管理系统设计源码
- 基于Django Web框架的母婴商城实践项目设计源码
- 一个使用 Go 编程语言和 WebAssembly 构建渐进式 Web 应用程序的包 .zip
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功