嵌入式系统开发基础教程——基于STM32F103系列课件第8章通用同步异步通信USART.pptx

上传人:牧羊曲112 文档编号:1340650 上传时间:2022-11-11 格式:PPTX 页数:36 大小:2.04MB
返回 下载 相关 举报
嵌入式系统开发基础教程——基于STM32F103系列课件第8章通用同步异步通信USART.pptx_第1页
第1页 / 共36页
嵌入式系统开发基础教程——基于STM32F103系列课件第8章通用同步异步通信USART.pptx_第2页
第2页 / 共36页
嵌入式系统开发基础教程——基于STM32F103系列课件第8章通用同步异步通信USART.pptx_第3页
第3页 / 共36页
嵌入式系统开发基础教程——基于STM32F103系列课件第8章通用同步异步通信USART.pptx_第4页
第4页 / 共36页
嵌入式系统开发基础教程——基于STM32F103系列课件第8章通用同步异步通信USART.pptx_第5页
第5页 / 共36页
点击查看更多>>
资源描述

《嵌入式系统开发基础教程——基于STM32F103系列课件第8章通用同步异步通信USART.pptx》由会员分享,可在线阅读,更多相关《嵌入式系统开发基础教程——基于STM32F103系列课件第8章通用同步异步通信USART.pptx(36页珍藏版)》请在三一办公上搜索。

1、通用同步异步通信USART,微信公众号:讲编程的高老师,8,通用同步异步通信USART微信公众号:讲编程的高老师8,本章目标,了解串行通信的概念掌握STM32F103xx中USART的结构和功能掌握串口的配置方法掌握使用库函数控制STM32F103xx的串口来发送和接收数据的方法,本章目标了解串行通信的概念,目录/Contents,目录/Contents8.1串行通信原理概述8.2STM32,目录/Contents,串行通信原理概述,一、串行通信的硬件连接,二、异步串行通信的数据帧,目录/Contents8.1串行通信原理概述一、串行通信的硬,串行通信的硬件连接,两台工作电平标准相同的单片机之

2、间只需将发送端(TXD)和接收端(RXD)交叉连接,再将参考零电位引脚相连接,串行通信的硬件连接两台工作电平标准相同的单片机之间只需将发送,串行通信的硬件连接,单片机实现两个RS-232通信接口的电路,串行通信的硬件连接单片机实现两个RS-232通信接口的电路通,串行通信的硬件连接,USB转串口后与单片机通信电路原理图,串行通信的硬件连接USB转串口后与单片机通信电路原理图,异步串行通信的数据帧,异步串行通信示意图,字符帧的结构,异步串行通信的数据帧异步串行通信示意图字符帧的结构,目录/Contents,目录/Contents8.1串行通信原理概述8.2STM32,目录/Contents,ST

3、M32F103xx的串口工作原理,一、USART的结构框图,二、利用库函数设置和使用串口,三、数据发送与接收,目录/Contents8.2STM32F103xx的串口工作,USART的结构框图,波特率控制,中断控制,收发控制,数据存储与转移,USART的结构框图波特率控制中断控制收发控制数据存储与转移,利用库函数设置和使用串口,利用库函数设置和使用串口函数名 描述RCC_APB2Peri,数据发送与接收,数据发送与接收函数名 描述USART_SendData向串口,目录/Contents,目录/Contents8.1串行通信原理概述8.2STM32,目录/Contents,应用案例1:串口查询

4、方式接收,一、目标,二、仿真电路设计,三、运行结果,目录/Contents8.3应用案例1:串口查询方式接收一、,案例1目标,案例1目标使用STM32F103R6串口1,实现:能通过查询,仿真电路,仿真电路,虚拟串口软件Virtual Serial Port Driver创建COM1、COM2,虚拟串口软件Virtual Serial Port Driv,虚拟串口软件占用COM2,向COM1(单片机端)发送数据,虚拟串口软件占用COM2,向COM1(单片机端)发送数据,代码实现,代码实现,usart.h,usart.h#include vartypes.h,usart.c,usart_Init

5、()初始化串口,usart.c/Filename: usart.cusar,Led.h,Led.h/Filename: led.h,usart.c,LED_Init()初始化数码管相关的IO端口,usart.c/Filename: led.cLED_In,对system_stm32f10 x.c进行修改,SystemInit()初始化配置系统时钟源,经过测试,在Proteus仿真平台中,当STM32F103xx使用外部晶振(HSE)作为系统时钟源时,会导致波特率不准确,从而导致通信失败。为此,要在system_stm32f10 x.c文件中修改SystemInit函数。system_stm32

6、f10 x.c文件是非常重要的系统文件,修改时必须谨慎!建议将原来的SystemInit函数名称修改为SystemInit0,再增加新的SystemInit函数。在实际硬件平台运行程序时,无需对system_stm32f10 x.c文件作这样的修改。,对system_stm32f10 x.c进行修改/void,main.c,在main函数中调用usart初始化函数,配置波特率为9600bps。在while循环中,用USART_GetFlagStatus函数查询USART1是否接收到数据,如果接收到数据,调用USART_ReceiveData 数据把数据传到Receive_byte 变量。接收到

7、的数据传送完成之后,把读数据寄存器非空标志清除。调用了USART_SendData函数向外发送一个字符(Receive_byte 变量中的内容),把接收到的数据重新发送出去。执行发送后,等待发送完成标志。最后把刚接收到的数据转换为显示码,从PB端口输出。,main.c/filename:main.c在main函数,仿真运行效果,仿真运行效果,目录/Contents,目录/Contents8.1串行通信原理概述8.2STM32,目录/Contents,应用案例2:串口中断方式接收,一、安例2目标,二、仿真电路设计,三、运行效果,目录/Contents8.4应用案例2:串口中断方式接收一、,案例2

8、目标,电路和调试方法与案例1相同,只有程序代码有点差异!,案例2目标使用STM32F103R6串口1,实现:通过中断方,程序代码的不同之处,程序代码的不同之处在案例1代码的基础上进行修改串口初始化配置,usart.c,usart_Init()初始化串口串口1中断使能,usart.c/void usart_init(Int32,usart.c,USART1_IRQHandler() 串口1中断服务函数,usart.cvoid USART1_IRQHandler(,目录/Contents,目录/Contents8.1串行通信原理概述8.2STM32,本章小结,本章小结本章主要内容介绍了串口配置、查询方式接收数据和中断方,谢谢观赏,微信公众号:讲编程的高老师,谢谢观赏微信公众号:讲编程的高老师,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号