欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

依靠輔助單片機(jī)擴(kuò)展51單片機(jī)外部中斷數(shù)量的方法與流程

文檔序號(hào):11807081閱讀:1605來源:國(guó)知局

本發(fā)明屬于單片機(jī)控制技術(shù)領(lǐng)域,具體涉及一種依靠輔助單片機(jī)擴(kuò)展51單片機(jī)外部中斷數(shù)量的方法。



背景技術(shù):

51單片機(jī)具有價(jià)格低廉的特點(diǎn),其單價(jià)一般都在5元以內(nèi)。但其外部中斷數(shù)量一般較少,以宏晶公司的STC89C51為例,其只有兩個(gè)外部中斷源。即使該公司之后推出的12系列、15系列單片機(jī)能夠提供更多的外部中斷,但這些增加的外部中斷僅能夠?qū)崿F(xiàn)下降沿觸發(fā),而無法如INT0、INT1兩個(gè)中斷源一樣實(shí)現(xiàn)上升沿、下降沿均觸發(fā)。因此,當(dāng)控制系統(tǒng)所需的外部中斷數(shù)量較多時(shí),單靠51單片機(jī)將難以滿足控制需求。

當(dāng)前有一種較常見的外部中斷擴(kuò)展方式,即將多個(gè)外部信號(hào)源和邏輯“與”門芯片腳的輸入相連,同時(shí)將這些外部信號(hào)源與單片機(jī)的普通I/O口連接。并將邏輯“與”門芯片的輸出引腳與單片機(jī)的外部中斷INT0或INT1(宏晶公司一般為P3.0和P3.1)相連。將所用到的單片機(jī)I/O口均配置為準(zhǔn)雙向模式。此時(shí),當(dāng)外部中斷信號(hào)源都為高電平,外部中斷引腳有一個(gè)為高電平,另一個(gè)為低電平,則外部中斷引腳為低電平。因此,當(dāng)三個(gè)外部中斷源中有一個(gè)變成低電平時(shí),單片機(jī)外部中斷接收到一個(gè)下降沿,被觸發(fā)。在外部中斷程序中,掃描單片機(jī)與中斷信號(hào)源相連的所有普通I/O口,掃描發(fā)現(xiàn)為低電平的I/O口對(duì)應(yīng)的中斷源就是所需觸發(fā)的中斷信號(hào)。單片機(jī)就能夠做出相應(yīng)的響應(yīng)。當(dāng)?shù)碗娖降耐獠恐袛嘣醋兓馗唠娖綍r(shí),與門芯片的輸出變?yōu)楦唠娖?,單片機(jī)外部中斷接收到一個(gè)上升沿,再次觸發(fā),并做出相應(yīng)的響應(yīng)。

上述外部中斷擴(kuò)展方式在一定程度上能夠?qū)崿F(xiàn)對(duì)上升沿、下降沿均觸發(fā)的外部中斷進(jìn)行擴(kuò)展,但其存在如下缺陷:

1.當(dāng)信號(hào)源變?yōu)榈碗娖綍r(shí),能夠觸發(fā)外部中斷。此時(shí),若該信號(hào)源未及時(shí)變回高電平,而另一中斷源也變?yōu)榈碗娖?,希望觸發(fā)中斷,但由于一個(gè)輸入為低電平和兩個(gè)輸入為低電平時(shí),輸出均為低電平,則單片機(jī)將無法接收到第二個(gè)中斷請(qǐng)求,系統(tǒng)將錯(cuò)過這個(gè)外部中斷,產(chǎn)生相應(yīng)的錯(cuò)誤。

2.“與”門芯片有兩輸入、三輸入、四輸入,當(dāng)外部輸入信號(hào)數(shù)量超過與門的輸入數(shù)量,則要通過串聯(lián)多塊“與”門芯片來完成相應(yīng)的觸發(fā);當(dāng)外部中斷信號(hào)源數(shù)量小于“與”門輸入數(shù)量時(shí),又需要將未接信號(hào)源的“與”門輸入引腳接上高電平。因此,“與”門芯片在使用時(shí)不便于兼容不同的外部信號(hào)數(shù)量。



技術(shù)實(shí)現(xiàn)要素:

本發(fā)明的目的是針對(duì)現(xiàn)有技術(shù)的不足,提供一種依靠輔助單片機(jī)擴(kuò)展51單片機(jī)外部中斷數(shù)量的方法。

本發(fā)明的具體步驟如下:

步驟一、兩塊子單片機(jī)均將各自的一個(gè)I/O口作為外部中斷請(qǐng)求的輸出口與主單片機(jī)的外部中斷I/O口相連;子單片機(jī)的其余I/O口根據(jù)外部信號(hào)源數(shù)量n定義為輸入口,兩個(gè)子單片機(jī)的輸入口總數(shù)為n,n≤14,且每個(gè)單片機(jī)至少有一個(gè)輸入口。n個(gè)外部信號(hào)源與子單片機(jī)對(duì)應(yīng)的輸入口相連,同時(shí)與主單片機(jī)的普通I/O口連接。用到的子單片機(jī)I/O口及主單片機(jī)I/O口均配置為準(zhǔn)雙向模式,主單片機(jī)的外部中斷設(shè)置為上升沿、下降沿均觸發(fā)。

步驟二、子單片機(jī)不斷掃描定義的輸入口電平狀態(tài),一旦某一輸入口的輸入電平與記錄電平不同,則記錄電平更新為當(dāng)前中斷信號(hào)源狀態(tài)。且子單片機(jī)的輸出口電平發(fā)生變化,從而使主單片機(jī)外部中斷I/O口變化,觸發(fā)主單片機(jī)的外部中斷。

步驟三、主單片機(jī)的外部中斷觸發(fā)從以下三種中斷觸發(fā)方式中選擇一種:

(1)上升沿、下降沿均觸發(fā)主單片機(jī)外部中斷:主單片機(jī)通過外部中斷程序掃描與外部信號(hào)源相連的所有普通I/O口,掃描發(fā)現(xiàn)與記錄電平不同的I/O口對(duì)應(yīng)的外部信號(hào)源就是所需觸發(fā)的中斷信號(hào)源,則執(zhí)行與該中斷信號(hào)源對(duì)應(yīng)的程序,并將記錄電平更新為當(dāng)前中斷信號(hào)源狀態(tài)。

(2)僅上升沿觸發(fā)主單片機(jī)外部中斷:主單片機(jī)通過外部中斷程序掃描與外部信號(hào)源相連的所有普通I/O口,掃描發(fā)現(xiàn)與之前記錄電平不同的I/O口對(duì)應(yīng)的外部信號(hào)源,則記錄電平更新為當(dāng)前中斷信號(hào)源狀態(tài);若該外部信號(hào)源為高電平,執(zhí)行與該中斷信號(hào)源對(duì)應(yīng)的程序,若該外部信號(hào)源為低電平,則退出中斷。

(3)僅下降沿觸發(fā)主單片機(jī)外部中斷:主單片機(jī)通過外部中斷程序掃描與外部信號(hào)源相連的所有普通I/O口,掃描發(fā)現(xiàn)與之前記錄電平不同的I/O口對(duì)應(yīng)的外部信號(hào)源,則記錄電平更新為當(dāng)前中斷信號(hào)源狀態(tài);若該外部信號(hào)源為低電平,執(zhí)行與該中斷信號(hào)源對(duì)應(yīng)的程序。若該中斷信號(hào)源為高電平,則退出中斷。

所述的主單片機(jī)采用IAP15W4K58S4芯片;子單片機(jī)采用STC15F104E芯片。

本發(fā)明具有的有益效果:

1、本發(fā)明給出一種使用子單片機(jī)不斷掃描外部中斷源信號(hào),并由子單片機(jī)向主單片機(jī)發(fā)送中斷觸發(fā)請(qǐng)求的擴(kuò)展方式,使所有中斷請(qǐng)求均能夠被主單片機(jī)接收,有效保證系統(tǒng)的穩(wěn)定性;同時(shí),能夠有效兼容外部中斷源數(shù)量不同的系統(tǒng)。

2、本發(fā)明選用STC15F104E作為子單片機(jī),該單片機(jī)不同封裝的單價(jià)均在3元以下,其內(nèi)部產(chǎn)生時(shí)鐘信號(hào),不需要外接晶振,最高時(shí)鐘頻率可達(dá)33MHz,能夠?qū)崿F(xiàn)快速掃描;其寫入擴(kuò)展程序后與主單片機(jī)簡(jiǎn)單連接即可使用;用極低的成本即可完成擴(kuò)展外部中斷數(shù)量的目的。

附圖說明

圖1為本發(fā)明中子單片機(jī)的程序流程圖。

具體實(shí)施方式

下面結(jié)合附圖對(duì)本發(fā)明作進(jìn)一步說明。

依靠輔助單片機(jī)擴(kuò)展51單片機(jī)外部中斷數(shù)量的方法,具體步驟如下:

步驟一、兩塊子單片機(jī)均將各自的一個(gè)I/O口作為外部中斷請(qǐng)求的輸出口與主單片機(jī)的外部中斷I/O口相連;子單片機(jī)的其余I/O口根據(jù)外部信號(hào)源數(shù)量n定義為輸入口,兩個(gè)子單片機(jī)的輸入口總數(shù)為n,n≤14,且每個(gè)單片機(jī)至少有一個(gè)輸入口,本實(shí)施例中兩塊子單片機(jī)的輸入口均為3個(gè)。n個(gè)外部信號(hào)源與子單片機(jī)對(duì)應(yīng)的輸入口相連,同時(shí)與主單片機(jī)的普通I/O口連接。用到的子單片機(jī)I/O口及主單片機(jī)I/O口均配置為準(zhǔn)雙向模式,主單片機(jī)的外部中斷設(shè)置為上升沿、下降沿均觸發(fā)。主單片機(jī)采用IAP15W4K58S4芯片;子單片機(jī)采用STC15F104E芯片。

步驟二、如圖1所示,子單片機(jī)不斷掃描定義的輸入口電平狀態(tài),一旦某一輸入口的輸入電平與記錄電平不同,則記錄電平更新為當(dāng)前中斷信號(hào)源狀態(tài)。且子單片機(jī)的輸出口電平發(fā)生變化,從而使主單片機(jī)外部中斷I/O口變化,觸發(fā)主單片機(jī)的外部中斷。

步驟三、主單片機(jī)的外部中斷觸發(fā)從以下三種中斷觸發(fā)方式中選擇一種:

(1)上升沿、下降沿均觸發(fā)主單片機(jī)外部中斷:主單片機(jī)通過外部中斷程序掃描與外部信號(hào)源相連的所有普通I/O口,掃描發(fā)現(xiàn)與記錄電平不同的I/O口對(duì)應(yīng)的外部信號(hào)源就是所需觸發(fā)的中斷信號(hào)源,則執(zhí)行與該中斷信號(hào)源對(duì)應(yīng)的程序,并將記錄電平更新為當(dāng)前中斷信號(hào)源狀態(tài)。

(2)僅上升沿觸發(fā)主單片機(jī)外部中斷:主單片機(jī)通過外部中斷程序掃描與外部信號(hào)源相連的所有普通I/O口,掃描發(fā)現(xiàn)與之前記錄電平不同的I/O口對(duì)應(yīng)的外部信號(hào)源,則記錄電平更新為當(dāng)前中斷信號(hào)源狀態(tài);若該外部信號(hào)源為高電平,執(zhí)行與該中斷信號(hào)源對(duì)應(yīng)的程序,若該外部信號(hào)源為低電平,則退出中斷。

(3)僅下降沿觸發(fā)主單片機(jī)外部中斷:主單片機(jī)通過外部中斷程序掃描與外部信號(hào)源相連的所有普通I/O口,掃描發(fā)現(xiàn)與之前記錄電平不同的I/O口對(duì)應(yīng)的外部信號(hào)源,則記錄電平更新為當(dāng)前中斷信號(hào)源狀態(tài);若該外部信號(hào)源為低電平,執(zhí)行與該中斷信號(hào)源對(duì)應(yīng)的程序。若該中斷信號(hào)源為高電平,則退出中斷。

該依靠輔助單片機(jī)擴(kuò)展51單片機(jī)外部中斷數(shù)量的方法,一旦某一信號(hào)源產(chǎn)生變化,外部中斷輸出口的狀態(tài)就會(huì)發(fā)生變化,該狀態(tài)下主單片機(jī)便不會(huì)錯(cuò)過在執(zhí)行當(dāng)前外部中斷時(shí)產(chǎn)生的外部中斷。子單片機(jī)的掃描速度越高,主單片機(jī)的外部中斷越不容易遺漏。子單片機(jī)的掃描速度主要由兩方面決定:1.程序的長(zhǎng)短,掃描時(shí)判斷語句通常是單周期指令,執(zhí)行該語句需要用時(shí)一個(gè)機(jī)器周期。程序越短掃描時(shí)間越短,即定義的掃描I/O口越少,掃描精度越高。2.機(jī)器周期的長(zhǎng)短,單片機(jī)執(zhí)行語句通常為單機(jī)器周期指令。機(jī)器周期由時(shí)鐘周期決定,時(shí)鐘周期由晶振的頻率決定。晶振頻率越高,機(jī)器周期越短,執(zhí)行的越快,越不容易出錯(cuò),下載時(shí)配置晶振頻率為30M。

當(dāng)前第1頁(yè)1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
秭归县| 灌阳县| 盖州市| 常山县| 宜春市| 新源县| 驻马店市| 桃园市| 五指山市| 什邡市| 葵青区| 青岛市| 安阳市| 武威市| 香港 | 章丘市| 高安市| 宜春市| 德庆县| 田林县| 宁陵县| 会昌县| 南投市| 新蔡县| 凤冈县| 普兰店市| 嵩明县| 长阳| 海安县| 墨脱县| 和龙市| 锡林浩特市| 三都| 三原县| 察隅县| 宁国市| 右玉县| 手机| 阿巴嘎旗| 万州区| 葫芦岛市|