库函数控制GPIO如何实现LED闪烁?
时间:10-02
整理:3721RD
点击:
我以前只玩过51,现在通过《STM32自学笔记》来学习STM32。
我想把原来书上的点亮LED的例程改成控制LED闪烁的,用While循环来控制,
关键代码如下:
- int main(void)
- {
- vu32 n = 2000000;
- RCC_Configuration();
- GPIO_Configuration();
- while(1)
- {
- GPIO_SetBits(GPIOA,GPIO_Pin_2);
- Delay(n);
- GPIO_ResetBits(GPIOA,GPIO_Pin_2);
- Delay(n);
- }
- }
因为我初次接触STM32,对这样控制IO口的方式有点不了解,还是用以前51的思路在做,所以不知道具体原因是如何,希望能得到坛子里面的大神解答一下。
好吧,我承认我蠢了。竟然那么大一个问题没看出来。
因为偷懒Delay(n)是用while((n)--)来实现的,
N第一次经过Delay减到0了之后自然不能再用,所以每次延时玩重新赋上N的值就好了。
看来延时程序偷懒不得啊。