stm32-USART

串口的空闲状态是高电平

起始位是低电平

发送完了,,发送停止位,,停止位是高电平


USART : universal synchronous asynchronous receiver transmitter

  • asynchronous : 异步的

串口主要还是异步通信

自动USRT 协议 ,,, 的数据的发送和接收

波特率发生器: 用来配置波特率 ===》 用来分频,,,在这个时钟下进行收发

不需要奇偶校验位就选8位,,需要校验位就选9位

波特率: 9600 ,,或者115200

支持同步模式,,, USART同步模式和SPI很像,,但是几乎没人用,因为需要三根线,,多占一个IO

SPI更强,,所以同步通信,,都直接用SPI

硬件流控制 hardware flow control : 解决发送方,发得太快,接收方来不及处理,,硬件控制流会增加两根线

tx rx RTS CTS

  • RTS : request to send 请求发送 ,,, 表示我还能接收
  • CTS : clear to send ; 允许发送 ,,, 你可以发送

DMA : direct memory access : 直接存储器访问

智能卡 : samrt card :给银行卡,SIM卡用的,,,饭卡,公交卡

IrDA : 红外通信 : 老式遥控器那种,,, 几十年前很流行,,后来被 蓝牙,wifi 取代了,,现在基本没人用

LIN总线: local interconnect network : 汽车行业使用,,, 汽车里面,,车窗,后视镜,雨刷,座椅,天窗,,这些简单设备

汽车有两种总线:

  • CAN 高速 : 发动机,,ABS,变速箱
  • LIN 低速 : 车窗,车灯,雨刷

LIN的本质是 = USART + 特殊协议


USART 是低位先行 LSB

在线路上发送数据时,,1个字节8位,,不可能同时发出去,,只能一位一位发,,,

所以通信协议必须规定是先发最高位还是先发最低位

I2C是高位先行

SPI: 默认是高位先行,,也可以配置成低位先行

波特率的16倍频率进行采样,,,也就是在一位的时间内,,采样16次,,,,

NE : 噪声标志位

通过这个起始位侦测,,,

串口 16倍过采样系数 (USART默认工作模式):

stm32串口接收端为了抗干扰,,1个串口数据位的时间,,硬件用系统时钟连续采样16次电平,,通过多次采样值判断该位是高电平还是低电平,,过滤剑锋毛刺干扰

  • 想要生成 9600的波特率,,,需要 9600 * 16 倍的系统时钟

CH340G : usb转串口的芯片

这个vcc是CH340的电源输入脚,, 一般这个模块的排针有一个跳线帽,,, 将3.3给 CH340电源输入

跳线帽是用来选择 通信电平的,,也是用来给CH340供电的,,,

SR : 状态寄存器

DR : 数据寄存器

CR : 配置寄存器

相关推荐
创界工坊工作室13 小时前
58-基于51单片机的多自由度机械手控制系统设计
stm32·单片机·嵌入式硬件·51单片机·proteus
思麟呀14 小时前
嵌入式入门(四)USART 串口深度解析:单片机第一次与电脑对话
c语言·单片机·嵌入式硬件·1024程序员节
BSD_HY14 小时前
薄膜开关分压网络接 MCU ADC:通道复用下的两个坑
单片机·薄膜开关·源头工厂
NamoAmitabha12814 小时前
BSP,板级支持包--deepseek
单片机·嵌入式硬件·fpga开发
小白今天也很酷14 小时前
MCXN947更新板载DAP_Link固件的方法
c语言·python·单片机·ubuntu·excel·1024程序员节
艾芯微科技1 天前
HR911130C|汉仁 HANRUN 集成变压器千兆 RJ45 网口参数、电路、PCB 布线、替代与采购避坑
网络·单片机·嵌入式硬件·集成测试·51单片机
白搞电子1 天前
ESP-Mosaico 黑胶轮滑动画与音乐编排:从设备原型到电脑预览工作台
单片机·嵌入式硬件
新晨单片机设计1 天前
S028C-基于STM32单片机WIFI智能电表(温度)【Proteus仿真+Keil程序+原理图】
stm32·单片机·proteus·wifi智能电表
幼儿园蛋小黑1 天前
LVGL 入门指南:从零搭建嵌入式 GUI 界面
嵌入式硬件
1234567890@world1 天前
正点原子 ATK-DLRK3568 嵌入式Linux系统开发手册V1.3 详细总结
linux·stm32·单片机