关于STM32在使用固件库编写点亮LED灯时遇到的一个小问题

其实很早之前就会点灯了,但是这次编程主要是为了学习SysTick(系统滴答定时器)中断,在测试通过SysTick中断编写的Delay函数时想只观察LED灯1的亮灭情况,然后直接把LED2的点灯程序(包括置位和复位的函数)全部注释了,然后程序一烧进去发现LED2常亮,一下子给我整懵了,后来查了相关资料才想起来LED是低电平有效,而配置函数中初始化是默认置0的,所以初始化后如果不执行任何函数,LED就应该是常亮的。

道理说的很明白了,初始化时默认置0(清0),而LED碰巧又是低电平有效,这时如果不给LED的端口位置1,那么LED就默认会点亮,如果想关闭就很简单,直接在初始化后给LED端口位置1就好了。

特此记录一下,防止忘了。还得多学学数电模电,看得懂原理图才行啊~~~

程序如下(硬件:野火STM32F103Mini):

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值