找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1521|回复: 2
打印 上一主题 下一主题
收起左侧

51单片机UART串口通信的问题,数据全为00

[复制链接]
跳转到指定楼层
楼主
ID:955868 发表于 2021-11-15 21:23 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
UART串口通信,串口调试助手接收的数据以16进制显示,全为 00,请问是哪里出了问题
程序如下
#include "reg52.h"
void ConfigUART(unsigned char baud)
{
        SCON = 0x50;
        TMOD &= 0x0f;
        TMOD |= 0x20;
        TH1 = 256 - (11059200/12/32)/baud;
        TL1 = TH1;
        ET1 = 0;
        TR1 = 1;
}

void main()
{
        unsigned char Arry[] = "Hallo PC I'm STC51!\n";
        unsigned char*p = Arry;
        ConfigUART(9600);
        while(1)
        {
                SBUF = *p++;
                while(!TI){};
                TI = 0;
                if(*p == '\0')
                {
                        p = Arry;
                }        
        }
}

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:624769 发表于 2021-11-15 23:08 | 只看该作者
       unsigned char*p = Arry;
这个不对吧?
应该   unsigned char*p;
          p = &Arry;
才对吧?
回复

使用道具 举报

板凳
ID:950257 发表于 2021-11-16 09:40 | 只看该作者
188610329 发表于 2021-11-15 23:08
unsigned char*p = Arry;
这个不对吧?
应该   unsigned char*p;

数组名已经是地址了,你还取地址呢
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表