找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1854|回复: 3
收起左侧

单片机串口通信,上位机一直接受不到数据 求帮助

[复制链接]
ID:595380 发表于 2020-11-10 22:37 | 显示全部楼层 |阅读模式
  1. #include <reg52.h>
  2. #include <string.h>
  3. #define uchar unsigned char
  4. #define uint unsigned int
  5. void Init()
  6. {
  7.         TMOD=0x20;
  8.         TH1=0xfd;
  9.         TL1=0xfd;
  10.         SCON=0x50;
  11.         EA=1;
  12.         ES=1;
  13.         TR1=1;
  14. }

  15. void delayms(int z)
  16. {
  17.         int i,j;
  18.         for(i=z;i>0;i--)
  19.         for(j=114;j>0;j--);
  20. }

  21. void SendByte(uchar transdata)//发送字符
  22. {
  23.         SBUF=transdata;        
  24.         while(!TI)
  25.   TI=0;
  26. }

  27. void SendStr(uchar *p)//处理字符串
  28. {
  29.         int i=0;
  30.         while(p[i]!='\0')//运用将字符串处理成字符
  31.         {
  32.                 SendByte(p[i]);
  33.                 i++;
  34.         }
  35. }

  36. void SendEnd()
  37. {
  38.         SendByte(0xFF);
  39.         SendByte(0xFF);
  40.         SendByte(0xFF);        
  41. }

  42. void main()
  43. {
  44.                 Init();
  45.         while(1)
  46.         {
  47.                 delayms(500);
  48.                 SendStr("t1.txt=\"Welcome!\"");
  49.                 SendEnd();
  50.         }
  51. }
复制代码


这是用于淘晶驰串口屏的接受代码,上位机一直接受不到数据,请教一下大家这个代码中存在问题吗???在此谢过。

回复

使用道具 举报

ID:213173 发表于 2020-11-11 07:36 | 显示全部楼层
while(!TI)后面少分号
void SendByte(uchar transdata)//发送字符
{
        SBUF=transdata;
        while(!TI);
        TI=0;
}
回复

使用道具 举报

ID:595380 发表于 2020-11-11 13:59 | 显示全部楼层
wulin 发表于 2020-11-11 07:36
while(!TI)后面少分号
void SendByte(uchar transdata)//发送字符
{

十分感谢!!!
回复

使用道具 举报

ID:716656 发表于 2020-11-11 14:39 | 显示全部楼层
编译时候没报错么
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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