OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 6264|回复: 2

双机通信

[复制链接]

31

主题

83

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
233
金钱
233
注册时间
2012-3-19
在线时间
2 小时
发表于 2012-4-14 21:33:26 | 显示全部楼层 |阅读模式
我用两个单片机通过串口进行通信然后这是主机的主函数
void main()

 UartInit_1();
 while(1)
 {
  if(redata == 0x72)
  {
   redata = 0;
   sedata = 'r';
   send(sedata);
   sedata = 0;
  }
  if(redata == 0x4e)
  {
   redata = 0;
   sedata = 'N';
   send(sedata);
   sedata = 0;
  }
  if(redata == 0x4c)
  {
   redata = 0;
   sedata = 'L';
   send(sedata);
   sedata = 0;
  }
 }
}


现在的问题是,当我第一次控制时,从机有相应,可是第二次以后就没有响应了,硬件是没有问题的,其中send()是这样的
void send(unsigned char d)     //串口1发送一个字符
{
 SBUF = d;
 while(!TI);
 TI=0;  
}

求解释,调试好久了!!。。。
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165309
金钱
165309
注册时间
2010-12-1
在线时间
2108 小时
发表于 2012-4-14 23:39:02 | 显示全部楼层
好久是多久?
我好久没用51了...
不太好帮你.
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

31

主题

83

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
233
金钱
233
注册时间
2012-3-19
在线时间
2 小时
 楼主| 发表于 2012-4-15 00:33:37 | 显示全部楼层
回复【2楼】正点原子:
---------------------------------
好吧,最后我调试出来了,是初始化的问题
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-11-22 17:16

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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