我的MB9B506_Easy_Kit开发板,用富士提供的MB9B506_Easy_Kit_Demo-v10程序,写上去后LCD怎么也不显示,调整它的偏压也不管用。
心想,这是富士提供的程序不应该有错吧!怀疑是LCD损坏,因为这是二手的。但是又不甘心。
详细看了LCD的驱动IC资料,又看了富士的程序,后来改了改,
烧上去,
----哇! 显示了。
改动是在Init_LCD_IO()中,
1、
/* Release the analog input function*/
ADE = 0x0100; //0x03;
将原来的03改为现在的0x0100
2、增加以下几句
/*Select CPIO function*/
LCD_CS_PFR &= ~LCD_WR;
/*Make pin output*/
LCD_CS_DDR |= LCD_WR;
LCD_WR_LOW();
/*Select CPIO function*/
LCD_CS_PFR &= ~LCD_RD;
/*Make pin output*/
LCD_CS_DDR |= LCD_RD;
LCD_RD_HIGH();
/*Select CPIO function*/
LCD_CS_PFR &= ~LCD_C86;
/*Make pin output*/
LCD_CS_DDR |= LCD_C86;
LCD_C86_LOW();
用的是串行驱动方法
实际上,我也在纳闷,他们提供的例子应该会正常运行的。
也不知道大家是根据原来板子中烧的程序看LCD的显示正常与否的,还是自己编译后烧入的程序。
下面我把我的调试过程说一下,或者大家能找到原因。
由于富士附件中的IAR6.102无法破解,所以我安装的是在网上下载的IAR6.101,当打开MB9B506_Easy_Kit_Demo-v10工程并设置(例程中没有设置CPU等)好后,进行编译时出现:
Fatal Error[Pe1696]: cannot open source file "Fujitsu\iomb9bf506r.h"
……\FSSDC-9B506-EK Sample Code\MB9B506_Easy_Kit_Demo-v10\board\board.h 10
没有发现iomb9bf506r.h文件,将包含改为iomb9bf506.h后,烧入开发板没有显示。原来板子中烧的有程序,但LCD也没有显示。
[ 本帖最后由 dontium 于 2012-5-28 22:46 编辑 ]
刚才又试了,只改
ADE = 0x0100;
也可以点亮LCD。但不改是万万不亮的
我在想,我发现的这个问题应该只是个特例,因为是二手板,板上的引出插针有焊过的痕迹,有可能是板子连线接触不良,使之跑出的default状态。
[ 本帖最后由 dontium 于 2012-5-29 14:52 编辑 ]