会员
周边
新闻
博问
闪存
众包
赞助商
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
叶念西风
Write the code, change the world!
首页
新随笔
联系
管理
上一页
1
2
3
4
5
6
7
8
9
下一页
2016年10月26日
嵌入式Linux驱动学习之路(十二)按键驱动-poll机制
摘要: 实现的功能是在读取按键信息的时候,如果没有产生按键,则程序休眠在read函数中,利用poll机制,可以在没有退出的情况下让程序自动退出。 下面的程序就是在读取按键信息的时候,如果5000ms内没有按键信息,则自己退出。 首先应用程序执行poll函数 kernel中的sys_poll do_sys_p
阅读全文
posted @ 2016-10-26 12:44 叶念西风
阅读(909)
评论(0)
推荐(0)
2016年10月25日
嵌入式Linux驱动学习之路(十一)按键驱动-中断机制
摘要: 轮询方式: 和led驱动不同的是在配置IO引脚的时候,把LED的输出引脚换成输入,在read函数中向外发送io的状态。必须由应用程序不断的来查询当前IO口的状态来判断。 中断方式: Makefile同led中的类似。 应用程序: sd
阅读全文
posted @ 2016-10-25 17:48 叶念西风
阅读(1962)
评论(0)
推荐(1)
嵌入式Linux驱动学习之路(十)字符设备驱动-my_led
摘要: 首先贴上代码: 字符设备驱动代码: 模块的Makefile: 测试文件: 完
阅读全文
posted @ 2016-10-25 09:19 叶念西风
阅读(563)
评论(0)
推荐(0)
2016年10月24日
嵌入式Linux驱动学习之路(九)Linux系统调用、驱动程序框架
摘要: 应用程序通过open read write close 等函数来操作计算机硬件。类似是一个接口。 当应用程序调用这些接口程序时,计算机是如何进入内核的呢?这是经过了系统调用。 实际上当调用接口函数时,会引发一个swi异常(附带参数,软中断),通过这个异常就进入了内核空间。在内核空间的异常处理函数中就
阅读全文
posted @ 2016-10-24 13:21 叶念西风
阅读(610)
评论(0)
推荐(0)
使用uboot的tftp下载bootloader、内核、文件系统
摘要: 开发板 jz2440 下载uboot.bin 下载内核 下载文件系统
阅读全文
posted @ 2016-10-24 09:42 叶念西风
阅读(1550)
评论(0)
推荐(0)
2016年10月22日
嵌入式Linux驱动学习之路(八)创建最小的根文件系统
摘要: busybox 在配置busybox,在是否选择要静态链接库时,在静态下,busybox中的工具不需要动态链接库,能够直接运行。而用户自己编写的程序如果需要动态链接库,还是依然需要有。 (从http://www.busybox.net/downloads/可以下载busybox工具) 如果是动态链接
阅读全文
posted @ 2016-10-22 16:53 叶念西风
阅读(2182)
评论(0)
推荐(0)
2016年10月20日
嵌入式Linux驱动学习之路(七)Linux内核启动流程
摘要: 编译的内核可能会很大,故这里可以压缩一下。而在内核文件中需要解压,所以就会有一段自解压代码。 在uboot启动内核的时候,调用了函数: thekernel(0,MACH_ID,params_addr ) 0 存放在r0寄存器 MACH_ID 存放在r1 params_addr存放在r2 1. 首先处
阅读全文
posted @ 2016-10-20 13:12 叶念西风
阅读(504)
评论(0)
推荐(0)
2016年10月19日
嵌入式Linux驱动学习之路(六)u-boot启动内核
摘要: 内核启动是需要必要的启动参数。不能开机自动完全从0开始启动,需要uboot帮助内核实现重定位并提供参数。 首先,uboo会从Kernel分区中读取bootcmd环境变量,根据环境变量可自动启动。 分区: 每个硬盘上都有一个分区表。由于Flash中没有分区表,所以Flash的分区只能在源代码中定义,故
阅读全文
posted @ 2016-10-19 22:36 叶念西风
阅读(325)
评论(0)
推荐(0)
如何用patch打补丁
摘要: -p1代表忽略第一层目录(patch文件中的)。
阅读全文
posted @ 2016-10-19 20:38 叶念西风
阅读(686)
评论(0)
推荐(0)
2016年10月18日
相对跳转和绝对跳转的区别
摘要: 假如: __main的链接地址是0x20000000。而因为它在前面,在启动的时候被拷贝到前面了,所以实际的地址是0x00000000. __main2的链接地址是0x20000010。实际地址是0x00000010. B指令是相对跳转。 也就是把pc加上两个链接地址之间的差值。 如果使用 在 __
阅读全文
posted @ 2016-10-18 21:43 叶念西风
阅读(733)
评论(0)
推荐(0)
2016年10月15日
u-boot移植初步尝试-tiny4412
摘要: 获取u-boot源代码 在u-boot官方网站下载uboot源码。ftp://ftp.denx.de/pub/u-boot/ 因为是第一次移植uboot,所以这里选的版本是 u-boot-2013.01 解压文件到 /home/tiny4412下。 根据 Linux嵌入式驱动学习之路③u-boot配
阅读全文
posted @ 2016-10-15 19:47 叶念西风
阅读(445)
评论(0)
推荐(0)
2016年10月13日
嵌入式Linux驱动学习之路(五)u-boot启动流程分析
摘要: 这里说的u-boot启动流程,值得是从上电开机执行u-boot,到u-boot,到u-boot加载操作系统的过程。这一过程可以分为两个过程,各个阶段的功能如下。 第一阶段的功能: 硬件设备初始化。 加载u-boot第二阶段代码到RAM空间。 设置好栈。 跳转到第二阶段代码入口。 第二阶段的功能: 初
阅读全文
posted @ 2016-10-13 22:54 叶念西风
阅读(1457)
评论(0)
推荐(0)
2016年10月12日
嵌入式Linux驱动学习之路(四)u-boot编译分析
摘要: u-boot编译分析 在配置完成后,执行make开始编译。这里打开Makefile。 首先在目标all前有一句话首先检查是否有include/config.mk文件来判断是否成功配置过。 下面分析“make”命令正常执行的过程。 include/autoconf.mk生成过程 首先包含头文件auto
阅读全文
posted @ 2016-10-12 21:48 叶念西风
阅读(1528)
评论(1)
推荐(0)
嵌入式Linux驱动学习之路(三)u-boot配置分析
摘要: u-boot配置流程分析 执行make tiny4412_config后,将会对u-boot进行一些列的配置,以便于后面的编译。 打开顶层目录下的Makefile,查找对于的规则tiny4412_config。 TINY4412对应的规则是%_config 在Makefile中%为通配符,代表任意长
阅读全文
posted @ 2016-10-12 15:01 叶念西风
阅读(882)
评论(0)
推荐(0)
嵌入式Linux驱动学习之路(二)u-boot体验
摘要: u-boot工程简介 现在的u-boot支持PowerPC、ARM、X86、MIPS体系结构的上百种开发板,已经称为功能最多、灵活性最强,并且开发最积极的开源Bootloader。目前由DENX的WolfgangDenk维护。 u-boot远吗包可以从其官方网站下载。 u-boot软件包下载网站:
阅读全文
posted @ 2016-10-12 13:47 叶念西风
阅读(402)
评论(0)
推荐(0)
上一页
1
2
3
4
5
6
7
8
9
下一页
叶念西风 - 个人博客