• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      MCS51系列單片機的學(xué)習(xí)要點分析

      2019-06-11 11:31:03李啟明李傳芳
      天工 2019年2期
      關(guān)鍵詞:堆棧中斷

      李啟明 李傳芳

      [摘 要]學(xué)習(xí)MCS51系列單片機,需要了解MCS51系列單片機的學(xué)習(xí)要點,這是學(xué)習(xí)MCS51系列單片機的捷徑。這篇文章的目的就是說明MCS51系列單片機的學(xué)習(xí)要點,并加以分析,供給讀者參考。

      [關(guān)鍵詞]MCS51;讀寫指令;堆棧;I/O ;中斷

      掌握了微機的工作原理以及匯編程序的基本應(yīng)用方法,為學(xué)習(xí)MCS51系列單片機打下堅實的基礎(chǔ),使學(xué)習(xí)MCS51系列單片機更加輕松簡單。如果我們能夠?qū)W(xué)習(xí)MCS51系列單片機的要點提出來,那就可以起到事半功倍的作用。

      一、MCS51系列單片機存儲器讀寫指令

      在微機原理中的匯編語言程序里,無論是在內(nèi)外存儲器間傳送數(shù)據(jù)還是讀取程序存儲器的數(shù)據(jù),都是應(yīng)用MOV操作指令來完成。但是MCS51系列單片機有許多不同。首先是MSC51系列單片機的存儲器分為內(nèi)部數(shù)據(jù)存儲器和外部數(shù)據(jù)存儲器以及內(nèi)外部程序存儲器,其匯編語言程序讀寫這些存儲器指令都有不同之處。例如讀寫內(nèi)部數(shù)據(jù)存儲器的數(shù)據(jù)用MOV指令即可,而讀寫外部數(shù)據(jù)存儲器的數(shù)據(jù)則必須使用MOVX指令。讀內(nèi)外部程序存儲器的數(shù)據(jù)時也要使用MOVC指令。

      二、MCS51系列單片機的堆棧和堆棧指令

      無論是在微機原理還是在MCS51系列單片機中,堆棧的含義都是相同的,就是以“先進后出”的方式。堆棧操作中有兩條指令:①是入棧指令PUSH,②是出棧指令POP。微機原理中,堆棧是按向下減少的,進行PUSH指令操作時,棧頂?shù)刂稴P減2后送回SP,再存入一個字數(shù)據(jù)(即兩個字節(jié)數(shù)據(jù));POP指令是把當(dāng)前棧頂?shù)刂稴P所指的一個字數(shù)據(jù)(即兩個字節(jié)數(shù)據(jù))取出后,棧頂?shù)刂稴P加2后送回SP。而在MCS51系列單片機中,堆棧是向上增長的,PUSH指令入棧的數(shù)據(jù)只是一個字節(jié),且入棧時先將棧頂?shù)刂稴P自動加1,然后才將數(shù)據(jù)壓入堆棧;而POP指令的操作則是先將堆棧中的一個字節(jié)數(shù)據(jù)彈出送給direct(存儲地址),然后棧頂?shù)刂稴P自動減1。

      三、MCS51系列單片機的I/O輸入輸出方式

      在微機原理的課程中,進行I/O輸入輸出必須擴展連接外部的I/O元器件,如8155、8255 I/O芯片。8086/8088CPU采用I/O端口獨立編址形式。CPU用專門的I/O指令去訪問I/O端口。輸入指令I(lǐng)N AX,PORT端口字信息送AX,以及IN AL,PORT端口字節(jié)信息送AL;輸出指令OUT? PORT, AX字信息送端口,以及OUT PORT, AL字節(jié)信息送端口。IN和OUT指令都提供了字和字節(jié)兩種使用方式,地址PORT就是專用的地址空間,而在MCS51系列單片機的輸入輸出就簡單得多了,因為MCS51系列單片機的芯片內(nèi)有四個雙向并行I/O端口P0~P3,每個端口都配有端口鎖存器、輸出驅(qū)動器和輸入緩沖器,每個I/O口可以進行字節(jié)輸入/輸出,也可以單獨進行位輸入/輸出。在對I/O口進行讀寫操作時,其讀寫方式和讀寫數(shù)據(jù)存儲器的方式是一樣的。例如讀寫P1端口,其指令為MOV A,P1端口P1字節(jié)信息送A累加器,MOV P1,A字節(jié)信息送端口P1。單獨進行位輸入輸出的指令為SETB P1.0把P1口的第0位置1,即輸出高電平;CLR P2.3 把P2口的第3位置0,即輸出低電平。

      四、MCS51系列單片機的中斷

      在微機原理的課程中,以8086/8088的中斷系統(tǒng)為例,該中斷系統(tǒng)可以處理256種不同的中斷。最多有256個中斷向量,每個中斷向量對應(yīng)一個中斷類型碼,且每個中斷向量需要四位存儲地址,一共需要1k的存儲單元,中斷向量表安排在00000H~003FFH。在中斷響應(yīng)時,CPU把中斷類型碼乘于4,由此取得該中斷源的中斷向量地址指針,依據(jù)該指針可從中斷向量表中取出兩個字分別送入IP和CS,引導(dǎo)CPU去執(zhí)行中斷服務(wù)程序。所有在編制好中斷服務(wù)程序后,給中斷服務(wù)程序安排了存儲空間,還須將它的入口地址置入中斷向量表中與中斷類型碼對應(yīng)的地址中,當(dāng)中斷到來時,CPU才會根據(jù)中斷類型碼自動取出中斷向量,轉(zhuǎn)入中斷服務(wù)程序中。MCS51系列單片機的中斷系統(tǒng)具有三類共五個中斷源,即INT0和INT1以及 T0、T1定時或計數(shù)溢出中斷和串行口發(fā)送或接受中斷。MCS51系列單片機的中斷系統(tǒng)也設(shè)置了中斷向量,但其向量地址是一一對應(yīng)固定的。INT0外部中斷向量地址是0003H,INT1外部中斷向量地址是0013H,T0定時/計數(shù)溢出中斷向量地址是000BH,T1定時/計數(shù)溢出中斷向量地址是001BH,串行發(fā)送或接受中斷向量地址是0023H。MCS51系列單片機發(fā)生中斷時,其CPU會根據(jù)中斷類型從各固定地址取出中斷服務(wù)程序的入口地址,轉(zhuǎn)入中斷服務(wù)程序中。

      參考文獻:

      [1]許立梓,何小敏,高明琴,等.微型計算機原理及應(yīng)用[M].北京:機械工業(yè)出版社,2003.

      [2]李明,畢萬新.單片機原理與接口技術(shù)[M].大連:大連理工大學(xué)出版社,2014.

      [作者單位]

      廣東工業(yè)大學(xué)課室管理中心

      (編輯:原琳娜)

      猜你喜歡
      堆棧中斷
      基于行為監(jiān)測的嵌入式操作系統(tǒng)堆棧溢出測試*
      基于FPGA的中斷控制器設(shè)計*
      嵌入式軟件堆棧溢出的動態(tài)檢測方案設(shè)計*
      跟蹤導(dǎo)練(二)(5)
      千里移防,衛(wèi)勤保障不中斷
      解放軍健康(2017年5期)2017-08-01 06:27:44
      基于堆棧自編碼降維的武器裝備體系效能預(yù)測
      AT89C51與中斷有關(guān)的寄存器功能表解
      FPGA內(nèi)嵌PowerPC的中斷響應(yīng)分析
      微處理機(2012年4期)2012-06-13 11:32:24
      基于FPGA中斷管理的研究及硬件化設(shè)計
      一種用于分析MCS-51目標(biāo)碼堆棧深度的方法
      乐东| 广元市| 冀州市| 高清| 铁岭市| 高平市| 青冈县| 兰考县| 大荔县| 鄯善县| 柳林县| 白山市| 通河县| 来安县| 进贤县| 德化县| 滨海县| 泰宁县| 封开县| 拉萨市| 泸定县| 舟曲县| 张掖市| 子洲县| 兴仁县| 南城县| 宁城县| 榆林市| 民县| 明水县| 松潘县| 蒙城县| 温泉县| 丰顺县| 高青县| 特克斯县| 洞口县| 南丰县| 隆安县| 东乡县| 东明县|