STM32--USART串口(2)串口外设

一、USART简介

可配置数据位:不需要校验就是8位,需要校验就选9位;

停止位:决定了帧的间隔;

STM32F103C8T6USART:USART1挂载在APB2总线上,USART2和USART3挂载在APB1总线上;

二、USART框图

TXE:发送寄存器空;RXNE:接收寄存器非空;

波特率发生器:来源为APB2或APB1时钟的分频;

三、USART基本结构

右边的四个寄存器实际在软件层面只有一个寄存器DR;

写入DR时,数据走上面进行发送,读取DR时,数据走下面进行接收;

四、数据帧

1、字长设置

2、配置停止位

五、波特率发生器

采样时为了防止噪声干扰会对同一个状态进行连续16次的采样,所以内部的采样时钟是16倍的波特率。所以输入时钟 / DIV就要等于16倍的波特率。

eg:9600 = 72M / ( 16 * DIV )

DIV : 000111010100 | 1100(468.75)

六、数据模式

HEX模式、十六进制模式、二进制模式:以原始数据形式显示;

文本模式、字符模式:以原始数据编码后的形式显示;

七、printf

1、printf

printf默认输出到屏幕,但32没有屏幕,所以需要重定向;

1、勾上Use McrolLIB

2、包含头文件

3、重写fputc

2、sprintf

sprintf可以指定打印位置,不涉及 重定向的东西

3、封装sprintf

相关推荐
盈创力和20071 小时前
技术解析:CO与NO₂双气体监测如何构筑协同化安全防线
嵌入式硬件·安全·以太网温湿度传感器·多参量传感器·温湿度+气体智能传感器
平凡灵感码头2 小时前
STM32 串口中断接收原理与实战详解:从配置到中断服务函数全流程解析
单片机·嵌入式硬件
切糕师学AI2 小时前
MCU中的RC电路(Resistor-Capacitor Circuit)
单片机·嵌入式硬件
朱嘉鼎3 小时前
KeilIDE背后的命令
c语言·嵌入式硬件·keilmdk
Jie_jiejiayou6 小时前
STM32F10xxx启动模式配置与ISP一键下载
stm32·isp·烧录模式
GilgameshJSS9 小时前
STM32H743-ARM例程33-TOUCH
c语言·arm开发·stm32·单片机·嵌入式硬件
我先去打把游戏先15 小时前
ESP32开发指南(基于IDF):连接AWS,乐鑫官方esp-aws-iot-master例程实验、跑通
开发语言·笔记·单片机·物联网·学习·云计算·aws
hazy1k16 小时前
51单片机基础-继电器实验
stm32·单片机·嵌入式硬件·51单片机·1024程序员节
美好的事情总会发生19 小时前
FPGA的LVDS接口电压
嵌入式硬件·fpga开发·硬件工程·智能硬件
kaka❷❷19 小时前
STM32中 ESP8266 MQTT ModBus RS482 介绍
stm32·嵌入式硬件·智能路由器