|
|
這不是消抖,這只是下降沿觸發(fā)
沒按鍵時
KEYPORT => 0xFF
ReadData => 0xFF ^ 0xFF => 0x00
Trg => 0x00 & (0x00 ^ 0x00) => 0x00 & 0x00 => 0x00
Cont => 0x00
P30 按下
KEYPORT => 0xFE
ReadData => 0xFE ^ 0xFF => 0x01
Trg => 0x01 & (0x01 ^ 0x00) => 0x01 & 0x01 => 0x01 (P30下降沿觸發(fā))
Cont => 0x01
P30 繼續(xù)按下
KEYPORT => 0xFE
ReadData => 0xFE ^ 0xFF => 0x01
Trg => 0x01 & (0x01 ^ 0x01) => 0x01 & 0x00 => 0x00
Cont => 0x01
所以放在whil(1)是沒有消抖效果的
必需以固定的時間(如10ms)來掃描才可以消抖 |
|