STM32—LED单灯闪烁之软件延时

STM32—LED单灯闪烁之软件延时

任务描述

要求通过单片机PC0引脚控制LED0以1秒为周期闪烁

软件设计

使用STM32CubeIDE编写STM32单片机C程序
1.依次点击File、New、STM32Project,新建工程。
在这里插入图片描述
2.在型号选择界面输入搜索单片机型号,此次实验选择“STM32F103R6”,选择"LQPF64"选项,然后点击下一步。
在这里插入图片描述
3.取消选中“Use default location”(使用默认位置)复选框,设定新工程名称及其所在路径,单击“Finish”(完成)按钮进入STM32单片机参数图形化配置界面。
在这里插入图片描述
4.进入如下界面
在这里插入图片描述
单击芯片模型图的引脚PC0,将其设定为“GPIO_Output”(GPIO输出)模式
在这里插入图片描述
设置完成后的界面
在这里插入图片描述
5.在STM32CubeIDE 工具栏中单击(元器件设定工具代码生成)按钮,一键自动初始化代码。
在这里插入图片描述
6.代码生成完毕后,打开STM32CubeIDE左侧目录树中的“Src”(SourceCode的缩写,源代码)文件夹,打开工程主文件 main.c,在生成代码的基础上继续编程。
在这里插入图片描述

在这里插入图片描述
代码如下:

HAL_GPIO_TogglePin(GPIOC,GPIO_PIN_0);//输入的第一条代码,翻转PC0输出状态
HAL_Delay(500);//输入的第二条代码,延时500m

值得注意的是,应尽量养成在“USER CODEBEGIN”(用户代码开始)与“USERCODE END”(用户代码结束)注释保护区之间编程的习惯,否则当人们重新进入STM32单片机参数图形化配置界面修改配置参数再重新生成代码时,注释保护区以外部分的代码会被全部自动删除。

7.生成HEX文件
打开属性对话框
在这里插入图片描述
进行设置
在这里插入图片描述
保存后回到主界面,点击生成按钮,即可在源代码编译成功后输出HEX文件
在这里插入图片描述
本项目为了简化流程,没有对单片机的振荡源进行选择,而是使用了默认的内部RC振荡器;也没有对GPIO引脚的输出模式进行选择,而是使用了默认的推挽输出模式。

Proteus仿真

1.打开Proteus8.7软件,新建工程
在这里插入图片描述
2.设置项目名称及存储位置,点击下一步,之后的均默认即可。
在这里插入图片描述
3.按照以下步骤添加元器件
在这里插入图片描述
原理图如下,需要把电阻值改为100
在这里插入图片描述
4.添加HEX文件
双击STM32F103R6
在这里插入图片描述
找到对应的HEX文件,这里存放的位置,是STM32项目的存放位置下Debug文件夹内
在这里插入图片描述
点击确定即可添加
在这里插入图片描述
5.设置电源正负极参数
在工具栏找到配置供电网
在这里插入图片描述
在电源轨配置对话框中,需要将电源正极由 5V改为 3.3V;将模拟量电源正极VDDA与模拟量电源负极 VSSA分别添加到VCC/VDD网络与GND网络中,否则单片机无法仿真。
在这里插入图片描述
在这里插入图片描述

点击运行仿真即可实现LED灯闪烁
在这里插入图片描述

  • 3
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一杯冰

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值