IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 嵌入式 -> 【嵌入式系统开发11】串口通讯“小试牛刀”——完成一个STM32的USART串口通讯程序 -> 正文阅读

[嵌入式]【嵌入式系统开发11】串口通讯“小试牛刀”——完成一个STM32的USART串口通讯程序

本文目的是主要介绍通过STM32F103C8T6完成一个STM32的USART串口通讯程序,在没有示波器条件下,使用Keil的软件仿真逻辑分析仪功能观察管脚的时序波形。


前言

※ stm32CubeMX,配合Keil,分别尝试使用寄存器地址方式(汇编或C,不限) 和HAL库进行点亮流水灯,可参考博主的博客:https://blog.csdn.net/qq_52199251/article/details/127274537
※ 本文主要讲解如何完成一个STM32的USART串口通讯程序;在没有示波器条件下,使用Keil的软件仿真逻辑分析仪功能观察管脚的时序波形。

(一)需求分析

※ 完成一个STM32的USART串口通讯程序(查询方式即可,暂不要求采用中断方式),要求:
1)设置波特率为115200,1位停止位,无校验位;
2)STM32系统给上位机(win10)连续发送“hello windows!”。win10采用“串口助手”工具接收。
※ 在没有示波器条件下,可以使用Keil的软件仿真逻辑分析仪功能观察管脚的时序波形,更方便动态跟踪调试和定位代码故障点。 请用此功能观察第1题中3个GPIO端口的输出波形,和第2题中串口输出波形,并分析时序状态正确与否,高低电平转换周期(LED闪烁周期)实际为多少。

(二)环境预置

1.硬件工具

STM32F103C8T6 , USB转TTL,面包板 ,还有部分 杜邦线
● 当然还有必要的PC端以及相应的驱动配置。
请添加图片描述

2.软件配置

2.1 STM32cubeMX

STM32CubeMX 是被广泛使用的。它集成了芯片选型、引脚分配和功能配置,中间件配置,时钟配置,初始代码和项目的功能。其中 STM32CubeMX STM32Cubeprogrammer ,除了对所有STM32芯片系列,和所有应用的通用支持之外,还有一些对特定应用的支持,比如STM32Cube.AI就是基于STM32CubeMX的插件功能,来把训练好的模型部署到STM32上;还比如在安全固件升级和安全固件安装,即SBSFU和SFI操作里, STM32CubeProgrammer 就启动了代码加密,HSM实例化等功能。STM32支持丰富的开源和ST自主知识产权中间件,比如来自开源社区的FreeRTOS,FatFS,mbedTLS;ST自己的USB主机和设备协议栈,TouchGFX等。
在这里插入图片描述

关于STM32CubeMX介绍及安装参考博主:https://blog.csdn.net/qq_44629109/article/details/126299438

2.2 Keil

keil安装
链接:https://pan.baidu.com/s/1ttrDhv6kXgAvPiYINf9iGw
提取码:1234
通过以上链接下载mdk和注册器,点击安装mdk,根据提示自行更改软件路径和支持包路径,填写完注册信息后NEXT,等待安装。安装完成,点击Finish。
注册
链接:https://pan.baidu.com/s/1T11pBKpD6xc-cNmXBskcaw
提取码:1234
支持包安装
链接:https://pan.baidu.com/s/1a7UDSVeLC4ktHNN9lV9oIA
提取码:1234
点击运行下载的支持包,NEXT开始安装,安装完成,点击Finish。


(三)工程创建

1.串口通讯工程新创

● 点击ACCESS TO MCU SELECTOR在这里插入图片描述
● 找到自己所用的芯片型号,并进行建立。
在这里插入图片描述

2.工程参数配置

● Mode选择异步通信(Asynchronous)。
在这里插入图片描述
●波特率为115200,1位停止位,无校验位(这里不需要改,默认就是这样)。
在这里插入图片描述
在这里插入图片描述

3.配置项目设置

在这里插入图片描述
最后生成项目即可。
在这里插入图片描述


(四)Keil编译程序以及Hex文件的生成

1.新建工程

● 用keil打开刚刚在CubeMX生成的项目文件。
在这里插入图片描述

2.代码编写

● 在main.c文件中补充代码。
.在main.c中定义STM32需要给上位机发送的消息

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

在这里插入图片描述
在main.c中定义一个延时函数,来使设置发送的时间间隔:

void  Delay_wxc( volatile  unsigned  int  t)
{
     unsigned  int  i;
     while(t--)
         for (i=0;i<800;i++);
}

在这里插入图片描述
.在while循环中调用查询,并调用延时函数

 while (1)
  {
		
			HAL_UART_Transmit(&huart1,hello,20,100000);
			Delay_wxc(3500); //这里每个人电脑不一样发送的间隔时延需要自己调整尝试
    /* USER CODE END WHILE */

    /* USER CODE BEGIN 3 */
  }

在这里插入图片描述

3.编译文件

在这里插入图片描述
在这里插入图片描述


(五)烧录硬件实现

1.打开FlyMcu

● 编译发现没有报错,进行烧录实现。
在这里插入图片描述

2.开发板boot0置1,boot1置0

● 这里需要对STM32F103C8T6进行按键预置。
请添加图片描述

3.开发板boot0和boot1都置0

● 按下复位监控,并且打开串口助手,查看环境是否配置正确。
在这里插入图片描述

4.实现效果

最总我们实现了非常好的效果,成功实现了接收信号
请添加图片描述


(六)虚拟逻辑分析仪仿真观察

1.前置设备

● 首先打开魔法棒,进行修改参数。
在这里插入图片描述
● 修改一下相应参数。
在这里插入图片描述
● 记得打开Keil自带的仿真模拟器。
在这里插入图片描述
在这里插入图片描述

2.进入DEBUG观察

● 点击Setup进行修改相应参数。
在这里插入图片描述● 设置为bit流
在这里插入图片描述

3.观察波形并总结

●可以得到如下波形。
请添加图片描述

●放大后进行观看,高电平持续实际时间为6us:
在这里插入图片描述
●同理可以观察低电平持续时间为86us:
在这里插入图片描述


(七)总结

本文介绍了如何在嵌入式系中通过STM32F103C8T6完成一个STM32的USART串口通讯程序,在没有示波器条件下,使用Keil的软件仿真逻辑分析仪功能观察管脚的时序波形。
寄语:鹏铭
???我真的真的真的很想告诉你
???你需要的不是优秀,不是金榜题名,不是年入百万。
???而且是你和母亲相守的小幸福啊!!!!!


(八)参考文献

https://blog.csdn.net/zhoushuaiyxlmwan/article/details/127327982
https://blog.csdn.net/qq_53112972/article/details/127332400

  嵌入式 最新文章
基于高精度单片机开发红外测温仪方案
89C51单片机与DAC0832
基于51单片机宠物自动投料喂食器控制系统仿
《痞子衡嵌入式半月刊》 第 68 期
多思计组实验实验七 简单模型机实验
CSC7720
启明智显分享| ESP32学习笔记参考--PWM(脉冲
STM32初探
STM32 总结
【STM32】CubeMX例程四---定时器中断(附工
上一篇文章      下一篇文章      查看所有文章
加:2022-10-22 21:31:28  更:2022-10-22 21:33:36 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年12日历 -2024/12/28 2:44:01-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码
数据统计