找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

帖子
查看: 6428|回復(fù): 18
打印 上一主題 下一主題
收起左側(cè)

單片機(jī)定時(shí)器和中斷不夠用怎么辦?

  [復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:463139 發(fā)表于 2019-5-26 05:54 來(lái)自手機(jī) | 只看該作者 |只看大圖 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
大佬幫我出出主意吧
我芯片用的是stc89c52RC單片機(jī) 問(wèn):T0用于外部計(jì)數(shù)中斷每1s,T1用于10ms的定時(shí)中斷數(shù)碼管刷新,現(xiàn)在還需要wifi通信,那么需要波特率發(fā)生器和定時(shí)中斷,但是定時(shí)器只剩下T2了該怎么辦?還有51的波特率發(fā)生器默認(rèn)是T1,我知道是可以改的,就是想再確認(rèn)下。資源不夠用我該怎么變通?
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:530392 發(fā)表于 2019-5-26 10:17 | 只看該作者
用中斷查詢的方法,不過(guò)這個(gè)需要另加驅(qū)動(dòng),直接連肯定是不行的(我試過(guò),當(dāng)時(shí)搞了一晚上沒(méi)搞出來(lái),血的教訓(xùn),一定要加驅(qū)動(dòng)!)
回復(fù)

使用道具 舉報(bào)

板凳
ID:94031 發(fā)表于 2019-5-26 10:28 | 只看該作者
把波特率發(fā)生器用T2,騰出T1干別的用。
回復(fù)

使用道具 舉報(bào)

地板
ID:213173 發(fā)表于 2019-5-26 11:17 | 只看該作者
如果對(duì)外部計(jì)數(shù)脈沖頻率不是很高不必非得用T0外部計(jì)數(shù)中斷,隨便用哪個(gè)IO口,在主函數(shù)中查詢即可。數(shù)碼管動(dòng)態(tài)刷新也不必非得用定時(shí)器精確定時(shí),只要主循環(huán)周期基本穩(wěn)定也可以用計(jì)數(shù)法計(jì)時(shí)刷新數(shù)碼管。
回復(fù)

使用道具 舉報(bào)

5#
ID:56665 發(fā)表于 2019-5-26 11:24 | 只看該作者
一個(gè)定時(shí)中斷產(chǎn)生N個(gè)軟件定時(shí)器,用這個(gè)辦法試試。
回復(fù)

使用道具 舉報(bào)

6#
ID:160500 發(fā)表于 2019-5-26 11:32 | 只看該作者
根據(jù)自己的需要,把不是必須中斷和使用定時(shí)器的用軟件模擬,必須用中斷的做好優(yōu)先級(jí),相同優(yōu)先級(jí)的通過(guò)一個(gè)與門(mén)接到int端,中斷程序里判斷是哪個(gè)外設(shè)請(qǐng)求的中斷,做相應(yīng)處理。定時(shí)器只能針對(duì)一個(gè)事件計(jì)數(shù)或定時(shí),軟件必須針對(duì)情況作出判斷和處理,實(shí)在不能繞開(kāi),就換芯片或加外部擴(kuò)展
回復(fù)

使用道具 舉報(bào)

7#
ID:490330 發(fā)表于 2019-5-26 11:57 | 只看該作者
其實(shí)可以用兩個(gè)單片機(jī)的。。如果項(xiàng)目允許你可以試試
回復(fù)

使用道具 舉報(bào)

8#
ID:511890 發(fā)表于 2019-5-26 16:44 | 只看該作者
中斷可以復(fù)用呀。比如單倍的中斷處理通訊,雙倍的中斷處理數(shù)碼管刷新。只需加一個(gè)全局變量和一個(gè)if語(yǔ)句罷了。還有外部中斷也可以考慮。
回復(fù)

使用道具 舉報(bào)

9#
ID:530034 發(fā)表于 2019-5-26 18:09 | 只看該作者
不必非得用T0外部計(jì)數(shù)中斷,隨便用哪個(gè)IO口,在主函數(shù)中查詢即可。數(shù)碼管動(dòng)態(tài)刷新也不必非得用定時(shí)器精確定時(shí),只要主循環(huán)周期基本穩(wěn)定也可以用計(jì)數(shù)法計(jì)時(shí)刷新數(shù)碼管。
回復(fù)

使用道具 舉報(bào)

10#
ID:530034 發(fā)表于 2019-5-26 18:11 | 只看該作者
用兩個(gè)單片機(jī)  就行了
回復(fù)

使用道具 舉報(bào)

11#
ID:45330 發(fā)表于 2019-5-26 20:33 | 只看該作者
能做10ms定時(shí),100個(gè)10ms就是1s了
回復(fù)

使用道具 舉報(bào)

12#
ID:52944 發(fā)表于 2019-5-27 08:40 | 只看該作者
單片機(jī)外設(shè)不夠,換其它單片機(jī)啊
回復(fù)

使用道具 舉報(bào)

13#
ID:714012 發(fā)表于 2020-5-25 17:53 | 只看該作者
13856449865 發(fā)表于 2019-5-26 10:17
用中斷查詢的方法,不過(guò)這個(gè)需要另加驅(qū)動(dòng),直接連肯定是不行的(我試過(guò),當(dāng)時(shí)搞了一晚上沒(méi)搞出來(lái),血的教訓(xùn) ...

另加驅(qū)動(dòng)什么意思,要是用Proteus仿真直接按照這個(gè)圖不可以?
回復(fù)

使用道具 舉報(bào)

14#
ID:401564 發(fā)表于 2020-5-26 09:11 | 只看該作者
難道數(shù)碼管中斷不能用T2,一定要用T1嗎?
回復(fù)

使用道具 舉報(bào)

15#
ID:319023 發(fā)表于 2020-5-26 10:43 | 只看該作者
一個(gè)定時(shí)器可以用代碼處理到N個(gè)軟件定時(shí)器。 或者換功能強(qiáng)大的單片機(jī)添加單片機(jī)個(gè)數(shù)。  
回復(fù)

使用道具 舉報(bào)

16#
ID:170800 發(fā)表于 2023-11-2 15:50 | 只看該作者
初學(xué)入門(mén),但我想思路可以有:統(tǒng)一各定時(shí)需求初值基準(zhǔn)THL0H、TH0L,兩個(gè)定時(shí)需求都需要打開(kāi)計(jì)時(shí)器TR0=1;然后據(jù)不同的觸發(fā)條件打開(kāi)其相應(yīng)計(jì)數(shù)開(kāi)關(guān),中斷計(jì)數(shù)夠后,由觸發(fā)條件程序進(jìn)行要處理,并復(fù)零;
回復(fù)

使用道具 舉報(bào)

17#
ID:195496 發(fā)表于 2023-11-3 22:30 | 只看該作者
51速度太慢了,你這多個(gè)任務(wù)不如早點(diǎn)換上別的單片機(jī)
回復(fù)

使用道具 舉報(bào)

18#
ID:517951 發(fā)表于 2023-11-4 07:22 | 只看該作者
T0用于外部計(jì)數(shù)中斷每1s,T1用于10ms的定時(shí)中斷數(shù)碼管刷新.   
這兩個(gè)功能可以合并為用一個(gè)T0或T1來(lái)完成.   多想想辦法, 辦法總比困難多.
回復(fù)

使用道具 舉報(bào)

19#
ID:382454 發(fā)表于 2023-11-4 14:21 | 只看該作者
兩個(gè)定時(shí)器夠多了,可以用一個(gè)定時(shí)器做成時(shí)基,
如果你的要求真不達(dá)不到,可以選用高級(jí)點(diǎn)的單片機(jī),STC官方大把。
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表