我的液晶,同样是clear_screen函数,在单片机上的清屏效果很好,在FPGA上清屏效果就不好
小弟做了一块液晶程序,同一个程序,在单片机中clear_screen效果很好,所有的320*240个点都能够清为黄色(底色)结果此程序放到nios中,清屏效果就很差了,在开始的几行里面,总是没有底色。我又试着另写了划线函数,结果在方才清屏忽略的地方,仍能显示直线,
我不解的就是,为什么清屏总是忽略这块地方呢?
液晶显然是没有坏。
程序原封不动。 FPGA速度快,初始化行列扫描时间那里要修改。
把扫描时间延长一点,估计就可以了。我以前碰到过这种情况,就是这么解决的。 回复【1楼】joing2000 广州锐显
-----------------------------------------------------------------------
对啊,那就改改看吧,把初始化的代码扫描时间改的长一点。。
那我想就是因为设置窗口大小的寄存器初始化不对。
改改看 初始化不用改。
改写数据,写命令的那一段。
//********************写命令
void Write_Command(uchar Cmd) // Command Write
{
cs = 0;
rs = 1;
DATA_BUS = Cmd;
wr = 0;
wr = 1;
cs= 1;
DATA_BUS = 0xff;
rs = 0;
}
例如这一段
wr = 0;
wr = 1;
中间加个延时
wr = 0;
delay(1);
wr = 1;
这样子 回复【3楼】joing2000 广州锐显
-----------------------------------------------------------------------
试了一下,可以啦,估计是因为一开始上电时电压有波动,所以影响了写入数据 回复【4楼】xtqxtq111
-----------------------------------------------------------------------
谁让FPGA功能这么强大呢,只用软件就能实现很多复杂功能呢 回复【4楼】xtqxtq111
-----------------------------------------------------------------------
那是你复位没做好了。你可能一上电马上写入数据了吧。
一般液晶复位标准程序是上电后,拉低RST脚300MS,再拉高300MS。然后一直保持高,然后再写入命令 回复【6楼】joing2000 广州锐显
-----------------------------------------------------------------------
难道是300ms?
我用的都是拉低5ms,怪不得不稳定呢,这个得记住了,嘿嘿, 回复【7楼】xtqxtq111
-----------------------------------------------------------------------
哦,对!
是300MS,哈哈,打成电流了。 回复【6楼】joing2000 广州锐显
回复【4楼】xtqxtq111
-----------------------------------------------------------------------
那是你复位没做好了。你可能一上电马上写入数据了吧。
一般液晶复位标准程序是上电后,拉低rst脚300ms,再拉高300ms。然后一直保持高,然后再写入命令
-----------------------------------------------------------------------
回复【7楼】xtqxtq111
回复【6楼】joing2000 广州锐显
-----------------------------------------------------------------------
难道是300ms?
我用的都是拉低5ms,怪不得不稳定呢,这个得记住了,嘿嘿,
-----------------------------------------------------------------------
你用单片机的时候复位5ms就够了?
FPGA也许跟外部电源输入稳定供电的时间有关吧
页:
[1]