熱門: 51單片機(jī) | 24小時(shí)必答區(qū) | 單片機(jī)教程 | 單片機(jī)DIY制作 | STM32 | Cortex M3 | 模數(shù)電子 | 電子DIY制作 | 音響/功放 | 拆機(jī)樂園 | Arduino | 嵌入式OS | 程序設(shè)計(jì)
![]() |
找到問題了,當(dāng)按鍵按下時(shí),定時(shí)器還在計(jì)時(shí),如果延時(shí)使pp計(jì)數(shù)值超過20,cjne a,#20,rel無效,需要等到pp溢出才能繼續(xù)計(jì)數(shù) |
有一個(gè)思路,把按鍵判斷放到定時(shí)到1秒pp清零之后,這樣不會(huì)卡 |
顯示器是掃描顯示的吧。 這應(yīng)要求每間隔一個(gè)時(shí)間T(如5ms),就要刷新一次,否則顯示就不正常了,是吧。 當(dāng)你按鍵時(shí),是不是掃描就顧不到了,程序【停留】鍵處理上了,顯示自然就不正常了。 仔細(xì)想想是不是這樣的呢?當(dāng)你DELAY的時(shí)間內(nèi),掃描是不是顧不到了。 |
當(dāng)按鍵按下時(shí)程序死循環(huán),影響到其他時(shí)序了。每個(gè)按鍵設(shè)立一個(gè)內(nèi)存,當(dāng)程序確認(rèn)按鍵按下時(shí),該內(nèi)存為0 則時(shí)間加1,然后該內(nèi)存設(shè)置為1 。當(dāng)按鍵松開時(shí)內(nèi)存設(shè)置為0。就是說只有按鍵按下,該內(nèi)存為0的情況下時(shí)間加1。也可以用位尋址區(qū) |
Powered by 單片機(jī)教程網(wǎng)