找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

单片机串口为什么是这样的?

查看数: 2137 | 评论数: 13 | 收藏 0
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2024-5-20 22:32

正文摘要:

主函数 void uartdo() {         if(uart_index==0)                 return;                 if(u ...

回复

ID:1112477 发表于 2024-5-23 21:29

波特率的缘故吧
ID:1074206 发表于 2024-5-22 10:30
乱码出现一半可能是 波特率不对,或者接线没接好
ID:65956 发表于 2024-5-22 08:32
rtyweq 发表于 2024-5-22 00:01
改成了12M,但是输出都是ERROR

因为你发送时没有加换行回车,判断不到那两个就认为错误了
ID:1080935 发表于 2024-5-22 08:08
把你收到的数据打印出来看看(最好16进制),看看又没有发送回车换行符,把ERROR编号,看看从哪出的错。也可不要文本发送,全改为16进制发送看看,确定发送回车和换行
ID:237471 发表于 2024-5-22 05:44
uart_recv[0] 这个是在哪里赋值的?看一下赋值的是不是有问题,看了一下你的代码,应该是你的问题,不是串口的问题
ID:76027 发表于 2024-5-21 08:50
还有你串口波特率选 的是4800
ID:76027 发表于 2024-5-21 08:48
void UartInit(void)                //9600bps@12.000MHz
你下载的时候选的是11.0592
ID:542270 发表于 2024-5-21 08:10
keil软件中更改格式吧 edit configuartation  encoding    是国标2312还是UTF8
ID:1080935 发表于 2024-5-21 08:08
应该是波特率的问题,你看看你左侧硬件选项是不是选了内部时钟,看你下载后的时钟应该是11.0592(11.063MHz),程序中按照12MHz时钟设置的波特率。
ID:237471 发表于 2024-5-21 06:45
波特率好像不对,代码里的是9600,图片里的是4800

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

Powered by 单片机教程网

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