標(biāo)題: 新人,想請教各位一個關(guān)于單片機(jī)定時器中斷的問題 [打印本頁]

作者: 日本人孫笑川    時間: 2019-2-1 22:47
標(biāo)題: 新人,想請教各位一個關(guān)于單片機(jī)定時器中斷的問題
目的是實現(xiàn)1s間隔的led閃爍 第一張圖是標(biāo)準(zhǔn)程序 第二張里我把i作為全局變量提到大循環(huán)中 為什么就無法實現(xiàn)(燈一直亮)

11.png (21.78 KB, 下載次數(shù): 84)

11.png

22.png (15.09 KB, 下載次數(shù): 83)

22.png

作者: xuyaqi    時間: 2019-2-2 07:41
非自動重裝定時器,中斷后要加一句TR0=1;才會繼續(xù)定時。
作者: HC6800-ES-V2.0    時間: 2019-2-2 08:47
第一:以后直接貼程序,不要貼這個圖,如果要修改,很不方便,可能就沒人理你了
第二:你的第二個程序,要把time()函數(shù)放在主循環(huán)while(1)之前啊,在主循環(huán)內(nèi),每次都重新設(shè)置定時器,當(dāng)然就是你現(xiàn)在的結(jié)果哦。
第三:if (i==1000)這句,最好把條件改為i>=1000
作者: nb5858    時間: 2019-2-2 09:54
兩位老兄對程序都很精通;
作者: suuy79    時間: 2019-2-2 15:45
主要是沒有自動重載造成的!兩個辦法:
1、設(shè)置自動重載
2、中斷內(nèi)再加載一次初值
作者: #include51.h    時間: 2019-2-2 18:04
將代碼上上來,大家調(diào)著看看,光一個圖片說明不了什么.如果你這么小器就沒有去幫的了你
作者: 日本人孫笑川    時間: 2019-2-2 23:03
#include51.h 發(fā)表于 2019-2-2 18:04
將代碼上上來,大家調(diào)著看看,光一個圖片說明不了什么.如果你這么小器就沒有去幫的了你

新人不懂規(guī)矩 下次會注意的 問題已經(jīng)解決啦
作者: 日本人孫笑川    時間: 2019-2-2 23:04
HC6800-ES-V2.0 發(fā)表于 2019-2-2 08:47
第一:以后直接貼程序,不要貼這個圖,如果要修改,很不方便,可能就沒人理你了
第二:你的第二個程序,要 ...

好的 新人不懂規(guī)矩 下次會注意的 謝謝老哥 問題已經(jīng)解決了
作者: shuisheng60    時間: 2019-2-3 20:36
同規(guī)矩沒什么關(guān)系,只是別人拿到你代碼能快速調(diào)試,早些找出問題
作者: 還有誰?    時間: 2019-2-10 15:14
是啊,相互進(jìn)步,不存在什么
作者: lgrandstar    時間: 2019-2-10 21:03
如果說你定時器的初始化函數(shù)放在while()里,那么你就一直在進(jìn)行初始化,定時器不會走時的
作者: lgrandstar    時間: 2019-2-10 21:04
你的定時器在while里一直初始化,導(dǎo)致定時器無法正常走時,它的預(yù)裝載寄存器數(shù)一直沒變




歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1