- 博客(12)
- 资源 (1)
- 收藏
- 关注
原创 调试OTM4001A液晶驱动的一点心得
这几天调试一块以OTM4001A作驱动芯片的LCM模组,调试完毕后,终于有结果OK了。之前对这块一直用的不太透彻,恰好趁这次摸清楚了。需要注意的几点记录如下:(1)关于信号类型的片选。在很多LCD芯片规格书上都有关于信号片选的描述,如M2/M1/M0,典型如下:如上图,上面的三个M接口脚是有连接线直接连到主板接口上的,至于是高还是低,可以由主板硬件限定死,另一方面也可以由LCM模组自身
2010-09-26 23:40:00 13217 9
原创 DBI接口与DPI接口与DSI接口
(1)DBI接口 A,也就是通常所讲的MCU借口,俗称80 system接口。The lcd interface between host processor and LCM device list as below,The LCM driver will repeated update panel display。MCU借口通过并行接口传输控制命令和数据,并通过往LCM模组自带的
2010-09-26 22:09:00 47932 31
转载 LoadLibrary函数和FreeLibrary函数
<br /> 随着软件规模的扩大,要求的功能也是越来越多,开发人员的参与也是越来越多。因此软件的功能划分,就成为了现代软件工程的重大任务,还有软件开发的并行性也越来越重要。为了解决这些问题,大家都会看到IT硬件发展非常迅速,功能也越来越复杂,但硬件中发展明显提高在于采用IC的方式来实现复杂的功能,也就是把大部份功能集成到一起,只要给出一些引脚就可以实现产品了。而软件中有没有相同于硬件中的IC呢?我想是应有的,就是动态连接库了。在Windows这座大厦里,很多基石就是动态连接库构成的。一个动态连接库
2010-09-24 00:33:00 20373 2
原创 MFC动态链接库和WIN32动态链接库
(1)DLL的构成 每个应用程序都有一个入口函数WinMain,而每个DLL也有一个入口函数DllMain。DLL跟应用程序一样都含有资源、数据段和代码段。DLL跟应用程序的差别主要是DLL有符号输入表和符号输出表,以方便应用程序调用DLL中的函数。 因为DLL是由应用程序加载的,所以它本身没有虚拟的内存地址空间,它使用的是加载它的应用程序的地址空间。这种加载分为隐式和显式两种方式。将在后面叙述。(2)创建MFC DLL A,VC6新建一个工程MFCDLL,类型为MFC Ap
2010-09-22 23:12:00 4474
转载 C/C++语言void及void指针深层探索
<br />(1)许多初学者对C/C++语言中的void及void指针类型不甚理解,因此在使用上出现了一些错误。本文将对void关键字的深刻含义进行解说,并详述void及void指针类型的使用方法与技巧。<br />(2)void。void的字面意思是“无类型”,void *则为“无类型指针”,void *可以指向任何类型的数据。void几乎只有“注释”和限制程序的作用,因为从来没有人会定义一个void变量,让我们试着来定义:void a;这行语句编译时会出错,提示“illegal use of type
2010-09-20 22:33:00 1356
原创 LIB文件与DLL文件
Lib是编译时静态链接库,dll是运行时动态链接库。可通过不同的角度来看待这个问题:(1)一般的动态库程序有lib文件和dll文件。lib文件是必须在编译期就连接到应用程序中的,而dll文件是运行期才会被调用的。如果有dll文件,那么对应的lib文件一般是一些索引信息,具体的实现在dll文件中。如果只有lib文件,那么这个lib文件是静态编译出来的,索引和实现都在其中。静态编译的lib文件有好处:给用户安装时就不需要再挂动态库了。但也有缺点,就是导致应用程序比较大,而且失去了动态库的灵活性,在版
2010-09-19 23:56:00 1696
原创 工作中遇到拦路虎怎么办?
最近一段时间都在PXA平台上整一个USB功能,一开始说是USB OTG,过了一段时间才明白,搞的是USB HOST。汗呀,可惜偶一直对这方面分不清,也没有任何的积累。只有一步一行,到目前为止已经进行了一个月了,最终效果还是没有实现。 先是要改硬件,在我买了跟OTG线材可以插上U盘后,平台总算搭建起来了。关于USB这块,团队的人都算不上熟悉。经过一系列添加打印语句、跟开发板代码比较、跟同事讨论改动建议、网上查资料等等过程,在mobile平台上始终无法检测到U盘。可惜网上的做PXA的同行也
2010-09-19 14:28:00 2927 1
转载 实战DeviceIoControl,以及与KernelIoControl的区别
在NT/2000/XP中,从安全性、可靠性、稳定性上考虑,应用程序和操作系统是分开的,操作系统代码运行在核心态,有权访问系统数据和硬件,能执行特权指令;应用程序运行在用户态,能够使用的接口和访问系统数据的权限都受到严格限制。当用户程序调用系统服务时,处理器捕获该调用,然后把调用的线程切换到核心态。当系统服务完成后,操作系统将线程描述表切换回用户态,调用者继续运行(基本上是个切入系统再从系统返回的概念)。应用程序可以通过API函数DeviceIoControl来实现对设备的访问—获取信息,发送命令
2010-09-18 14:34:00 2531
转载 SD/MMC插口的规范之二:软件命令
MMC命令总共40多个,分为Class0 ~ Class7共8类,Class0的所有卡必须支持的。其它类的有些命令可不必支持。SPI模式的命令是MMC模式命令的子集,但只少了几个而已。驱动程序通过发送CMD1、CMD41命令区分MMC卡和SD卡,如果发送CMD1返回成功则说明为M
2010-09-16 23:00:00 11731
转载 SD/MMC插口的规范之一:硬件特性及硬件BUG
(1)MMC卡分共有7个触点(引脚),分为两种操作模式,分别为MMC模式、与SD模式,两种模式对引脚的定义是不同的。(2)SD卡分共有9个触点(引脚),多余的2个引脚为数据线,但使用与MMC卡兼容的模式时,这两个多余的引脚没有起到作用。它的应用分为一线和四线模式。
2010-09-16 22:21:00 10574 2
原创 交叉编译器及常见编译错误
(1)交叉编译器 在主机上用来编译其它类型机器上可执行代码的编译器就叫交叉编译器,我们进行嵌入式linux的开发主机大部分都是X86,而我们的嵌入式系统的处理器有可能是ARM/MIPS等非X86处理器,这时候就必须使用ARM/MIPS的交叉编译器才能编译出在这些处理器上能够执行的代码。这里我们使用的是ARM最新的EABI编译器。 交叉编译器在编译的时候,对于浮点运行会预
2010-09-03 00:26:00 13891 1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人