|
//----------------------------
//写入寄存器地址或参数
//----------------------------
void SdCmd(uchar command)
{
lcd_bus = command;
_CSL;//使能液晶
RSL;//选择寄存器通道
_WRL;//写信号有效
//Delayus(10);
_WRH;//写信号无效
RSH;//防干扰
_CSH;//关闭使能
}
//----------------------------
//写入数据
//----------------------------
void SdData(uchar ddata)
{
lcd_bus = ddata;
_CSL; _CSL;//使能信号
RSH;//选择数据通道
_WRL;//写信号有效
_WRH;//写信号无效
//RSL;
_CSH;
}
上面的两个函数是正常的;
然后我加入了下面的这个函数(在KEIL中是能通过编译的);就会报错;
C:\iccv7avr\bin\imakew -f CHENGSHI.mak
iccavr -c -e -D__ICC_VERSION="7.14C" -DATMEGA -DATMega16 -l -g -Mavr_enhanced C:\iccv7avr\examples.avr\chengshi\chengshi.c
!E C:\iccv7avr\examples.avr\chengshi\chengshi.c(245): missing parameter type
!W C:\iccv7avr\examples.avr\chengshi\chengshi.c(328):[warning] missing return value
C:\iccv7avr\bin\imakew.exe: Error code 1
Done: there are error(s). Exit code: 1. Sat Apr 18 09:19:42 2009
傻孩子帮我看看,我想不通。。。
// 汉字串写入函数
void PrintGB(uint x, y, uchar *pstr)
//坐标X为屏幕上水平位置,以字节为单位;Y为垂直位置,以像素行为单位
{
SdCmd(0x00);SdCmd(0xcd); // 设置写入数据模式为字符模式
SdCmd(0x12);SdCmd(0xb1); // 打开文本RAM区域(第一显示区域)?
SdCmd(0x60);SdCmd(x); // 设置光标X坐标地址,水平字符数
SdCmd(0x70);SdCmd(y); // 设置光标Y坐标地址,垂直像素行
while(*pstr>0)
{
SdData(*pstr++); // 写入字符代码
}
} |
阿莫论坛20周年了!感谢大家的支持与爱护!!
曾经有一段真挚的爱情摆在我的面前,我没有珍惜,现在想起来,还好我没有珍惜……
|