欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136
標題:
怎么在一個單片機定時器添加另一個定時器?
[打印本頁]
作者:
xoxojojo
時間:
2019-7-12 09:20
標題:
怎么在一個單片機定時器添加另一個定時器?
在網上查了一些資料,發現都是在說讓兩個定時器同時工作,但是會因為優先級的不一樣,從而導致中斷程序發生的時間不一樣,所以我就想能不能在一個定時器中添加另一個定時器,或者說用一個的定時器去觸發另一個定時器?如果能的話,應該怎樣做?不能的話,又是因為什么呢?
本人接觸單片機時間不算太長,沒有系統地學習過單片機知識,所以百思不得其解,而且網上的資料也大都是單個定時器的觸發,沒有太深入的說明。
希望有哪位大神能夠幫我解答疑惑。萬分感謝。
作者:
hantu
時間:
2019-7-12 09:57
一個定時器可以分頻復用成很多個“定時器”的呀
作者:
xoxojojo
時間:
2019-7-12 10:37
hantu 發表于 2019-7-12 09:57
一個定時器可以分頻復用成很多個“定時器”的呀
是不是相當于在定時器中設置多個時間變量,并根據定定時器的溢出頻率來對這些時間變量進行賦值?
這不就相當于把定時器當做計數器來使用了么?而且在中斷程序中來對這些變量進行判斷的話,不是會同時進行么?
作者:
515321285
時間:
2019-7-12 11:01
在一個定時器中添加另一個定時器?靠定時器工作時間?
作者:
m182892
時間:
2019-7-12 11:09
一個定時器可以產生很多軟件定時器
作者:
yzwzfyz
時間:
2019-7-12 11:30
1、定時器是硬件獨立工作的,所以各計數器彼此互不相干。
2、當計數計滿時,發生溢出,產生溢出標記。這時是個關鍵點!!!描述如下:
2.1、溢出即申請中斷,正常是會被響應的,但如果中斷已被另一個高級中斷響應,且響應還在執行中(高級的進入中斷服務程序,還未RETI),則申請不會被受理,只能一直申請著,繼續等待。
2.2、溢出后計數還是由硬件控制,繼續進行的,不受影響,但是:只能從0開始向上計數,也即只能從0000向FFFFH逐一計數,通常你是想從某從數值開始起計的,如從4000H起,也就是中斷響應后將計數器重新復位成4000H,但是現在中斷不能被即時受理,于是就出問題了(不會從4000H起計)。
2.3、STC的片機考慮到了這一點,你可選擇自動重裝功能(注:標準51也有,但有限制只能8位。STC的可以是16位),當你選擇“自動重裝”時,在計數器溢出時,會被自動重裝成4000H,也就不會出問題了。自動重裝,能保證計數的起點永遠不受干擾!
2.4、如果高級中斷處理的時間太長(這在高手寫的程序中,是不會發生的,你將來也要注意這一點。),超過了你的中斷周期,很明顯,這時你的計數器又計數了一個循環,即:上個溢出中斷申請未被響應,新的中斷申請又來了,這樣你就丟失了一次中斷。如果高級中斷處理的時間更長,還會丟失更多個!
2.5、高級中斷處理完成返回退出時,你的中斷才有機會被響應,這時你計數到那里了,不知道。但中斷被延時了!只要延時不超過一個周期,影響的只是本次中斷,并不影響下一個(以脈沖為例來解釋,就是本次脈沖變寬了,下次變窄了),不過總的時間(總的N個脈沖寬度還是一定的),還是準確的。
明白這一點,就會知道:
中斷服務程序必須短,否則可能會影響其它同級或低中斷。這是編程的要點,是不是高手,一看你的中斷服務程序就知道了。
所有“卡機”都是未做好這一項工作引起的。手機也一樣,電腦也一樣。
作者:
yzwzfyz
時間:
2019-7-12 11:32
明白以上之后【在一個定時器中添加另一個定時器】就是“天真”的想法了。
作者:
yzwzfyz
時間:
2019-7-12 12:10
其實只要一個定時器就可以處理N個定時事件,方法如下:
1、設置N個寄存器R_N(或存儲器,寄存器耗時少),和N個標記位B_N。
2、每次中斷后對R_N-1,減至0時,將R_N復位成初始值(你定),并將標記位置B_N=1。
3、主程序中,查尋B_N,當B_N=1時,將其清0,并執行你要處理的事件。
記住:定時器中斷服務程序,就是只做這些寄存器計數,標記位置1的事,所以處理不需要多少時間。而要做的事件,都放在主程序中去做,不要在中斷服務程序中做!!!,中斷服務程序,只做標記!!!記住這些,你離高手就不遠了。當然也有不得矣的例外。
作者:
liuzx66
時間:
2019-7-12 13:03
在一個定時器中添加另一個定時器,軟件定時器可以添加,硬件的本來就有,不用添加。用一個定時器去觸發另一個定時器是可以的。
作者:
堂堂
時間:
2019-7-12 20:35
定時器分等級,按照等級設置就行了
作者:
lele5211314
時間:
2019-7-12 21:16
直接操作另外一個定時器就可以了
歡迎光臨 (http://m.raoushi.com/bbs/)
Powered by Discuz! X3.1