当前位置: 首页 > news >正文

小企业网站建设5000块贵吗官方网站下载cad

小企业网站建设5000块贵吗,官方网站下载cad,外贸电商平台哪个网站最好,wordpress主题制作工具文章目录 发送串口数据偶尔丢失字节 发送串口数据偶尔丢失字节 场景: 在STM32单片机中进行串口数据发送,在Linux/Windows上进行串口数据接收,会偶发出现接收到的数据有某些字节丢失。 分析: 在STM32中可以使用printf用于发送串口…

文章目录

  • 发送串口数据偶尔丢失字节

发送串口数据偶尔丢失字节

场景: 在STM32单片机中进行串口数据发送,在Linux/Windows上进行串口数据接收,会偶发出现接收到的数据有某些字节丢失。
分析: 在STM32中可以使用printf用于发送串口数据,该函数内部实际上调用了接口:

/********************************************************************** @fn      fputc* @brief   Support Printf Function * @param   data - UART send Data.   * @return  data - UART send Data.*/
int fputc(int data, FILE *f)
{
#if (DEBUG == DEBUG_UART1)while (USART_GetFlagStatus(USART1, USART_FLAG_TC) == RESET);USART_SendData(USART1, (u8) data);
#elif (DEBUG == DEBUG_UART2)while (USART_GetFlagStatus(USART2, USART_FLAG_TC) == RESET);USART_SendData(USART2, (u8) data);	
#elif (DEBUG == DEBUG_UART3)while (USART_GetFlagStatus(USART3, USART_FLAG_TC) == RESET);	USART_SendData(USART3, (u8) data);	
#endifreturn data;
}

解决:

  • 方案1:修改fputc内部实现
int fputc(int data, FILE *f)
{
#if (DEBUG == DEBUG_UART1)USART_SendData(USART1, (u8) data);while (USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET);
#elif (DEBUG == DEBUG_UART2)USART_SendData(USART2, (u8) data);while (USART_GetFlagStatus(USART2, USART_FLAG_TXE) == RESET);
#elif (DEBUG == DEBUG_UART3)USART_SendData(USART3, (u8) data);while (USART_GetFlagStatus(USART3, USART_FLAG_TXE) == RESET);	
#endifreturn data;
}
  • 方案2:业务中不使用printf函数,使用自行实现接口
/*** @brief 发送字节流到串口* @param bytes 字节流数据* @param length 字节流长度*/
static void UART1_SendBytes(const uint8_t* bytes, uint32_t length)
{uint32_t i;for (i = 0; i < length; ++i){USART_SendData(USART1, bytes[i]); /* CPU 将一个字节转入到 发送数据寄存器 */while (USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET); /* 等待 发送数据寄存器 将该字节全部转入到 发送移位寄存器 */}while (USART_GetFlagStatus(USART1, USART_FLAG_TC) == RESET); /* 等待 发送移位寄存器 将数据帧的最后一个字节的最后一位发送出去,整个数据帧发送完毕 */
}
http://www.yayakq.cn/news/376905/

相关文章:

  • 网站制作方案和主要内容辽宁建设建设工程信息网
  • 网站子域名怎么做住宅与建设部网站
  • 北京建站模板公司电子网站
  • 京津冀协同发展10周年长沙有实力seo优化公司
  • 电视网站后台管理系统漏洞五指山网站建设
  • 电商网站开发的底层架构江西做网站的公司
  • 湖北省建设厅乡镇污水官方网站wordpress 电子书
  • 仿wordpress站东营seo
  • 重庆网站建设公司魁网app浏览器源码大全网站
  • 西安网站优化推广公司公司网站维护经验总结
  • 济南网站建设多少费用通过apache建设网站
  • 网站建设制作的规划方案ui网页设计成都培训
  • 网站开发提现功能wordpress实用功能
  • 衡水网站建设的地方跨境电商怎么注册开店
  • 网站代码 如何做层级关系家装室内设计培训班哪里
  • 抚州网站建设公司python做网页界面
  • 自学网站开发软件开发建设银行网站可以更改个人电话
  • 个人介绍网站模板洪梅镇做网站
  • 企业网站建设多少家三点水网站建设合同书
  • ps做网站的优点班级网站的建设
  • 潮阳建设局网站移动端网站开发标题设置
  • 基础微网站开发价位贵阳市小程序网站开发公司
  • 温州市手机网站制作深圳专业做网站建网站
  • 基木鱼建站做调查挣钱的网站
  • 商城类的网站怎么做优化好用的seo软件
  • 广州骏域网站建设专家手机电脑版免费进销存软件免费版
  • 有哪些专门做校企合作的网站上海高品质网站建设公司
  • 网站建设维护保密协议书网站备案查询 工信部
  • 网站建设与网页设计pdf信息系统开发计划
  • 北京设计网站的公司哪家好网站建设需要哪些流程