JZ2440_V3_内核驱动程序_点亮一个LED灯

本文详细记录了使用内核驱动在JZ2440_V3开发板上点亮LED灯的过程,包括修改linux-2.6.22.6内核文件、配置menuconfig、编译内核和驱动测试程序。遵循韦东山《嵌入式linux驱动开发完全手册》和@Carlos·Wei的指导,最终成功实现LED的亮灭。开发环境为Ubuntu 16.04和arm-linux-gcc-3.4.5-glibc-2.3.6,提醒读者注意内核文件与编译器版本匹配。
摘要由CSDN通过智能技术生成

为了用内核驱动程序点亮一个LED灯,真是费尽周折,参考了韦东山的《嵌入式linux驱动开发完全手册》(以下简称《完全手册》)和网上很多人的blog,最终在@Carlos·Wei的指引下,终于点亮了LED灯,见下图!

其中的一些弯路主要是没严格按照韦东山的linux版本和其编译器来编译内核和驱动程序,二来是因为韦东山这本书当时写的不是那么详细,在理解上有些许偏差。

本文地址:https://blog.csdn.net/multimicro/article/details/82288373
作者:multimicro

下面在写这篇博客时列出我的开发环境等信息

开发环境

  • linux Ubuntu 16.04
  • arm-linux-gcc-3.4.5-glibc-2.3.6 版本(用《完全手册》指定的编译器,我当时用的arm-linux-gcc4.4.3版本,结果编译出的程序在JZ2440开发板上无法运行)
  • 开发板中u-boot为板载资料提供
  • 开发板中linux内核版本为linux-2.6.22.6
  • 开发板中yaffs文件系统为板载资料提供
    P.S. 为了获取图片,我没在同一个内核文件中操作,所以,读者在操作使用时,一定要在同一个内核文件中!

** 实测Ubuntu 18.04 LTS同样可用,在上面一定要配置好编译器! **

#一、点亮一个LED灯需要做的准备工作


首先引用宋宝华《linux设备驱动开发详解》中P66的一段话
在linux内核中增加程序需要完成以下3项工作。

  • 将编写的源代码复制到linux内核源代码的相应目录中。
  • 在目录的Kconfig文件中增加关于新源代码对应项目的编译配置选项。
  • 在目录的Makefile文件中增加对新源代码的编译条目。

确保按照韦东山的那个PDF对内核文件进行打补丁在进行后续工作哦!
先不要执行下面图片中的make uImage当然你要是执行了,缺少那个mkimage文件,就要按照图片中的要求操作了哦



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值