第一个错误是
void i_send(uchar y)
{
wait_lcd();
lcddat=y;
}
里面的赋值符号“=”;
void d_send(uchar x)
{
wait_lcd();
lcddat=x;
}
中的赋值符号“=”;
是什么原因呀
第二个是
以下是引用guest在2003-7-16 11:13:35的发言: lcddat的数据类型是什么呢? 你把=改成==试试. |
#define LCDCOM XBYTE[0x8000];
#define LCDDAT XBYTE[0x8100];
#define LCDREAD XBYTE[0x8200];
=和==是不同的功能呀,而且,试了也不行还是那样错
以下是引用guest在2003-7-16 16:05:52的发言: 去掉; |
以下是引用一剑飘魂在2003-7-16 22:21:25的发言: 宏定义不对在#define lcddat xbyte[0x8100];用的是大写的 “lcddat”,而在程序中用的是小写的,据我所知她们两个代表不同的含义,你试一下把他们改成衣样看看!! ![]() |
不好意思,在原程序中都是大写的
void i_send(uint y)
{
wait_lcd();
lcddat=y;
}
void d_send(uint x)
{
wait_lcd();
lcddat=x;
}
抱歉!!!!!!!!!!!!!!!!!!!
void i_send(uint y)
{
wait_lcd();
LCDDAT=y; //改为大写
}
void d_send(uint x)
{
wait_lcd();
LCDDAT=x; //改为大写
}
以下是引用龙芯四十三号在2003-7-18 13:02:48的发言: 宏定义错,看=> > #define LCDCOM XBYTE[0x8000] //去掉此处";"号 #define LCDDAT XBYTE[0x8100] //去掉此处";"号 #define LCDREAD XBYTE[0x8200] //去掉此处";"号 |
谢谢大哥!!!!!!!!