200字范文,内容丰富有趣,生活中的好帮手!
200字范文 > STM32的USART串口通讯实验

STM32的USART串口通讯实验

时间:2019-03-20 05:07:06

相关推荐

STM32的USART串口通讯实验

文章目录

实验环境一、USART介绍二、使用STM32CubeMX配置项目STM32CubeMX配置环境使用Keil MDK 生成.Hex文件烧录串口调试工具查看 三、波形分析参考资料

实验环境

系统:windos10

软件: stm32CubeMX,Keil,mcuisp,fireTools

硬件:STM32103FC8T6核心板,usb转TTL串口一块,面包板一块,导线若干

提示:以下是本篇文章正文内容

一、USART介绍

USART/UART通信是STM32的一个非常重要的外设,是一种通用串行数据总线,可实现全双工通信。

UART:通用异步收发器,

USART:通用同步/异步收发器,

可以看出USART比UART多了一个同步模式。

异步通信:

异步通信是按字符传输的。每传输一个字符就用起始位来进来收、发双方的同步。不会因收发双方的时钟频率的小的偏差导致错误。

这种传输方式利用每一帧的起、止信号来建立发送与接收之间的同步。特点是:每帧内部各位均采用固定的时间间隔,而帧与帧之间的间隔时随即的。接收机完全靠每一帧的起始位和停止位来识别字符时正在进行传输还是传输结束。

同步通信:

进行数据传输时,发送和接收双方要保持完全的同步,因此,要求接收和发送设备必须使用同一时钟。

优点是可以实现高速度、大容量的数据传送;缺点是要求发生时钟和接收时钟保持严格同步,同时硬件复杂。

本文使用异步通信

二、使用STM32CubeMX配置项目

下载、安装和使用在上个博客

采用HAL库编程实现LED流水灯&&虚拟逻辑分析仪观察对应管脚上的输出波形(高低电平转换)

STM32CubeMX配置环境

新建项目->选择USART1

Mode选择异步通信(Asynchronous)波特率为115200,1位停止位,无校验位

Project Manager 设置

project

Code Generator

右上角GENERATE CODE创建工程文件

使用Keil MDK 生成.Hex文件

打开项目文件找到编程位置

在main函数中定义

uint8_t hello[20]="hello windows\n";

在while语句中添加

HAL_UART_Transmit(&huart1,hello,20,100000);

烧录

点击开始编程,命令成功

串口调试工具查看

打开fire Tools

将核心板的boot0置于0

打开串口

按核心板复位建

成功发送!

三、波形分析

调试设置

Target

Debug

仿真调试

选择逻辑分析仪,添加观察对象USART1_SR

波形图

周期为92微秒

参考资料

/isyuuun/article/details/121042146

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。