用cubemx完成初始化过程,采用HAL库编程实现,在Keil下用软件仿真运行上面代码,并用虚拟逻辑分析仪观察 对应管脚上的输出波形(高低电平转换)

重庆交通大学信息科学与工程学院

《嵌入式系统基础A》课程

作业报告(第四周)

班 级: 物联网工程2002

姓名-学号 : 吴泽霖-632007060217

实验项目名称: 用cubemx完成初始化过程,采用HAL库编程实现。

实验项目性质: 设计性

实验所属课程: 《嵌入式系统基础》

实验室(中心): 南岸校区语音大楼

指 导 教 师 : 娄路

完成时间: 2022 10 13


一、实验内容和任务

用cubemx完成初始化过程,采用HAL库编程实现。

二、实验要求

1. 分组要求:每个学生独立完成,即1人1组。

2. 程序及报告文档要求:具有较好的可读性,如叙述准确、标注明确、截图清晰等。

3.项目代码上传github,同时把项目完整打包为zip文件,与实验报告(Markdown源码及PDF文件)、作业博客地址一起提交到学习通。

三. 实验过程介绍 (此处可以填博客内容)

一、安装HAL库

(1)打开安装好的STMCubeMX,点击HELP->Manage embedded software packages :
然后安装hal库
请添加图片描述

二.新建项目

回到STMCubeMX的主界面,创建新项目:
请添加图片描述在part name里选择自己的芯片,点击信息栏中的具体芯片信息选中,点击start project:

在这里插入图片描述点击system core,进入SYS,在debug下选择serial wire:

请添加图片描述配置时钟,进入上面的rcc,有两个时钟,一个是hse和lse,我们要用是GPIO接口,而这些接口都在APB2里:
请添加图片描述接下来观察时钟架构,APB2总线的时钟由hse控制,同时在这个界面得把PLLCLK右边选上:请添加图片描述将hse那里设为Crystal/Ceramic Resonator请添加图片描述接下来就是点击相应的引脚设置输出寄存器了,就是output那一项,一共选了三个,是PA4,PB9,PC15:请添加图片描述点击project manager,配置好自己的路径和项目名,然后IDE那项改为MDK-ARM:请添加图片描述进入 code generate界面,选择生成初始化.c/.h文件,后面点击generate code,选择open project,然后就到KEIL5了:

请添加图片描述

三、打开.uvprojx文件

将原主函数处覆盖图中代码
在这里插入图片描述电路连接

根据设计的程序连接电路:
对于USB转TTL模块和stm32f103c8t6连接:
GND — GND
3v3 — 3v3
TXD — A10
RXD — A9

总电路:
红——B9
绿——C15
黄——A4

烧录运行

请添加图片描述

四、观察GPIO端口的输出波形

Target界面中,选择跟正确的晶振大小,我使用的是8MHz的外部晶振。这个选项在软件仿真中起到很重要的作用,如果选择错误,那么波形一定是错误的,因为时间不准确。Debug页的设置:

请添加图片描述选择逻辑分析仪:请添加图片描述

请添加图片描述

观察波形请添加图片描述
引脚为低电平的灯亮,高电平的灯不亮,高低电平转换周期(LED闪烁周期)为1s左右。

三、总结

本次实验后能熟练安装 stm32CubeMX,用cubemx完成初始化过程,采用HAL库编程实现,并在Keil下用软件仿真运行上面代码,并用虚拟逻辑分析仪观察 对应管脚上的输出波形。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值