想問很簡單關於STC 51微控制器中斷的小問題以下程式多少秒進入中斷服務程式 如果我想改成10毫秒進入

時間 2021-08-31 06:05:46

1樓:

教你一招,不同晶振下都方便

#include

#define cpu_fosc 11059200ul //輸入晶振頻率hz,程式自動適應5mhz~21mhz

#define time 10000 //定時時間10000us,程式自動適應100us~20ms

thh = ( (65536- time*(cpu_fosc/100)/120000 )/256 ); //定時器高8位自動基準

tll = ( (65536- time*(cpu_fosc/100)/120000 )%256 ); //定時器低8位自動基準

unsigned char i;

main()

void time0() interrupt 1 //定時器0

2樓:匿名使用者

當晶振使用12mhz時,th0=0,tl0=0的設定下,需要65536us進入中斷。需要10ms進入中斷的話這樣設定th0 = d8;tl0 = f0;。

3樓:

頂一下定時器 用t0 65535減去要定的時間就好了

4樓:溫馨鬼腳七

需要10ms中斷的話,可以這樣賦初值th0=(65536-10000)/256,tl0=(65536-10000)%256 ,簡單明瞭啊,其中10000就是10000us,就是10ms

關於51微控制器的中斷問題,51微控制器外部中斷0的問題

優先中斷,就是在執行乙個中斷的時候,又來了乙個中斷 如果新來的中斷,其優先順序高於正在執行的中斷,那麼就會暫停現在的中斷而去執行新來的中斷,等這個新中斷執行完之後再會回去繼續執行剛才那個沒執行完也就是那個被打斷的中斷 如果新來的中斷,其優先順序不如正在執行的中斷的優先順序高,那麼程式會繼續執行這個中...

我想從事微控制器類的工作,我想問在51微控制器和ARM深入以後

看你目標方向。你要是只考慮 wince 做系統,那麼不需要學 linux unix 鐵定不用學的。微控制器沒有作業系統,也不需要學 linux 只要你的微控制器開發 windows 下面可以實現就不需要。但問題是,你想把自己的能力限制死麼?linux 現在是免費而且開源的。而 wince 是收費的,...

跪求哪個高手給個stc89c51微控制器的溫度能在數碼管上顯示,然後數碼管顯示20度就會報警的程式

tmplequ29h tmphequ28h flag1equ38h datainbitp3.7 org00h ljmpmain1 org03h ljmpzint0 org13h ljmpzint1 org30h main1 setbit0 setbea setbex0 setbit1 setbex1...