同一个液晶显示字符串的程序:
void LCD_ShowString(uchar x,uchar y,uint For_color,uint Bk_color,char *p)
{
while(*p!='\0')
{
LCD_ShowChar(x,y,For_color,Bk_color,*p);
x+=8;
p++;
}
}
用iccavr编程,结果显示没有问题,但用avrstudio则出现问题,比如在程序中写:
LCD_ShowString(10,10,0,0xffff,“123”);
用avrstudio调试的时候就发现,*p并不是如期望的分别显示49,50,51然后结束,而是始终显示等于26,并且永远不会结束。
请问这是什么原因呢? |