昨天到今天折腾了两天才把LED的驱动实现了,当终于成功的时候还是很开心的。在此把错误的原因总结了一下,

也供正在学习的童鞋们参考一下,因为有些原因是手册误导的。

第一,在编译镜像前首先要把天嵌配置好的配置单文件复制一下,这就不用我们一个一个去修改了,就是执行cp -f

config_EmbedSky_W35_256MB .config,

(-f是force强制执行的意思,但不知道为什么还是要我再确认一遍,这个没有影响就不深究了。)

第二,移植手册上写的是要修改common-smdk.c文件,但实际上编译的是common-EmbedSky.c文件,打开后发现这个文件已经按照手册上把smdk.c中需要删除的删了,但是没有加上具体控制LED的那几句,只需要添加进去就可以了,其它的都不用改。

第三,在make menuconfig的时候也有误导,手册上说把LED

Support去掉就可以了,但打开后发现这项并没有添加。不对配置单修改将内核镜像下入开发板,发现没有任何变化。后来经过海斌的指点,说是上电后的流水灯是个测试程序,于是就对照标准的配置单慢慢寻找这个程序所对应的选项,根据命名很快就找对了,是在Device

Drivers下的Character devices下的EmbedSky SKY2440/TQ2440 Board GPIO

Test,把星号去掉再下进去后发现流水灯的效果没有了,但是没有预期的两灭两亮的效果,而是所有的灯都亮着,这说明程序没有改对。

第四,于是赶快对照手册看程序有什么细节问题,原来没有把原来的GPF改成GPB,这个是个细节问题,不容易发现,之前还在奇怪,明明查看电路图确认那四个灯的控制管脚就是GPB5-8,但为什么改了之后编译时报警说找不到8对应的函数呢,原来问题是我没有看清楚,所以自然是错的了。在经历了种种失败之后终于看到了想要的效果,真是不容易呀。

这个过程中由于我是用U盘在两个系统中中转的,所以曾多次怀疑是不是直接在虚拟机中使用“复制”“粘贴”这样的快捷键操作,而没有使用命令操作才导致一直不成功,后面的经历告诉我这些完全没有问题。所以以后可以放心使用了。

这些就是这两天学习得心得,下一步要写自己的LED驱动,编译成模块,要比这个复杂,希望不要费太多的时间,争取在开组会前完成。之前还有海斌的经验做指导(表示感谢还有一点小敬佩,跟他比起来我太慢了点,嘻嘻,慢工出细活~~),后面就要多靠自己查资料了,一定要加油!

linux修改led中颜色,Linux学习三之LED驱动(修改内核)相关推荐

  1. linux修改zip中文件,Linux下修改jar、zip等文件内的文件详解

    Linux下修改jar.zip等文件内的文件详解 Linux下修改jar.zip等文件内的文件详解 看到很多同事在Linux环境下修改jar包内的文本文件或zip中的文本文件时,经常是先把jar包或z ...

  2. vm虚拟机下linux安装python_VM中安装linux系统,安装VS Code,搭建Python环境

    VM中安装linux系统 在linux系统中安装VSCode(Visual Studio Code) 1.从官网下载安装包 2.在下载目录打开终端安装 sudo dpkg -i code_1.32.3 ...

  3. SecureCRT常用Linux命令,SecureCRT中惯用linux命令

    SecureCRT中常用linux命令 SecureCRT中常用命令...一点点加吧: rz  : 上传文件. ps -auxf  :查看进程 tar -cvf /home/cbinews/opena ...

  4. oracle 修改2个表,oracle学习笔记2:创建修改表

    1.创建表 CREATE TABLE ORDERINFO ( ORDERID NUMBER(*, 0) NOT NULL , ORDERCODE VARCHAR2(20 BYTE) NOT NULL ...

  5. linux的munit命令,LinuxUnit命令学习(三)

    最近两周,一直在做一些VBA的事情,一直想把工作用的系统切换到Linux平台,但是还是没有办法做到完整的切换.但继续学习Linux命令不会止步,我会继续努力. 2008.1.21. 本周来学习后台命令 ...

  6. linux kernal pwn STARCTF 2019 hackme(三)userfaultfd机制修改cred

    首先再熟悉一下userfaultfd机制 内存页的分配是创建时先分配页表但并不会实际分配物理页面.在读写发生时,由于物理页面不存在,触发缺页异常进入内核处理该缺页中断,再实际分配物理页面进行相应的读写 ...

  7. win10搭建Linux子系统,win10中搭建Linux子系统

    win10自带的Linux子系统,简称WSL(Windows Subsystem for Linux).优势是打通了Linux系统和windows系统,改变了传统虚拟机/双系统形成的两个系统相互隔绝的 ...

  8. linux 查看文件中数据类型,Linux下使用file命令确定文件中数据的类型-文件类型...

    青年是学习智慧的时期,中年是付诸实践的时期.--卢梭 在Linux系统中查看一个文件之前,要先确定该文件中数据的类型,之后再使用适当的命令或方法打开该文件. 与windows系统不同,在Linux系统 ...

  9. linux 删除文件中重复,linux系统删除重复文件

    fdupes:Linux中查找并删除重复文件的命令行工具fdupes是Linux下的一个工具,它由Adrian Lopez用C编程语言编写并基于MIT许可证发行,该应用程序可以在指定的目录及子目录中查 ...

最新文章

  1. java 计时器归零_终止Java中的计时器
  2. 被Html的Button标签耍了一次
  3. python 自定义异常
  4. BenchmarkDotNet的使用
  5. Python中的shuffle()函数的使用
  6. SpringBoot解决ajax跨域问题
  7. java获取xlsx某列数据_Java读取Excel指定列的数据详细教程和注意事项
  8. 2017.12.26
  9. securecrt调试c语言程序,SecureCRT脚本编写常用函数之WaitForString
  10. 蝴蝶优化算法_腾讯机智团队分享--AllReduce算法的前世今生
  11. angular4点击事件监听_angular 事件广播和事件监听
  12. short_open_tag 相关
  13. 【以太坊开发】发币指南--基础篇
  14. Echart用法介绍
  15. “抛弃 Gmail!”
  16. VMware安装中标麒麟Linux_server_x86_ZX64(兆芯版)
  17. CentOS8 编译安装tsar nagios + nagios-plugins + nsca
  18. 学会使用Hdlbits网页版Verilog代码仿真验证平台
  19. 《Pytorch 模型推理及多任务通用范式》_第3节课
  20. 磊科wifi linux驱动下载,磊科随身WiFi驱动

热门文章

  1. 微软职位内部推荐-Senior Software Engineer
  2. HDOJ-2012 素数判定
  3. BTC上轨受阻继续调整,主流币分化BCH强势上行
  4. 比特币现金一周年:BCH地位几何?
  5. 在freebsd下安装vim(Debian下类似)
  6. 官宣!微软宣布桌面版 Edge将基于Chromium进行开发\n
  7. linux命令:find文件查找工具
  8. NASA 悬赏 10 万招编程高手 世界最令人头疼的编程语言
  9. 数字图像缩放之最近邻插值与双线性插值处理效果对比
  10. 2208: [Jsoi2010]连通数