请在 下方输入 要搜索的题目:

下面的程序实现通过串口不停发送数据0-15至对方#include <STC89C5xRC.h>main(){int i; TMOD=0x21;/*--T1:Mode 2;T0:Mode 1*/ SCON=0x50; TH1=0xe6; TL1=0xe6;/*0xe6--1200bps at 12MHz*/ TR1=1; while(1) { for(i=0;i<16;i++) SBUF = i; } }通过电脑串口助手实际收到的数据为:00 07 0E 05 0C 02 09 00 07 0E 04 0B 02 09 0F 06 0D 04 0B 01 08 0F 06 0D 03 0A 01 08 0F 05 0C 03 0A 00 07 0E 05 0C 02 09 00 07 0E 04 0B 02 09 0F 06 0D 04 0B 01 08 0F 06 0D 03 0A 01 08 0F 05 0C 03 0A 00 07请分析:硬件连接没有任何问题,那么出现这种现象的原因会有哪些?应该如何解决?

下面的程序实现通过串口不停发送数据0-15至对方#include C、h>main(){int i; TMOD=0x21;/*--T1:Mode 2;T0:Mode 1*/ SCON=0x50; TH1=0xe6; TL1=0xe6;/*0xe6--1200bps at 12MHz*/ TR1=1; while(1) { for(i=0;i<16;i++) SBUF = i; } }通过电脑串口助手实际收到的数据为:00 07 0E 05 0C 02 09 00 07 0E 04 0B 02 09 0F 06 0D 04 0B 01 08 0F 06 0D 03 0A 01 08 0F 05 0C 03 0A 00 07 0E 05 0C 02 09 00 07 0E 04 0B 02 09 0F 06 0D 04 0B 01 08 0F 06 0D 03 0A 01 08 0F 05 0C 03 0A 00 07请分析:硬件连接没有任何问题,那么出现这种现象的原因会有哪些?应该如何解决?

发布时间:2025-07-06 12:29:22
推荐参考答案 ( 由 快搜搜题库 官方老师解答 )
联系客服
答案:【计分规则】: 原因1:CPU往SBUF写入数据太快,没有判断接口是否发送完数据。应该采用查询方式进行数据发送。原因2:双方的通讯速率或通讯格式不一致。可将电脑调试助手的通讯速率调整为1200bps,N,8,1格式。原因1是主要的,能回答出原因1的,解决方案正确的可得5分。只回答原因2的可得3分。
专业技术学习
专业技术学习
搜搜题库系统