恒美微站 Logo 恒美微站
  • 首页
  • 关于我们
  • 建站服务
  • 主题模板
  • 案例展示
  • 资讯中心
  • 联系我们

STM32-USART 05

  • 首页
  • 资讯中心
  • /
  • STM32-USART 05

相关资讯

第17篇_Client 06|chunked、关闭和 keep-alive 边界 2026/8/21 9:50:18
基于STM32与DS18B20的智能输液温度控制系统设计与仿真 2026/8/21 9:50:18
构建原生端侧Agent框架:从PalmClaw架构到移动AI应用实践 2026/8/21 9:50:18

最新资讯

服务器流量风暴防御实战:从DDoS攻击识别到弹性架构构建
Axure高保真评分元件模板:开箱即用的原型交互解决方案
单片机毕业设计-基于 STM32 的便携式人体健康体征监测终端设计 基于 STM32 的 MAX30102 生理信号检测系统开发(013204)
单片机毕业设计-基于 LU-ASR01 的语音识别垃圾分类装置设计与开发 基于 STM32 的多仓语音驱动自动开盖垃圾桶模型设计(013104)
单片机毕业设计-基于 STM32 与 ESP-01S 的智能柜体远程监测控制系统设计 基于 STM32 单片机的环境感知智能柜体自动化装置设计(013004)
2026年Java面试题库与备考策略全解析

今日推荐

OpenCode AI编程助手:从核心原理到本地部署的完整实践指南
基于SpringBoot与Vue的企业资产与采购管理系统设计与实现(程序+文档+讲解)
Linux命令-uucico(UUCP传输程序)

本周热门

【文章复现】非线性值迭代自适应动态规划(ADP):离散时间非线性系统的策略迭代自适应动态规划算法研究附Matlab代码
【双层规划,节点出清价,绿证交易,CVaR方法】两级电力市场环境下计及风险的省间交易商最优购电模型附Matlab代码
隐式mpc+自适应mpc+时变mpc,线性时变模型预测控制附Simulink仿真

本月精选

如何用DamaiHelper实现演唱会门票的智能自动化抢购:完整技术解决方案指南
第4篇:59 倍性能差距的索引瓶颈定位——一次教科书级的全表扫描调优
终极歌词批量下载神器:5分钟解决离线音乐库歌词同步难题

STM32-USART 05

发布时间:2026/8/21 9:50:18
STM32-USART 05 USART简介USART前置发送接送 双工可发送可接送 单工仅支持发送与接送的一种 全双工同时进行发送与接收 半双工同一时刻进行发送或者接收同步异步 同步时钟 异步波特率电平特性 单端信号引脚高低电平相对于GND 差分信号俩引脚电压差电平标准 定义数据1和数据0的表达方式是传输线缆中人为规定的电压与数据的对应关系 标准 TTL电平3.3V或5V表示10V表示0 RS232电平-3~-15V表示13~15表示0 RS485电平俩线压差2~6V表示1-2~-6V表示0注意RS485电平标准是差分信号抗干扰能力强信号传输距离远可达上千米 TTL电平RS232电平标准信号最远只能几十米串口助手 HEX发送与显示 字符发送与显示 GBK UTF-8发送与显示--no-multibyte-chars注意字符 通过ASCII码表 对应16进制数 字 通过GBK UTF-8表 对应16进制数 GBK发送还是UTF-8发送取决于IDE的编码格式USART定义根据发送数据寄存器的一个字节的数据自动生成数据帧格式,通过发送移位寄存器从TX引脚发送出去自动接收移位寄存器内的数据帧时序拼接成一个字节数据存放在接送数据寄存器中注意接收数据寄存器只能保存一个字节的数据生产者产生数据太快消费者来不及消费就会导致中断阻塞并且丢数据的情况USART波特率 决定传输一位的时间单字节协议帧格式 起始 单字节数据 停止时序 TX/RX起始产生一个下降沿 数据传输高低电平翻转 停止产生一个上升沿注意TX时序单片机控制 RX时序外挂模块控制stm32f103c8t6资源 USART1 USART2 USART3数据的传输 低位先行通信速率 USART14.5Mbps APB272M波特率分频得到USART函数USART初始化函数函数使用 函数USART_Init 入参USART 结构体指针 返回值无USART_InitTypedef结构体成员变量函数调用示例​USART使能函数函数使用 函数USART_Cmd 入参 USART ENABLE / DISABLE 返回值无函数调用示例USART_Cmd(USART1, ENABLE);USART发送单字节数据函数函数使用 函数USART_SendData 入参USART 单字节数据 返回值无函数调用示例uint8_t a 0x88; USART_SendData(USART1, a);注意写入DR硬件自动清除TXE标志位USART接收单字节数据函数函数使用 函数USART_ReceiveData 入参USART 返回值单字节数据函数调用示例uint8_t data USART_ReceiveData(USART1);注意读出DR硬件自动清除RXNE标志位USART中断配置函数函数使用 函数USART_ITConfig 入参USART 中断标志位 ENABLE/DISABLE 返回值函数调用示例USART_ITConfig(USART1, USART_IT_RXNE, ENABLE); //开启串口接收数据的中断USART标志位USART发送模块函数Serial_Init:RCC_APB2PeriphClockCmd RCC_APB2PeriphClockCmd GPIO_Init USART_Init USART_Cmdvoid Serial_SendArray(uint8_t *arr, uint16_t length)//串口发送数组 void Serial_SendArray(uint8_t *arr, uint16_t length) { for(uint16_t i 0; i length; i) { USART_SendData(USART1, arr[i]); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE)); } }void Serial_SendString(char *str)//串口发送字符串 void Serial_SendString(char *str) { while(*str ! \0) { USART_SendData(USART1, *str); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE)); str; } }printf重定向int fputc(int ch, FILE *f) { USART_SendData(USART1, ch); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE)); return ch; }USART接收模块函数void Serial_Init(void)RCC_APB2PeriphClockCmd RCC_APB2PeriphClockCmd GPIO_Init //将PA9引脚初始化为复用推挽输出 GPIO_Init //将PA10引脚初始化为上拉输入 USART_Init USART_ITConfig NVIC_PriorityGroupConfig NVIC_Init USART_Cmd串口接收中断服务函数void USART1_IRQHandler(void) { if (USART_GetITStatus(USART1, USART_IT_RXNE) SET) { //操作 } USART_ClearITPendingBit(USART1, USART_IT_RXNE); }

关于恒美微站

恒美微站专注于为个体商户、工作室提供极简自助建站服务,让每个人都能轻松拥有专业网站。

快速链接

  • 关于我们
  • 建站服务
  • 主题模板
  • 案例展示
  • 资讯中心

服务项目

  • 可视化建站
  • 拖拽编辑
  • 主题定制
  • SEO 优化
  • 网站托管

联系方式

  • 📍 地址:北京市朝阳区建国路 88 号
  • 📞 电话:400-888-8888
  • ✉️ 邮箱:info@hmyw.cn
  • 🕐 时间:周一至周日 9:00-18:00

© 2024 恒美微站 hmyw.cn 版权所有 | 京 ICP 备 12345678 号