久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1952|回復: 7
打印 上一主題 下一主題
收起左側

單片機中斷函數程序調試的問題

[復制鏈接]
跳轉到指定樓層
樓主


如圖,程序里一共有兩個中斷,外部中斷0(按鍵)和定時器1中斷。初始化時讓定時器中斷級優先。本來想把定時器1中斷換成定時器0中斷的,但是出現了問題。程序無法執行了。主函數都不執行,好像一直處于終端中。連外部中斷0(按鍵)按了都沒有反應。然后沒辦法,把IP的優先級改了,改成外部中斷優先。





改過外部中斷優先以后,外部中斷是可以執行,但是一松開按鍵,主程序還是不運行,好像又在運行定時中斷了。問題在于雖然我把定時中斷1改成定時中斷0,但是我沒有設置定時器0的初始化,也沒有開通定時器0,怎么它也能產生中斷嗎?ET0=0也能產生中斷?還是沒有寫ET0 和TR0  系統默認打開了啊。請高手幫我解答一下。


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:161164 發表于 2021-12-1 10:09 | 只看該作者
你沒有設置定時器0的初始化,也沒有開通定時器0
但是你有設置定時器1的初始化和開通定時器1啊~
而且你還取消了定時器1的中斷函數
當單片機產生定時器1的中斷時
沒有中斷函數響應
沒有清零TF1
單片機就會當機了
回復

使用道具 舉報

板凳
ID:57657 發表于 2021-12-1 10:17 | 只看該作者
lkc8210 發表于 2021-12-1 10:09
你沒有設置定時器0的初始化,也沒有開通定時器0
但是你有設置定時器1的初始化和開通定時器1啊~
而且你還 ...

定時器1溢出后TF1會被硬件置1,中斷觸發后又被硬件清0,如果只開計數,不開中斷,就需要軟件清0。
中斷觸發后會跳轉到相應的向量地址,沒有 interrupt 3 的中斷入口函數就會導致程序跑飛。
回復

使用道具 舉報

地板
ID:450037 發表于 2021-12-1 13:12 | 只看該作者
lkc8210 發表于 2021-12-1 10:09
你沒有設置定時器0的初始化,也沒有開通定時器0
但是你有設置定時器1的初始化和開通定時器1啊~
而且你還 ...

哦哦,果然高手再論壇里。四個字:醍醐灌頂
回復

使用道具 舉報

5#
ID:450037 發表于 2021-12-1 13:17 | 只看該作者
npn 發表于 2021-12-1 10:17
定時器1溢出后TF1會被硬件置1,中斷觸發后又被硬件清0,如果只開計數,不開中斷,就需要軟件清0。
中斷 ...

是的,我現在知道是什么原因了。
回復

使用道具 舉報

6#
ID:450037 發表于 2021-12-1 13:31 | 只看該作者
lkc8210 發表于 2021-12-1 10:09
你沒有設置定時器0的初始化,也沒有開通定時器0
但是你有設置定時器1的初始化和開通定時器1啊~
而且你還 ...


如圖,我現在把它改成定時器2的設置,程序還是一樣跑飛了。我設置的哪里不對嗎?
開通定時器2的運行,開通中斷,優先級最優,定時器2的高低字節也設置了。還是不行,PDF關于定時器2的文檔我也截圖了,定時器2可以用作波特率發送的我沒截圖,其他都截取了,請幫我看一下哪里設置不對。
回復

使用道具 舉報

7#
ID:624769 發表于 2021-12-1 14:05 | 只看該作者
定時器2 中斷需要手動清除中斷標志,
中斷中需要加入:
TF2 = 0;

定時器2自動重載需要 設置 RCAP2L , RCAP2H 那么它就會自動重載,
所以,如果你的重裝值是要變化的話,一般需要 把下一次的T2重裝值提前寫入RCAP2L , RCAP2H 讓他自動重裝,如果你要每次直接改寫 TL2 TH2 的話, 需要先 TR2 = 0, 然后 改寫TL2 TH2 之后再 TR2 = 1,
另外, TR2 必須獨立驅動(TR2 = 1), 不能通過 T2CON |= 0x04 來啟動, 原因不知道,也許是設計缺陷。

最后,其實你也不知道你到底是跑飛還是其他什么情況。
個人建議你確定一下 DATA_OUT() 這個函數, 看你的定時設置應該是 0.5毫秒 或者 1毫秒, 你這個DATA_OUT() 需要跑多久? 時間久的話,程序被卡死就是必然的了。
回復

使用道具 舉報

8#
ID:450037 發表于 2021-12-1 14:32 | 只看該作者
188610329 發表于 2021-12-1 14:05
定時器2 中斷需要手動清除中斷標志,
中斷中需要加入:
TF2 = 0;

大俠,收下我的膝蓋吧!(
我加了個TF2=0,就可以完美的運行了。一切正常。這樣定時器1與定時器2就完美地切換過來了。
謝謝你!
你是不是對C8051F020單片機很熟悉啊,我提的問題你基本上都能解決,老厲害了。
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 欧美一区在线看 | 国产高清91| 国产成人午夜高潮毛片 | 日韩欧美国产一区二区三区 | 日韩视频在线播放 | 亚洲在线日韩 | 日韩av网址在线观看 | 免费观看毛片 | 国产精品一区二区免费 | 精品亚洲一区二区三区四区五区高 | 亚洲国产福利视频 | 久久久网 | 男女啪啪高潮无遮挡免费动态 | 91久久精品一区二区二区 | 久久99深爱久久99精品 | 亚洲三级在线观看 | 色精品| 欧美综合国产精品久久丁香 | 国产一级电影在线观看 | 91精品一区二区 | 天天躁日日躁狠狠躁2018小说 | 美女二区 | 天天操天天干天天透 | 亚洲国产一区视频 | www.久久艹 | 亚洲美女一区 | 国产一区不卡 | 亚洲成人自拍 | 国产精品成人一区二区三区吃奶 | 亚洲视频在线免费观看 | 精品日韩一区 | 国产高清性xxxxxxxx | 久久久91精品国产一区二区三区 | 日韩精品视频在线观看一区二区三区 | 国产午夜精品一区二区三区嫩草 | 国产婷婷色一区二区三区 | 亚洲天堂一区二区 | 午夜电影网 | 一级毛片播放 | 在线免费观看黄色av | 中文字幕高清一区 |