完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
课堂操作:(建议先看一眼第4步) 1、 写入某个引脚的电平状态: HAL_GPIO_WritePin() 把这行复制粘贴至main.c 并将最后一个参数的RESET改成SET 如下 //4个灯的: HAL_GPIO_WritePin(GPIOA, LED1_Pin|LED2_Pin|LED3_Pin|LED4_Pin, GPIO_PIN_RESET); 连接单片机 按RESET键 小灯在按下时熄灭 松手是重新亮起 2、 翻转某个引脚的电平状态: HAL_GPIO_TogglePin() 复制粘贴到main并改动 //4个灯的照LED1的搞4遍 3、 添加延迟函数至循环while(1)内,实现小灯闪烁 注:记得声明函数 4、 在STM32中把LED2 3 4都加进去(可能要把之前的代码保存or复制下来备份一下,或者直接一开始就按4个灯的配置) 5、 用delay函数实现依次闪动(加几个delay就行,可跳过) 6、 用delay函数调节闪动频率使得4个灯的亮度不同 (delay的参数可根据实际情况调节) 7、 让灯实现 从亮到暗 再从暗到亮 的变化 保持一定的周期:while(1)外设置周期时间 用自带函数HAL_Delay(int t); 8、配置wake up键 9、按wake up键,LED1亮;松手灯灭 10、按键防抖+依次显示0-15的二进制 11、加入中断 勾上Enabled //允许中断 点击GENERATE CODE //生成代码 将防抖部分代码整合成函数写进 gpio.c 在 gpio.h 里声明函数 将该函数加入 外部中断服务函数 的函数定义中 未完待续... |
|
|
|
只有小组成员才能发言,加入小组>>
3280 浏览 9 评论
2958 浏览 16 评论
3460 浏览 1 评论
9004 浏览 16 评论
4052 浏览 18 评论
1115浏览 3评论
573浏览 2评论
const uint16_t Tab[10]={0}; const uint16_t *p; p = Tab;//报错是怎么回事?
571浏览 2评论
用NUC131单片机UART3作为打印口,但printf没有输出东西是什么原因?
2303浏览 2评论
NUC980DK61YC启动随机性出现Err-DDR是为什么?
1860浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-25 18:11 , Processed in 1.316737 second(s), Total 80, Slave 60 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号