stm32学习之旅串口实验(发送数据到PC)

本文介绍了STM32的USART串口模块,包括全双工通信、同步与异步的区别,以及USART1的复用引脚配置。通过示例展示了如何初始化串口、配置相关寄存器,并引入中断处理机制进行数据发送。内容涵盖了引脚复用、中断配置和库函数的使用。
摘要由CSDN通过智能技术生成

首先说明一下何为USART,USART是一个全双工通用同步/异步串行收发模块,该接口是一个高度灵活的串行通信设备,全称为通用同步/异步串行接收/发送器。要说一下的是,什么叫全双工:全双工是串行通信传输数据方法的一种,另外的两种为:单工,半双工。它们的区别是什么?简单来说,单双工的传输为A发B收(单方向传输),半通信双工为A发B收,B发A收(可以互相传输,但同一时间只能A传到B,或者B传到A,不能同时传输),全双工便是A和B能同一时间地互相传输数据。再来便是同步通信和异步通信了,同步通信是有时钟信号来传输数据的,而异步通信是没有时钟的,这就是为什么SPI和I2C有额外的时钟线的原因。
STM32的串口有三组:USART1-USART3,每一个的串口的复用引脚不一样,USART1的复用引脚是PA9(TXD),PA10(RXD),何为引脚复用?引脚复用和普通引脚有什么区别?关于引脚复用,不妨想一下,stm32的外围资源越来越多,所需要的引脚也越来越多,但cpu的引脚是有限的,那怎么办?于是引脚复用便产生了。比如PA9和PA10,在不复用USART1时,这两个引脚是可以完全独立的,也就是可以当做普通的GPIO口使用。
接下来便是配置相关的寄存器了:

#include "UART.h"
void Uart_Init()
{
RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1|RCC_APB2Periph_GPIOA|RCC_APB2Periph_AFIO,ENABLE);

GPIO_InitTypeDef ua
  • 9
    点赞
  • 33
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值