求指点,很简单的一个问题

2019-07-15 22:01发布

请问这个程序为什么会出错,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! ";
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 != '')
                        {         UART_send_byte(*say++);
                            delay(20000);
                        }
        }       

}

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
2条回答
powenlei
1楼-- · 2019-07-15 22:07
int类型表示16位字,单片机里的字符串数组和串口一般是用unsigned char类型表示。试一下……
擎天柱擎天柱
2楼-- · 2019-07-16 03:49
还真是这个问题,太感谢了,另外第二个数组的地址问题今天复习了下书也解决了,真是太感谢了

一周热门 更多>