欢迎来到天天文库
浏览记录
ID:49659465
大小:1.08 MB
页数:79页
时间:2020-03-03
《STM32 例程 串口实验.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、.实验要求·使用开发板上的串口向PC发送信息·PC通过串口向开发板发送数据,CPU在接收到后,确认信息,并通过串口返回数据例如:开发板先发送一个字符‘c’,然后PC发送一个字符‘a’,开发板接收到后,再发送一个字符‘b’[编辑]实验目的·学习和掌握STM32的USART模块的工作原理和使用方法·学习和掌握USART固件库的使用·掌握串口中断的使用方法[编辑]实验分析硬件分析:USART的工作原理软件分析:USART固件库USART实例[编辑]开发板原理图设计MAX3232Word资料.与主芯片的连接[编辑]硬件知识点详见STM32F10XXX英
2、文版参考手册RM0008-ReferenceManual[编辑]USART通用同步异步收发器(USART)提供了一种灵活的方法与使用工业标准NRZ异步串行数据格式的外部设备之间进行全双工数据交换。USART利用小数波特率发生器提供宽范围的波特率选择。它支持同步单向通信和半双工单线通信,也支持LIN(局部互连网),智能卡协议和IrDA(红外数据组织)SIRWord资料.ENDEC规范,以及调制解调器(CTS/RTS)操作。它还允许多处理器通信。使用多缓冲器配置的DMA方式,可以实现高速数据通信。(表)USART模式支持[编辑]USART内部结构W
3、ord资料.[编辑]引脚定义任何USART双向通信至少需要两个引脚:接收数据输入(RX)和发送数据输出(TX)。·RX:接收数据输入。通过过采样技术来区别数据和噪音,从而恢复数据。·TX:发送数据输出。当发送器被禁止时,输出引脚恢复到它的I/O端口配置。当发送器被激活,并且不发送数据时,TX引脚处于高电平。在单线和智能卡模式里,此I/O口被同时用于数据的发送和接收。Word资料.在同步模式中需要下列引脚:·CK:发送器时钟输出。此引脚输出用于同步传输的时钟,(在起始位和停止位上没有时钟脉冲,软件可选地,可以在最后一个数据位送出一个时钟脉冲)。数
4、据可以在RX上同步被接收。这可以用来控制带有移位寄存器的外部设备(例如LCD驱动器)。时钟相位和极性都是软件可编程的。在智能卡模式里,CK可以为智能卡提供时钟。在IrDA模式里需要下列引脚:·IrDA_RDI:IrDA模式下的数据输入。·IrDA_TDO:IrDA模式下的数据输出。在硬件流控模式中需要下列引脚:·nCTS:清除发送,若是高电平,在当前数据传输结束时阻断下一次的数据发送。·nRTS:发送请求,若是低电平,表明USART准备好接收数据(表)USART引脚配置Word资料.[编辑]寄存器·一个状态寄存器(USART_SR)·一个数据寄
5、存器(USART_DR)·三个控制寄存器(USART_CR1,USART_CR2,USART_CR3)·一个波特率寄存器(USART_BRR)·一个智能卡模式下的保护时间寄存器(USART_GTPR)关于以上寄存器中每个位的具体定义,请参考USART寄存器描述。[编辑]控制逻辑·发送控制·接收控制·时钟控制·硬件流控制·波特率控制(发送器和接收器)·中断控制·唤醒单元[编辑]USART寄存器描述Word资料.下表列出了USART寄存器的地址映射和复位值。可以以半字(16位)或字(32位)的方式访问这些外设寄存器。[编辑]USART_SR(Sta
6、tusregister)状态寄存器rc_w0:软件可以读此位,也可以通过写’0’清除此位,写’1’对此位无影响。位31:10保留位,由硬件强制为0位9CTS:CTS标志Word资料.如果设置了CTSE位,当nCTS输入状态变化时,该位由硬件置’1’。由软件清’0’(向该位写’0’)。如果USART_CR3寄存器中的CTSIE=1,则产生中断。0:nCTS状态线上没有变化;1:nCTS状态线上发生变化。在UART4和UART5上,该位不可用。位8LBD:LIN断开检测标志当检测到LIN断开时,该位由硬件置’1’。由软件清’0’(向该位写’0’)。
7、如果USART_CR2寄存器中的LBDIE=1,则产生中断。0:没有检测到LIN断开;1:检测到LIN断开。注意:若LBDIE=1,当LBD=1时产生中断。位7TXE:发送数据寄存器(TDR)空当TDR寄存器中的数据被转移到移位寄存器时,该位由硬件置’1’。如果USART_CR1寄存器中的TXEIE=1,则产生中断。写USART_DR寄存器,将该位清’0’。0:数据还没有被转移到移位寄存器;1:数据已经被转移到移位寄存器。注意:该位被用在单缓冲发送中。位6TC:发送完成Word资料.当包含有数据的一帧发送完成后,并且TXE=1时,该位由硬件置’
8、1’。如果USART_CR1寄存器中的TCIE=1,则产生中断。该位由软件序列清’0’(先读一次USART_SR寄存器,后写一次USART_DR寄存器
此文档下载收益归作者所有