请教一个stm32程序:我写了一个按键控制LED灯翻转,调试成功的程序如下:

请教一个stm32程序:我写了一个按键控制LED灯翻转,调试成功的程序如下:,第1张

有问题的那个程序

u8 ReadValue=GPIO_ReadInputDataBit(GPIOB,GPIO_Pin_10);

只在上面那条指令采集了一次按键数据。

等到执行到 while(!ReadValue);//等待按键被放开 这条指令时

数据仍然是上次采集到的那个值代表按键按下,(!ReadValue)这个值永远成立,所以无法代表按键断开。所以程序一直卡死在这条指令上。如果要通过就必须在判据里重新读取按键状态,像正确的程序那样用这样的指令

while(!GPIO_ReadInputDataBit(GPIOB,GPIO_Pin_10));//等待按键被放开

另外因为你只读取了一次按键状态,所以下面那么多一堆软件消除抖动的程序白写了

综上,正确的程序在每个判断的时刻都要重新读取下按键状态。

主要材料:电动机,发光二极管,锁存器(74HC573),单片机(89s51),红外发射管,红外接收管,电池。

时钟显示原理:

电动机带动焊有一排LED的电路板旋转,单片机通过红外管测得电路板转一圈的时间,然后将时间分割,在每个分割点让不同的发光二极管显示,利用人眼视觉暂留,看上去就像一个时钟。

以上就是关于请教一个stm32程序:我写了一个按键控制LED灯翻转,调试成功的程序如下:全部的内容,包括:请教一个stm32程序:我写了一个按键控制LED灯翻转,调试成功的程序如下:、做旋转LED都需要什么东西、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/10212180.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-06
下一篇 2023-05-06

发表评论

登录后才能评论

评论列表(0条)

保存