求指点,很简单的一个问题
时间:10-02
整理:3721RD
点击:
请问这个程序为什么会出错,1、say没有初始化(LED.C(2): error C247: non-address/-constant initializer)2、LED.C(23): error C187: not an lvalue,求大神指点。
#include <reg52.h>
int say[]="i am confident enough!\n";
void delay(int n)
{
while (n--);
}
void UART_send_byte(int dat)
{
SBUF = dat;
while (TI == 0);
TI = 0;
}
main()
{
SCON = 0x50;
TMOD = 0x20;
TH1 = 0xFD;
TL1 = 0xFD;
TR1 = 1;
while (1)
{
while (*say != '\0')
{ UART_send_byte(*say++);
delay(20000);
}
}
}
#include <reg52.h>
int say[]="i am confident enough!\n";
void delay(int n)
{
while (n--);
}
void UART_send_byte(int dat)
{
SBUF = dat;
while (TI == 0);
TI = 0;
}
main()
{
SCON = 0x50;
TMOD = 0x20;
TH1 = 0xFD;
TL1 = 0xFD;
TR1 = 1;
while (1)
{
while (*say != '\0')
{ UART_send_byte(*say++);
delay(20000);
}
}
}
int类型表示16位字,单片机里的字符串数组和串口一般是用unsigned char类型表示。试一下……
还真是这个问题,太感谢了,另外第二个数组的地址问题今天复习了下书也解决了,真是太感谢了
