![]() |
發(fā)布時間: 2020-5-4 15:08
正文摘要:按下開始開關(guān)后開始倒計時,但是在倒計時的過程中無法進行搶答,單獨把搶答程序運行是可以進行搶答的,希望大佬幫忙看看 單片機源程序如下: #include<reg51.h> #define uchar unsigned char #define u ... |
黃youhui 發(fā)表于 2020-5-6 09:31 感謝大佬,已經(jīng)解決了 |
黃youhui 發(fā)表于 2020-5-4 16:41 大佬,我按照你說的改了一下,加了break后就不顯示倒計時了,有沒有具體的修改方法啊,謝謝大佬 |
你代碼寫的不好,while函數(shù)不要放到放if里面如果strart =1,不滿足if條件,那么單片機上電直接運行會在幾毫秒內(nèi)運行完main函數(shù)所有函數(shù),之后呢? if (start==0) { bit flag;//定義flag,方便跳出 while(!flag) 另外就是你的void timer()函數(shù),while(1)出不來,沒有break,或者start=1;讓代碼從函數(shù)里面出來,卡死了 while(1) { if(start==0) { while(start==0); second=5; } P0=table[second]; } |
gwy666 發(fā)表于 2020-5-5 12:13 我是想告訴你在你的倒計時函數(shù)里面卡死了,你要出來就要加break,當(dāng)你按下?lián)尨鸾ň统鰜恚覂H有在倒計時能搶答,那你就得將搶答按鈕放到倒計時函數(shù)里面,并且搶答成功或者倒計時結(jié)束時break |
Powered by 單片機教程網(wǎng)