OpenEdv-开源电子网

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

串口发送数据最稳定语句函数

[复制链接]

47

主题

212

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
292
金钱
292
注册时间
2016-1-2
在线时间
80 小时
发表于 2016-1-21 04:33:23 | 显示全部楼层 |阅读模式
    先说下背景,所在公司成立近20年,研发团队近300,公司最常用的就是串口通讯,因为稳定。
刚入职时,有个任务用串口,当时我用原子哥教程改变的,做稳定性测试时会出现个别数据丢失最后一位问题,硬件仿真是正确的。
最后在组里老工程师给我一份产品程序,自己对比发现是发送那里不同。
for(t=0;t<len;t++)
    {
      while (USART_GetFlagStatus(USART1, USART_FLAG_TC) == RESET) ;
USART_SendData(USART1,0X31);
      while (USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET) ;
    }



正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

13

主题

611

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1929
金钱
1929
注册时间
2014-10-6
在线时间
625 小时
发表于 2016-1-21 07:43:53 | 显示全部楼层
谢谢,这样 发送应该会更稳定的!
回复 支持 反对

使用道具 举报

17

主题

587

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
4467
金钱
4467
注册时间
2013-6-27
在线时间
565 小时
发表于 2016-1-21 08:46:24 | 显示全部楼层
void USART1Send(char send_data)
{
    while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET);
    USART_SendData(USART1,send_data);
}
一直使用的串口发送程序。
让我们的思维驾驭在电的速度之上!
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-6-21 15:09

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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