STM32的数据传输外设:USART、I2C、SPI三种常见接口的学习

一、USART串行接口

串行接口分为异步串行接口和同步串行接口两种,其中异步串行接口统称为通用异步收发器接口UART,具有同步功能的UART(包含时钟信号SCLK)称为通用同步/异步收发器接口USART。

USART的电气特性标准包括RS-232C、RS422、RS423和RS485等,其中RS-232C是最常见的串行通信接口(台式机的显示器与主机的连接线好像就是RS232吧)

RS232有9个引脚,当然最常用的只有三个:RXD(接收数据)、TXD(发送数据)、GND(用来共地);而RS232的主要指标有两个:数据速率和数据格式。数据速率就是我们设置的波特率,而数据格式便是我们设置的起始位、数据位、校验位、停止位;

因为UART是挂载在APB1上的,所以我们使用其传输数据的时候,要先开启相应的时钟。但是不要忘了,UART是需要用到GPIO接口的,所以我们还需要开启GPIO的时钟,并且先初始化GPIO接口,再初始化USART。

至于USART使用哪些GPIO引脚,我就不赘述了,网上随便一查就能知道。

当我们程序需要对USART进行操作的时候,我们若通过寄存器进行操作的话,那么通过查询USART寄存器的表便可以慢慢书写下来,而通过库函数的话,通过正点原子的例程也可以很清楚的学习到。

我们只需要知道在我们的主函数里先使用初始化函数,将USART初始化完成,然后接收数据的话通过串口中断来完成,根据项目设置的接收结束标志,把接收结束标志位置1,在主函数中通过查询该标志位的真假来完成接收。

而发送的话,我们既可以用重定向printf来发送数据(但是我不建议实时系

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值