资源预览内容
第1页 / 共70页
第2页 / 共70页
第3页 / 共70页
第4页 / 共70页
第5页 / 共70页
第6页 / 共70页
第7页 / 共70页
第8页 / 共70页
第9页 / 共70页
第10页 / 共70页
亲,该文档总共70页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
串口通信串口通信:基本设置基本设置串口基础串口基础串行通信是指数据一位一位地顺序传送,其特点是通信线路简单,只要一对传输线就可以实现双向通信,从而大大降低了成本,特别适用于远距离通信,但传送速度较慢。USBUSB供电、串口转供电、串口转USBUSB传输传输USART1:PA10/PA9USART2:PA3/PA2UART4:PC11/PC10UART5:PD2/PC12USART1:USART1:PA10PA10/PA9/PA9USART2:USART2:PA3PA3/PA2/PA2UART4:UART4:PC11PC11/PC10/PC10UART5:UART5:PD2PD2/PC12/PC12绿色代表接收绿色代表接收USART1USART1发送数据发送数据v任务任务1:USART1发送数据发送数据工程结构及工程结构及USART1USART1初始化初始化1 1USART1USART1初始化初始化2 2:波特率等的设置:波特率等的设置v主函数:主函数:USART_SendString(dd);USART1接收中断接收中断v任务任务1:USART1中断:计算机发送字中断:计算机发送字符,符,ARM接收后返回给计算机接收后返回给计算机USART1:PA10/PA9USART2:PA3/PA2UART4:PC11/PC10UART5:PD2/PC12USART1:USART1:PA10PA10/PA9/PA9USART2:USART2:PA3PA3/PA2/PA2UART4:UART4:PC11PC11/PC10/PC10UART5:UART5:PD2PD2/PC12/PC12绿色代表接收绿色代表接收USART1USART1发送数据发送数据任务任务3 3:计算机控制:计算机控制LEDLEDv本任务涉及到变量的跨文件使用问题本任务涉及到变量的跨文件使用问题思考其他需要做的工作?思考其他需要做的工作?任务任务6 6:反思串口配置过程?初始状态:反思串口配置过程?初始状态执行完执行完USART1_Init(9600);USART1_Init(9600);后后串口通信串口通信USART1:PA10/PA9USART2:PA3/PA2UART4:PC11/PC10UART5:PD2/PC12UART5UART5电路及硬件电路及硬件工程结构工程结构UART5UART5配置配置1 1:时钟、引脚:时钟、引脚UART5UART5配置配置2 2:波特率等:波特率等UART5UART5配置配置3 3:中断、使能:中断、使能字符及字符串发送函数字符及字符串发送函数vMain函数函数v0 x0D回车、回车、0 x0A换行换行v如何发送字符串实现回车换行?如何发送字符串实现回车换行?USART1USART1USART4USART4USART5USART5UART5-计算机通信:UART5经U6、J4连接到串口母口,可以和其它串口公口设备直接相连。ESP8266 WIFIESP8266 WIFI模块配置电路模块配置电路计算机通过U10、U11、P10连接到P13,即可实现对WiFi模块的配置。串口数据通过串口数据通过WIFIWIFI模块发送电路模块发送电路UART5-WiFi模块间的通信:UART5经P12连接到WiFi模块,实现WiFi通信。 嵌入式系统应用43目 录串行通信基本原理串行通信基本原理1串行通信实例串行通信实例2目录目录 串行通信接口背景知识串行通信接口背景知识1 STM32F4串口框图串口框图2 STM32F4串口常用寄存器和库函数串口常用寄存器和库函数3 串口配置方法串口配置方法(手把手写简单的通信实例)手把手写简单的通信实例)4 串口通信实验讲解串口通信实验讲解5串口通信原理与配置串口通信原理与配置n参考资料:参考资料:l探索探索者者STM32F4开发板:开发板: STM32F4开发指南开发指南-库函数版本库函数版本- 5.3小节小节 usart文件夹介绍文件夹介绍 第第9章章 串口通信实验串口通信实验pSTM32F4xx官方资料:官方资料:STM32F4xx中文中文参考参考手册手册-第第26章章 通用同步异步收发器通用同步异步收发器 1.通信接口背景知识通信接口背景知识 u处理器与外部设备通信的两种方式:处理器与外部设备通信的两种方式:l并行通信并行通信-传输原理:数据各个位同时传输。-优点:速度快-缺点:占用引脚资源多l串行通信串行通信-传输原理:数据按位顺序传输。-优点:占用引脚资源少-缺点:速度相对较慢 1.通信接口背景知识通信接口背景知识 u串行通信:串行通信:按照数据传送方向,分为:按照数据传送方向,分为:u单工:单工:数据传输只支持数据在一个方向上传输u半双工:半双工:允许数据在两个方向上传输,但是,在某一时刻,只允许数据在一个方向上传输,它实际上是一种切换方向的单工通信;u全双工:全双工:允许数据同时在两个方向上传输,因此,全双工通信是两个单工通信方式的结合,它要求发送设备和接收设备都有独立的接收和发送能力。 1.通信接口背景知识通信接口背景知识 u串行通信三种传送方式:串行通信三种传送方式: 1.通信接口背景知识通信接口背景知识 u串行通信的通信方式l同步通信同步通信:带时钟同步信号传输。-SPI,IIC通信接口l异步通信:异步通信:不带时钟同步信号。-UART(通用异步收发器),单总线 1.通信接口背景知识通信接口背景知识 u常见的串行通信接口:通信标准通信标准引脚说明引脚说明通信方式通信方式通信方向通信方向 UART(通用异步收发器)TXD:发送端RXD:接受端GND:公共地异步通信异步通信全双工全双工 单总线(1-wire)DQ:发送/接受端异步通信异步通信半双工半双工SPISCK:同步时钟MISO:主机输入,从机输出MOSI:主机输出,从机输入同步通信同步通信全双工全双工I2CSCL:同步时钟SDA:数据输入/输出端同步通信同步通信半双工半双工 2.STM32串口通信基础串口通信基础 uSTM32的串口通信接口lUART:通用异步收发器通用异步收发器lUSART:通用同步异步收发器通用同步异步收发器 nSTM32F4XX目前最多支持目前最多支持8个个UART,STM32F407一般一般是是6个。具体可以对照选型手册和数据手册来看。个。具体可以对照选型手册和数据手册来看。nSTM32F103目前最多支持目前最多支持5个个UART 2.STM32串口通信基础串口通信基础 uUART异步通信方式引脚连接方法:异步通信方式引脚连接方法:-RXD:数据输入引脚。数据接受。数据输入引脚。数据接受。-TXD:数据发送引脚。数据发送。数据发送引脚。数据发送。n对于对于STM32F407,每个串口和引脚对应关系,可以查看,每个串口和引脚对应关系,可以查看数据手册引脚对应表。数据手册引脚对应表。 2.STM32串口通信基础串口通信基础 uUART异步通信方式引脚异步通信方式引脚(STM32F407ZGT6):串口号串口号RXDTXD1PA10(PB7)PA9(PB6)2PA3(PD6)PA2(PD5)3PB11(PC11/PD9)PB10(PC10/PD8)4PC11(PA1)PC10(PA0)5PD2PC126PC7(PG9)PC6(PG14)STM32F4的芯片数据手册中芯片引脚功能中可以查看到。的芯片数据手册中芯片引脚功能中可以查看到。 2.STM32串口通信基础串口通信基础 uUART异步通信方式特点:异步通信方式特点:l全双工异步通信。全双工异步通信。l小数波特率发生器系统,提供精确的波特率。小数波特率发生器系统,提供精确的波特率。l可配置的可配置的16倍过采样或倍过采样或8倍过采样,因而为速度容差与时钟容差的灵活倍过采样,因而为速度容差与时钟容差的灵活配置提供了可能。配置提供了可能。l可编程的数据字长度(可编程的数据字长度(8位或者位或者9位);位);l可配置的停止位(支持可配置的停止位(支持1或者或者2位停止位);位停止位);l可配置的使用可配置的使用DMA多缓冲器通信。多缓冲器通信。l单独的发送器和接收器使能位。单独的发送器和接收器使能位。l检测标志:检测标志: 接受缓冲器接受缓冲器 发送缓冲器空发送缓冲器空 传输结束标志传输结束标志l多个带标志的中断源。触发中断。多个带标志的中断源。触发中断。l其他:校验控制,四个错误检测标志。其他:校验控制,四个错误检测标志。 2.STM32串口通信基础串口通信基础 uSTM32串口通信过程串口通信过程数据接收过程:数据接收过程:MCU内核输入数据缓冲器串行输入移位寄存器MCU内核输出数据缓冲器串行输出移位寄存器数据发送过程:数据发送过程:RXDTXD串行数据输入串行数据输入串行数据输出串行数据输出外部设备外部设备 uSTM32串口异步通信需要定义的参数:串口异步通信需要定义的参数: 起始位起始位 数据位(数据位(8位或者位或者9位)位) 奇偶校验位(第奇偶校验位(第9位)位) 停止位(停止位(1,15,2位)位) 波特率设置波特率设置n范例:范例: 2.STM32串口通信基础串口通信基础 3.STM32串口框图串口框图M4 2.STM32串口通信基础串口通信基础M3目录目录 STM32串口常用寄存器和库函数串口常用寄存器和库函数1串口配置一般步骤串口配置一般步骤(手把手写串口实例手把手写串口实例)2串口通信基本原理串口通信基本原理n常用的串口相关寄存器常用的串口相关寄存器lUSART_SR状态寄存器状态寄存器lUSART_DR数据寄存器数据寄存器lUSART_BRR波特率寄存器波特率寄存器 3.STM32串口常用寄存器和库函数串口常用寄存器和库函数 u串口操作相关库函数(省略入口参数):串口操作相关库函数(省略入口参数):void USART_Init(); /串口初始化:波特率,数据字长,奇偶校验,硬件流控以及收发使能串口初始化:波特率,数据字长,奇偶校验,硬件流控以及收发使能void USART_Cmd();/使能串口使能串口void USART_ITConfig();/使能相关中断使能相关中断void USART_SendData();/发送数据到串口,发送数据到串口,DRuint16_t USART_ReceiveData();/接受数据,从接受数据,从DR读取接受到的数据读取接受到的数据FlagStatus USART_GetFlagStatus();/获取状态标志位获取状态标志位void USART_ClearFlag();/清除状态标志位清除状态标志位ITStatus USART_GetITStatus();/获取中断状态标志位获取中断状态标志位void USART_ClearITPendingBit();/清除中断状态标志位清除中断状态标志位 3.STM32串口常用寄存器和库函数串口常用寄存器和库函数 FlagStatus USART_GetFlagStatus(USART_TypeDef* USARTx, uint16_t USART_FLAG); 3.STM32串口常用寄存器和库函数串口常用寄存器和库函数 void USART_SendData(USART_TypeDef* USARTx, uint16_t Data);uint16_t USART_ReceiveData(USART_TypeDef* USARTx); 3.STM32串口常用寄存器和库函数串口常用寄存器和库函数 void USART_Init(USART_TypeDef* USARTx, USART_InitTypeDef* USART_InitStruct); 3.STM32串口常用寄存器和库函数串口常用寄存器和库函数 4.串口配置一般步骤串口配置一般步骤 u准备知识准备知识需要先了解需要先了解 STM32F4的端口复用映射相关知识,请参考的端口复用映射相关知识,请参考前面端口复用映射视频。前面端口复用映射视频。 4.串口配置一般步骤串口配置一般步骤 u硬件连接硬件连接P
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号