完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
STM32库函数:通用同步/异步收发器(USART)部分
一,UART和USART 1,UART:通用异步收发器通用异步收发器; 2,USART:通用同步异步收发器通用同步收发器 一般情况下,接口突发中,下文UART的一般可以用于快速反应,而名称为美国ART的接口既可以用于快速反应,也可以用于快速反应。 二、全双工和半双工和单工 一、单工 数据只在一个方向上传输,不能实现双方通信。如:电视、广播。 二、半双 数据在两个方向上传输,但同一时间的数据只能在一个方向上传输,小是单切换讲的,如:对机。 三、全双工 允许在两个方向上同时传输,如:手机通话。 (图片来源于网络) 三、ST USART基础知识 1、STM32F103xC、STM32F103xD和STM32F103xE增强型系列产品中,内置了3个通用同步/异步收发 器(USART1、USART2和USART3),和2个通用异步收发器(UART4和UART5)。 2、5个接口提供异步通信、IDA SIR ENDEC传输解码解码,多处理器通信模式,单线半双工通信模式和LIN主/从功能。 3,USART1通信速率速率偶极器4.5兆位/秒,其他接口的通信速率可达2.25兆位/秒。 4,USART1,USART2和USART3接口具有硬件的CTS和RTS信号管理,兼容ISO7816的智能卡模式和类SPI通信模式,除了UART5之外所有其他接口都可以使用DMA操作。 USART框图 USART寄存器 四,USART库函数 USART的相关库函数教程,整体功能也比较复杂,本文不会全部讲解,只讲解普通功能常用的几个函数。 五、串口初始化函数 < USART_InitTypeDef USART_Baudate 接收器和发送器的波特率在USARTDIV的消息和小数神经中的值应设置相同 。Tx/Rx波特率=fCK/(16*(USARTDIV)) 的fCK是给外设的目录(PCLK1用于USART2、3、4、5,PCLK2用于USART1) USARTDIV是一个无符号的定点数。12位的值设置在USART_BRR这。 注:在写入USART_BRR之后,波特率会被波特率寄存器的新值替换。因此,不要在通信进行中改变波特率寄存器的数值。 USART_WordLength 至于为何8位数长度据宏定义值为0×0000,9位数据长度宏定义值为0x1000中,看下图: USART_StopBits USART_Parity USART_Mode USART_HardwareFlowControl 六、串口初始化代码示例 七、USART_Cmd 串口使能函数 八、USART_ITConfig 服务中断配置函数 < USART中断掩蔽*/中断标志位定义 接口接收,接收中断标志位为1,但是当你读到USART_DR的接口的时候,也就是读串口接收的数据,硬件会自动发送端口中断时标志所以,也可以不用开发者来清除。 我的理解:USART_DR 的读写操作就是用户接收,发送数据的过程,用户接收,发送数据的过程就已经将中断标志位清0了。 |
|
|
|
只有小组成员才能发言,加入小组>>
调试STM32H750的FMC总线读写PSRAM遇到的问题求解?
1222 浏览 1 评论
X-NUCLEO-IHM08M1板文档中输出电流为15Arms,15Arms是怎么得出来的呢?
1237 浏览 1 评论
636 浏览 2 评论
STM32F030F4 HSI时钟温度测试过不去是怎么回事?
481 浏览 2 评论
ST25R3916能否对ISO15693的标签芯片进行分区域写密码?
1165 浏览 2 评论
1692浏览 9评论
STM32仿真器是选择ST-LINK还是选择J-LINK?各有什么优势啊?
358浏览 4评论
STM32F0_TIM2输出pwm2后OLED变暗或者系统重启是怎么回事?
346浏览 3评论
336浏览 3评论
stm32cubemx生成mdk-arm v4项目文件无法打开是什么原因导致的?
316浏览 3评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-9-5 02:13 , Processed in 0.830444 second(s), Total 77, Slave 61 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191