標(biāo)題:
關(guān)于單片機(jī)獨立按鍵程序調(diào)試,不加消抖會導(dǎo)致結(jié)果不正確嗎?
[打印本頁]
作者:
_是淮
時間:
2019-4-14 21:40
標(biāo)題:
關(guān)于單片機(jī)獨立按鍵程序調(diào)試,不加消抖會導(dǎo)致結(jié)果不正確嗎?
程序如圖:功能:按下獨立按鍵,led發(fā)光
現(xiàn)象:按下后led不亮
這里提出的問題有:
消抖不添加會導(dǎo)致實驗結(jié)果顯示不出來嗎?
主函數(shù)的P1和P3的定義是全局效果嗎?是因為這個全局定義導(dǎo)致的電視結(jié)果嗎?
led未加延時會不會導(dǎo)致看不到這個實驗現(xiàn)象?如果長按按鍵是否可以選擇不用延時使led常亮?
在這兒感謝各位大佬
程序如下方便各位調(diào)試:
#include <reg51.h>
#define uint unsigned int
#define uchar unsigned char
sbit d1=P1^1;
sbit dula=P2^6;
sbit wela=P2^7;
sbit key1=P3^4;
void main()
{
P3=0xFF;
P1=0x00;
while(1)
{
if(key1==0)
d1=1;
else
d1=0;
}
}
QQ圖片20190414212423.png
(13.19 KB, 下載次數(shù): 17)
下載附件
2019-4-14 21:29 上傳
作者:
xuyaqi
時間:
2019-4-15 10:09
首先, 消抖不添加不會導(dǎo)致實驗結(jié)果顯示不出來。再者可以確定,長按按鍵可以選擇不用延時使led常亮。led不亮不是程序原因,要找別的原因。
作者:
15398151926
時間:
2019-4-15 15:09
消抖不添加不會導(dǎo)致實驗結(jié)果顯示不出來
作者:
s'g's'y'f
時間:
2019-4-16 13:00
消抖不添加不會導(dǎo)致實驗結(jié)果顯示不出來
作者:
Y_G_G
時間:
2019-4-16 15:53
你這個程序加不加都是一樣,不管是仿真還是實際電路,結(jié)果都會是你想要的樣子
抖動只是在接下按鍵到按鍵完全接觸這一段時間之內(nèi)產(chǎn)生的概率比較大,也不一定會有抖動的,大概也就是幾十mS左右.
你這個程序只是按下去之后就不亮而已,接的過程中可能抖動那么幾十下,但肉眼卻不出來,所以,結(jié)果肯定就是按下就滅燈,放開就亮燈
但如果是:按下就加1,中間沒有去抖動的,再按下又加1的話,結(jié)果就不是你想要的樣子了
作者:
行走在消逝中1
時間:
2019-4-24 18:45
難道不應(yīng)該是d1=0才亮嗎?來自小白的疑問
歡迎光臨 (http://www.torrancerestoration.com/bbs/)
Powered by Discuz! X3.1