完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
今天讲解STM32的GPIO的使用,点亮一个LED灯。
打开STM32Cube软件新建一个工程File-New Project 第一步,先搜索一下自己开发板或者项目使用的单片机型号和封装,第二步,点击下自己所使用的型号,自动跳转到芯片配置界面。 选择成功后,芯片配置界面如下,如果没有安装所使用的芯片库的支持包,可以先安装一下,上一篇文章介绍了如何安装软件里面有芯片支持包下载,这里就不讲了。 打开硬件原理图,找到LED灯连接的IO口。 将单片机GPIO,PB5和PE5引脚配置为输出,找到单片机所对应的引脚直接左键点击,就会弹出来配置对话框,选择GPIO_Output。 芯片配置界面,鼠标 滚轮可以操作界面的放大和缩小,按住滚轮键拖动实现界面的移动。 然后找到GPIO选项,点击设置PB5引脚参数,第三步,给PB5引脚起一个标签名LED0。 默认输出电平为高High,设置低Low的话,一上电,单片机的LED0就亮了。这里不需要设置上下拉电阻,就没有设置,引脚输出频率没有那么高要求,设置为低Low就可以了。 PE5引脚的配置如上相同。 设置下单片机时钟,高速时钟我选择的是外部时钟,低速时钟默认,如果没有要求,默认就好。 将时钟树的输入晶振频率设置单片机外部的实际晶振大小,我这里用的是8.0M晶振,其他地方有需要可以自行设置。 设置工程文件名、保存路径、编译器IDE版本。 设置代码生成器配置。 打开生成好的用户代码,初始化都已经自动生成好了,方框内部是填写自己的代码。添加用户代码必须写在/* USER CODE BEGIN n*/和/* USER CODE END n*/之间,如果改变Cube工程配置,重新生成代码,用户添加的代码就不会受到影响。 下面我们写一个LED闪烁的代码,实现PB5和PE5引脚轮流点亮周期0.6s我们写代码一定要/* USER CODE BEGIN n*/和/* USER CODE END n*/写,不然重新修改Cube配置后就自动给覆盖没了。 其中,HAL_Delay()函数是HAL库的延时函数,单位是1毫秒。 我们在使用CubeMX开发STM32的时候,片上外设的初始化有CubeMX生成,即while(1)之前的这些代码,我们不需要关心,也不要随便删除,除非在调试中需要进行小的改动。 到这里我们的教程就结束了,下次给大家介绍引脚如何用翻转,LED灯闪烁就不用写这么多代码了,一行就够了。 |
|
|
|
只有小组成员才能发言,加入小组>>
3278 浏览 9 评论
2951 浏览 16 评论
3455 浏览 1 评论
8984 浏览 16 评论
4045 浏览 18 评论
1097浏览 3评论
567浏览 2评论
const uint16_t Tab[10]={0}; const uint16_t *p; p = Tab;//报错是怎么回事?
564浏览 2评论
用NUC131单片机UART3作为打印口,但printf没有输出东西是什么原因?
2299浏览 2评论
NUC980DK61YC启动随机性出现Err-DDR是为什么?
1855浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-21 00:22 , Processed in 0.968129 second(s), Total 49, Slave 39 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号