完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
|
相关推荐
1个回答
|
|
一、主要内容提示
用hal库,重做上一个LED流水灯作业,即用GPIO端口完成3只LED红绿灯的周期闪烁。 实验所需:二、STMCubeMX的使用 1. 下载依赖包 安装好STMCubeMX后,在首页点击help,下载我们需要的依赖包。 这里绿色是表示已经下载好了(因为笔主之前下载过了)。2. 创建新项目 回到主界面,创建新项目 点击System Core,进入SYS,在debug那里选择Serial Wire。 接下来就是配置时钟,进入上面的rcc,有两个时钟,一个是hse和lse,我们要用是GPIO接口,而这些接口都在APB2里; 我们将hse那里设为Crystal/Ceramic Resonator。 接下来观察时钟架构,APB2总线的时钟由hse控制,同时在这个界面得把PLLCLK右边选上: 接下来就是点击相应的引脚设置输出寄存器了,就是output那一项,一共选了三个,是PA7,PB9,PC15; 下图右边的板子上将PA7,PB9,PC15都设置成output(将你的鼠标放上去就会出现下拉选项,选择output就行),设置好后就是下图的样子; 设置还没完,点击System core里的GPIO,把点击引脚名,把输出等级改为high(其实这里不改也没什么,只是程序运行开始时初始状态不一样),mode不用改。 直接open,就会在Keil里打开。三、 代码 在上图main里面写入代码,替换原有的: SystemClock_Config();//系统时钟初始化 MX_GPIO_Init();//gpio初始化 while (1) { HAL_GPIO_WritePin(GPIOA,GPIO_PIN_7,GPIO_PIN_RESET);//PA7亮灯 HAL_Delay(500);//延时0.5s HAL_GPIO_WritePin(GPIOA,GPIO_PIN_7,GPIO_PIN_SET);//PA7熄灯 HAL_Delay(500);//延时0.5s HAL_GPIO_WritePin(GPIOB,GPIO_PIN_9,GPIO_PIN_RESET);//PB9亮灯 HAL_Delay(500);//延时0.5s HAL_GPIO_WritePin(GPIOB,GPIO_PIN_9,GPIO_PIN_SET);//PB9熄灯 HAL_Delay(500);//延时0.5s HAL_GPIO_WritePin(GPIOC,GPIO_PIN_15,GPIO_PIN_RESET);//PC15亮灯 HAL_Delay(500);//延时0.5s HAL_GPIO_WritePin(GPIOC,GPIO_PIN_15,GPIO_PIN_SET);//PC15熄灯 HAL_Delay(500);//延时0.5s } 配置生成.hex文件: 然后运行生成.hex文件: 四、 烧录 五、运行结果 运行:串口烧录要断电之后把boot0置0才能正常运行。 小小的总结 使用STMCubeMX生成代码相对于Keil来说更为简单,也不用去找串口对应接口的脚本,很是便利,使用步骤也不复杂,但其中的一些操作还不熟练,应当多加操练。 在烧录或者运行时可能会出现一些小问题,烧录不成功多看看板子的连接是否正确,连接是否有接触不良的情况,有问题及时百度,或者寻求朋友帮助,总能解决的。 |
|
|
|
只有小组成员才能发言,加入小组>>
imx6ull 和 lan8742 工作起来不正常, ping 老是丢包
2799 浏览 0 评论
3352 浏览 9 评论
3030 浏览 16 评论
3525 浏览 1 评论
9132 浏览 16 评论
1258浏览 3评论
647浏览 2评论
const uint16_t Tab[10]={0}; const uint16_t *p; p = Tab;//报错是怎么回事?
638浏览 2评论
用NUC131单片机UART3作为打印口,但printf没有输出东西是什么原因?
2386浏览 2评论
NUC980DK61YC启动随机性出现Err-DDR是为什么?
1950浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-2-2 23:09 , Processed in 1.286239 second(s), Total 77, Slave 58 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号