嵌入式系统
文章平均质量分 76
noodies
这个作者很懒,什么都没留下…
展开
-
S3C2440 TFT LCD驱动程序编程要点
1、打开LCD背光将LCD背光对应的GPIO设置为禁止上拉(GPxUP相应位写入1),选择output类型(GPxCON相应位写入01),输出为高电平(GPxDAT相应位写入1)。2、打开LCD电源可以将GPG4选择为LCD_PWREN(GPGCON:9-8写入11),这时候LCD电源的打开/关闭可以通过LCDCON5:3来控制。也可以自定义其他GPIO用作LCD电源开关,只需将此GP原创 2009-08-05 16:05:00 · 6315 阅读 · 4 评论 -
S3C2440休眠和唤醒流程解析(WinCE 6)
在WinCE中,有3种方式可以使系统进入休眠:1、用户在开始菜单选择挂起2、用户短按电源键,请求系统进入休眠(需要电源按键驱动的支持,比如设为长按关机,短按休眠)3、用户长时间无操作,系统状态由POWER_STATE_ON转为POWER_STATE_USERIDLE,POWER_STATE_IDLE状态,最后进入POWER_STATE_SUSPEND即休眠状态 休眠之前,对于支持电源管理的原创 2009-09-10 11:35:00 · 3189 阅读 · 0 评论 -
使用ADS+HJTAG调试Boot Loader
嵌入式系统的Boot Loader相当于PC机的BIOS,通常我们在移植Boot Loader的时候,往往会陷入无任何软件工具可用的情况,甚至连串口都无法输出任何信息,要追查错误是非常困难的,这时候往往就需要JTAG接口协助我们进行调试了。 JTAG是联合测试工作组的简称,发展于1985年,作为一种简单的电路接口协议,一般用于访问IC内部的子模块,因此也常用于嵌入式系统的调试,目前大部分C原创 2010-05-07 15:20:00 · 2851 阅读 · 1 评论 -
调试VIVI: 一系列莫名错误及其解决过程
问题出现近期一个项目需要将VIVI移植到我们的三星2440板上,在head.S中设置好晶振频率时钟频率之后,VIVI能跑起来了,但进入main后,初始化mtd设备时,程序挂了。 接上JTAG,使用ADS的AXD Debugger进行汇编调试,发现程序正运行着死循环,根据vivi.map中提供的地址信息,得知当前指令属于UndefEntryPoint异常中断处理程序,也就是说,程原创 2010-05-21 14:44:00 · 4503 阅读 · 1 评论 -
如何将YAFFS文件系统镜像烧入Nand Flash
和普通文件系统不同,YAFFS文件系统专门为Nand Flash设计,可以使用mkyaffsimage生成文件系统的镜像,但如果要将此镜像烧入Flash,那么有些地方需要注意。 硬件上,Nand Flash的设计已考虑到包含坏块的情况,对于每扇区512字节的Nand Flash,每扇区都有一个16字节额外的扩展区,通常用以存储此扇区的校验数据以及坏块标记等信息(WinCE则使用了其中4字节原创 2010-05-24 15:18:00 · 5087 阅读 · 2 评论 -
编译OpenCV for arm-linux
OpenCV是Intel支持的开源计算机视觉库。它由一系列C函数和少量C++类构成,实现了图像处理和计算机视觉方面的很多通用算法。它不依赖于其它的外部库—尽管也可以使用某些外部库。OpenCV使用BSD License,对非商业应用和商业应用都可以免费使用。OpenCV的主要应用环境是Windows和Linux,对于嵌入式系统如arm-linux,很少有资料提到,因此将我在arm-linux编译过程记录下来和大家分享。原创 2010-08-09 11:41:00 · 26034 阅读 · 51 评论