1
完善资料让更多小伙伴认识你,还能领取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来说更为简单,也不用去找串口对应接口的脚本,很是便利,使用步骤也不复杂,但其中的一些操作还不熟练,应当多加操练。 在烧录或者运行时可能会出现一些小问题,烧录不成功多看看板子的连接是否正确,连接是否有接触不良的情况,有问题及时百度,或者寻求朋友帮助,总能解决的。 |
|
|
|
只有小组成员才能发言,加入小组>>
3318 浏览 9 评论
2995 浏览 16 评论
3494 浏览 1 评论
9063 浏览 16 评论
4088 浏览 18 评论
1182浏览 3评论
608浏览 2评论
const uint16_t Tab[10]={0}; const uint16_t *p; p = Tab;//报错是怎么回事?
600浏览 2评论
用NUC131单片机UART3作为打印口,但printf没有输出东西是什么原因?
2335浏览 2评论
NUC980DK61YC启动随机性出现Err-DDR是为什么?
1896浏览 2评论
小黑屋| 手机版| Archiver| 德赢Vwin官网 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-24 21:02 , Processed in 1.332797 second(s), Total 79, Slave 60 queries .
Powered by 德赢Vwin官网 网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
德赢Vwin官网 观察
版权所有 © 湖南华秋数字科技有限公司
德赢Vwin官网 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号