
嵌入式
文章平均质量分 86
OLillian
这个作者很懒,什么都没留下…
展开
-
SD笔记
http://home.eeworld.com.cn/my/space.php?uid=140667&do=blog&id=25348转载 2010-12-01 11:59:00 · 510 阅读 · 0 评论 -
Android boot.img 结构
Android 的boot.img 包括 boot header,kernel, ramdisk首先来看看Makefile是如何产生我们的boot.img的: boot镜像不是普通意义上的文件系统,而是一种特殊的Android定制格式,由boot header,压缩的内核,ramdisk以及second stage loader(可选)组成,可以从mkbo转载 2012-02-01 17:07:23 · 857 阅读 · 0 评论 -
linux中有关页对齐的宏
#define ELF_PAGESTART(_v) ((_v) & ~(unsigned long)(ELF_MIN_ALIGN-1))目的:将地址按页大小向前对齐举例:0x1234 -> 0x1000#define ELF_PAGEOFFSET(_v) ((_v) & (ELF_MIN_ALIGN-1))目的:计算地址相对页大小的差值举例:0x1234 -> 0x234转载 2012-02-02 14:16:03 · 2888 阅读 · 0 评论 -
Linux下spi驱动开发
作者:刘洪涛,华清远见嵌入式学院讲师。一、概述基于子系统去开发驱动程序已经是linux内核中普遍的做法了。前面写过基于I2C子系统的驱动开发。本文介绍另外一种常用总线SPI的开发方法。SPI子系统的开发和I2C有很多的相似性,大家可以对比学习。本主题分为两个部分叙述,第一部分介绍基于SPI子系统开发的理论框架;第二部分以华清远见教学平台FS_S5PC100上的M25P10芯片为例(内核版本转载 2012-09-14 11:25:43 · 938 阅读 · 0 评论 -
android休眠与唤醒驱动流程分析
在pm_suspend()函数中,enter_state()函数被调用,从而进入标准linux休眠过程。int pm_suspend(suspend_state_t state){if (state > PM_SUSPEND_ON && state return enter_state(state);return -EINVAL;} 在enter_state()函数转载 2012-10-30 11:36:31 · 1336 阅读 · 0 评论 -
Linux:HDMI驅動之EDID
HDMI(HighDefinitionMultimediaInterface),作为新一代数字多媒体接口,能够传输高速率无压缩的数字音频、视频数据,HDMl1.2像素时钟可达165MHz,数据速率达到4.95Gbps,而HDMl1.3像素时钟则高达340MHz,数据速率达到10.2Gbps。目前高清1080p的数据带宽是2.2Gbps,HDMI完全可以用在高清图像传输中。事实上,目前高清图像传输也转载 2013-03-19 15:43:08 · 4390 阅读 · 0 评论 -
TI BQ27210電池監測IC
1 引言 随着功能集成和技术融合趋势的继续,数码摄像机、智能电话和媒体播放器等便携式设备对电源的要求越来越高。这些便携设备通常采用电池供电,然而,电池的工作时间是有限的,为了保证使用的连续性和完整性,操作人员需要及时的掌握当前电池的剩余容量和可用时间,以防止因电池能量耗尽而出现意外关机,造成不必要的数据损失。 BQ27210是TI公司推出的一款电池监测器件,主要用于数码摄转载 2013-03-23 10:43:59 · 2716 阅读 · 0 评论 -
px4的模式与状态
一、模式PX4 native flight stackStringDescription and notesMANUALACROALTCTLPOSCTLOF转载 2016-04-26 17:03:26 · 10051 阅读 · 2 评论 -
CANopen备忘录
值得收藏:德国工程师的CANopen备忘录http://www.zlg.cn/can/article/detail/id/200.html德国的CAN-bus总线工程师为了方便学习和记忆CANopen协议,随身携带一本“CANopen备忘录”,在研发和现场测试时快速查找。春节期间,广州致远电子股份有限公司将其翻译成中文,推动国内CANopen发展。值得收藏!转载 2016-10-21 13:54:43 · 1268 阅读 · 0 评论 -
STM32F4 PWM tutorial with TIMERs
http://stm32f4-discovery.net/2014/05/stm32f4-stm32f429-discovery-pwm-tutorial/In this tutorial, I will show you, how to implement PWM outputs on STM32F4xx devices. This is for a lot of peo转载 2016-10-21 16:56:56 · 2356 阅读 · 0 评论 -
recovery.img与boot.img对比分析
今天对比分析了一下recovery.img和boot.img的结构,从中粗略知道了Android手机中的恢复模式是怎么回事。以下是文件结构的对比图:从中我们知道:(1)recovery.img其实已经是进入了Linux系统。(2)recovery.img为了具有恢复系统的能力,比普通的boot.img目录结构中: 1、多了/res/image转载 2012-02-01 17:05:17 · 966 阅读 · 0 评论 -
configure中arm-linux-gcc编译器使用
./configure时将gcc改成arm-linux-gcc,编译器还是用的默认的gcc:解决方法:export CC=/usr/local/arm/arm-xxx-gccsudo make cleansudo rm cache_file_0 sudo CFLAGS=-O2 CC=/usr/local/arm/arm-xxx-gcc ./configure转载 2012-01-10 16:25:09 · 1638 阅读 · 0 评论 -
ARM汇编指令学习之开篇
<br />指令集学习 <br /> <br />(一) ARM<br />指令集 <br /> <br />1. 指令格式<br /><br /> <br />2. 条件码<br /><br /> <br />3.ARM<br />存储器访问指令 <br /> <br />1) LDR/ STR<br />-加载 / 存储指令 <br /> <br />2) LDM/ STM<br />-多寄存器加载 / 存储指令 <br /> <br />3) SW转载 2011-03-16 10:23:00 · 855 阅读 · 0 评论 -
ARM汇编指令的一些总结
ARM汇编指令很多,但是真正常用的不是很多,而且需要认真琢磨的又更少了。比较有用的是MOV B BL LDR STR还是通过具体汇编代码来学习吧。 @ disable watch dog timer mov r1, #0x53000000 //立即数寻址方式 mov r2, #0x0 str r2, [r1] MOV没有什么好说的,只要掌握几个寻址方式就可以了,而且ARM的寻址方式比386的简单很多。立即数寻址方式,立即数要求以“#”作前缀转载 2011-03-16 09:42:00 · 905 阅读 · 0 评论 -
用busybox做一个简单的文件系统
<br />利用BusyBox做一个简单的根文件系统<br />1、下载BusyBox源代码包 http://busybox.net/<br />2、找个地方解压缩包,例如tar -xjvf busybox-1.00.tar.bz2<br />3、进入busybox的文件夹,使用make menuconfig进入设置<br />[attach]244[/attach]<br />4、在build options中有一些选项要注意<br />Build BusyBox as a static binary (转载 2011-03-22 16:23:00 · 1514 阅读 · 0 评论 -
linux驱动probe相关函数笔记
<br />class_create()<br />-------------------------------------------------<br />linux-2.6.22/include/linux/device.h<br />struct class *class_create(struct module *owner, const char *name)<br /> class_create - create a struct class structure<br /> @o原创 2011-03-29 10:06:00 · 3374 阅读 · 0 评论 -
Line in和Mic in的区别及使用
<br /> <br /> <br /> <br />1、Line in端口:该端口主要用于连接电吉他、电子琴、合成器等外界设备的音频信号输出的录音,由于这些设备本身输出功率就比较大,因此需要连接到Line in端口录音,当然使用它们录音从某种程度上也可以被称为外部设备的“内录”。一般您使用的声卡越好,Line in里的噪音就会越低,录制效果也会比较好。<br />2、Mic in端口:这要是连接麦克风录音使用的。但是这个端口和Line in的区别在于它有前置放大器,换言之麦克风本身输出功率小,因此必须要有转载 2011-04-14 12:04:00 · 2162 阅读 · 0 评论 -
Bluez的移植
前一段的时间,都在移植BlueZ的库文件和工具基到ARM的开发板,现在的整个一套设备已经基本完成。内核是开发板自己带的 2.6.13,从2.4.6后的版本里就已经在内核里带有了BlueZ支持,我要做的就是,进入Networking子项,build-in 上Bluetooth su转载 2011-09-01 19:32:23 · 3513 阅读 · 0 评论 -
S3C2440移植alsa-lib
<br />http://ackerman.iteye.com/blog/828912<br />文章分类:大众硬件<br />----------------------------------------------------------------------------转载 2011-04-08 17:37:00 · 2164 阅读 · 0 评论 -
alsa --- amixer简述及用法
alsamixer是Linux 音频架构ALSA中的Alsa工具的其中一个,用于配置音频的各个参数。alsamixer是基于文本下的图形界面的,可以通过键盘的上下键,左右键等,很方便地设置需要的音量,开关某个switch(开关)等等操作。amixer,是alsamixer转载 2011-08-11 11:12:20 · 18543 阅读 · 0 评论 -
Linux下访问内存物理地址
Linux内核里提供的/dev/mem驱动,为我们读写内存物理地址,提供了一个渠道。下面讲述2种利用mem设备文件进行物理地址读写的方法,一种是设备驱动的方法,另一种是系统调用的方法。首先我们看下mem这个设备文件,/dev/mem是linux下的一个字符设备,源文件是~转载 2011-08-29 17:46:09 · 1685 阅读 · 0 评论 -
TI AM335x 可编程实时模块(PRUSS)详解
转自:http://www.itdadao.com/articles/c15a388010p0.html1. PRU内核理解可编程实时单元(Programmable Real-time Unit SubSystem,PRUSS),是Cotex A8内核中的一个子系统,它可运行在1/2CPU时钟频率下,具有本地的指令和数据RAM,并可寻址访问整个片上系统资源。PRU模块的认识:转载 2016-11-21 13:50:44 · 2762 阅读 · 0 评论