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

QQ登錄

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

搜索

單片機(jī)程序由于進(jìn)中斷過(guò)于頻繁導(dǎo)致主函數(shù)無(wú)法正常運(yùn)行如何解決?

查看數(shù): 2642 | 評(píng)論數(shù): 11 | 收藏 0
關(guān)燈 | 提示:支持鍵盤(pán)翻頁(yè)<-左 右->
    組圖打開(kāi)中,請(qǐng)稍候......
發(fā)布時(shí)間: 2022-12-6 21:34

正文摘要:

51單片機(jī)波形發(fā)生器程序 有沒(méi)有大佬幫忙看看這個(gè)問(wèn)題怎么解決。河枚〞r(shí)中斷來(lái)產(chǎn)生波形,通過(guò)設(shè)置定時(shí)時(shí)間來(lái)設(shè)置波形頻率,但是當(dāng)頻率到100hz后,程序由于進(jìn)中斷函數(shù)頻率過(guò)高導(dǎo)致數(shù)碼管顯示異常,到1000hz后連按鍵 ...

回復(fù)

ID:123289 發(fā)表于 2022-12-7 14:27
說(shuō)明的時(shí)序設(shè)計(jì)不合理。
事件的處理不要放在中斷服務(wù)處理程序中,放中主程序中。
中斷服務(wù)程序要盡量短,做個(gè)事件的標(biāo)記即可!
在主程序中,根據(jù)標(biāo)記處理事件。
ID:201854 發(fā)表于 2022-12-7 14:09
這種通過(guò)定時(shí)器產(chǎn)生高頻率波形輸出對(duì)于很多51單片機(jī)是搞不定的,很多51的單片機(jī)定時(shí)器中斷時(shí)間設(shè)置少于50us以下就開(kāi)始沒(méi)法勝任,你自己可以算一下最多能輸出多高的方波,像你這種最好不要用定時(shí)器而是拉到有pwm功能輸出的腳上。
ID:1043931 發(fā)表于 2022-12-7 13:30
xuyaqi 發(fā)表于 2022-12-7 09:51
有直接輸出波形不要cpu參與的單片機(jī),為什么會(huì)有越來(lái)越多高級(jí)單片機(jī),就是老單片機(jī)功能不夠用。

主要是要求用的51單片機(jī)
ID:1043931 發(fā)表于 2022-12-7 13:28
npn 發(fā)表于 2022-12-7 08:29
定時(shí)器0中斷程序處理時(shí)間,超過(guò)初值時(shí)間導(dǎo)致溢出。
溢出后TF0硬件置1,包含 intrins.h 頭文件后,中斷底部 ...

加了溢出檢測(cè)后確實(shí)溢出了

1.png (143.46 KB, 下載次數(shù): 75)

1.png

2.png (19.5 KB, 下載次數(shù): 74)

2.png
ID:77589 發(fā)表于 2022-12-7 11:59
中斷服務(wù)程序盡量短!
ID:1034262 發(fā)表于 2022-12-7 11:13
你先測(cè)出來(lái)中斷耗時(shí)多少,然后保證中斷間隔大于這個(gè)時(shí)間。
ID:384109 發(fā)表于 2022-12-7 10:05
程序結(jié)構(gòu)問(wèn)題,1khz頻率不算高,按鍵或許會(huì)反應(yīng)遲鈍,但不會(huì)沒(méi)有反應(yīng),而且需要確定1khz和定時(shí)器中斷時(shí)間的對(duì)應(yīng)關(guān)系
ID:94031 發(fā)表于 2022-12-7 09:51
有直接輸出波形不要cpu參與的單片機(jī),為什么會(huì)有越來(lái)越多高級(jí)單片機(jī),就是老單片機(jī)功能不夠用。
ID:94031 發(fā)表于 2022-12-7 09:45
有直接輸出波形不要cpu
ID:308903 發(fā)表于 2022-12-7 09:23
100hz =100次/秒 ,T = 10ms  
51假如用12M晶振,12000000次/S,T =1/12, Tcy = 12* 1/12 = 1us

一個(gè)周期64個(gè)采樣點(diǎn),就是要花10ms, 那每個(gè)采樣時(shí)間段156.25us,

似乎要加濾波電路吧

ID:57657 發(fā)表于 2022-12-7 08:29
定時(shí)器0中斷程序處理時(shí)間,超過(guò)初值時(shí)間導(dǎo)致溢出。
溢出后TF0硬件置1,包含 intrins.h 頭文件后,中斷底部加一句判斷有無(wú)溢出: if(_testbit_(TF0)) { }  溢出后if條件會(huì)成立,更換1T單片機(jī)或使用更高頻率晶振。

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

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

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