微機(jī)原理1-6章(72學(xué)時(shí)).ppt_第1頁(yè)
微機(jī)原理1-6章(72學(xué)時(shí)).ppt_第2頁(yè)
微機(jī)原理1-6章(72學(xué)時(shí)).ppt_第3頁(yè)
微機(jī)原理1-6章(72學(xué)時(shí)).ppt_第4頁(yè)
微機(jī)原理1-6章(72學(xué)時(shí)).ppt_第5頁(yè)
已閱讀5頁(yè),還剩197頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、2020/7/27,微機(jī)原理及應(yīng)用, MCS-51單片機(jī),總學(xué)時(shí):72學(xué)時(shí) 授課:50學(xué)時(shí)實(shí)驗(yàn):20學(xué)時(shí) 主講教師:趙 明 教授,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,參考資料,1. 單片微型計(jì)算機(jī)技術(shù) -劉國(guó)榮 機(jī)械工業(yè)出版社 2.AT89系列單片機(jī)原理與接口技術(shù) - 王幸之 等 北京航空航天大學(xué)出版社 3.MCS-51/96系列單片機(jī)原理及應(yīng)用 -孫涵芳 徐愛(ài)卿 北京航空航天大學(xué)出版社 4 單片機(jī)原理及其接口技術(shù)(第2版) -胡漢才 清華大學(xué)出版社 5.單片微型計(jì)算機(jī)原理及其應(yīng)用 -何立民 上??平坛霭嫔?6.單片機(jī)應(yīng)用設(shè)計(jì) -張剛毅 等 哈工大出版社,202

2、0/7/27,本課主要內(nèi)容及課時(shí)安排,理論課課時(shí)50學(xué)時(shí) 第一章 微型計(jì)算機(jī)基礎(chǔ) (6學(xué)時(shí)) 第二章 MCS-51單片機(jī)的結(jié)構(gòu) (6學(xué)時(shí)) 第三章 MCS-51單片機(jī)的程序設(shè)計(jì)基礎(chǔ) (12學(xué)時(shí)) 第四章 MCS-51單片機(jī)的輸入輸出及中斷 (4學(xué)時(shí)) 第五章 MCS-51單片機(jī)的定時(shí)/計(jì)數(shù)器原理及應(yīng)用(4學(xué)時(shí)) 第六章 MCS-51單片機(jī)的串行口原理及應(yīng)用 (4學(xué)時(shí)) 第七章 MCS-51單片機(jī)的系統(tǒng)擴(kuò)展及應(yīng)用 (10學(xué)時(shí)) 第八章 A/D與D/A轉(zhuǎn)換器 (4學(xué)時(shí)) 實(shí)踐課時(shí):20學(xué)時(shí),2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,第一章 微型計(jì)算機(jī)基礎(chǔ),1.1 微型計(jì)算

3、機(jī)的發(fā)展及應(yīng)用,1.2 數(shù)字與碼制,1.3 微型計(jì)算機(jī)的基本結(jié)構(gòu)和工作原理,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院, 1.1 微型計(jì)算機(jī)的發(fā)展及應(yīng)用,1.1.1 計(jì)算機(jī)系統(tǒng)的組成 一個(gè)完整的計(jì)算機(jī)系統(tǒng)包括硬件系統(tǒng)和軟件系統(tǒng) 兩大部分。,為使計(jì)算機(jī)正常工作而設(shè)置的命令,組成計(jì)算機(jī) 的物理實(shí)體,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,一、計(jì)算機(jī)的硬件系統(tǒng),運(yùn)算器,控制器,將程序和數(shù)據(jù)送到計(jì)算機(jī)中的存儲(chǔ)器。常用輸入設(shè)備有鍵盤(pán),鼠標(biāo)器。,實(shí)現(xiàn)算術(shù)和邏輯運(yùn)算,運(yùn)行數(shù)據(jù)處理,用于存儲(chǔ)數(shù)據(jù)和程序 。,對(duì)指令進(jìn)行譯碼后向各部件發(fā)出控制信號(hào),指揮計(jì)算機(jī)按規(guī)

4、定進(jìn)行工作,將計(jì)算機(jī)的處理結(jié)果輸出到外,供人們識(shí)別和存儲(chǔ),常用的輸出設(shè)備有:打印機(jī),顯示器。,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,二、計(jì)算機(jī)的軟件系統(tǒng),1. 軟件系統(tǒng)定義: 軟件系統(tǒng)是指計(jì)算機(jī)所使用的各種程序的集合。 2. 軟件系統(tǒng)分類: 從使用的角度看,計(jì)算機(jī)的軟件可分為兩部分: 系統(tǒng)軟件 一般由專門(mén)的計(jì)算機(jī)軟件技術(shù)人員設(shè)計(jì)和編制, 如操作系統(tǒng),各種語(yǔ)言的編譯程序,監(jiān)控程序。 應(yīng)用軟件 用戶為解決自己的問(wèn)題而編制的程序。,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,1.1.2 微型計(jì)算機(jī)系統(tǒng)的組成,算術(shù)邏輯部件,控制部件,內(nèi)部總線,累加

5、器、寄存器,微處理器(CPU),存儲(chǔ)器(ROM,RAM),主 機(jī),輸入/輸出接口,系統(tǒng)總線,微型計(jì)算機(jī),外圍設(shè)備,系統(tǒng)軟件,微型計(jì)算機(jī)系統(tǒng),2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,微型計(jì)算機(jī) 單片機(jī),微型計(jì)算機(jī)的組成框圖 (由多個(gè)IC芯片組裝在一個(gè)主電路板上),MCS-51單片機(jī),所有單元都組裝 在一個(gè)IC芯片上,數(shù)據(jù)RAM,CPU,并行I/O,程序ROM,定時(shí)/計(jì)數(shù)器,串行端口,中斷控制器,擴(kuò)展I/O端口,系統(tǒng)總線(DB、AB、CB),大而全,小而精,1.1.3 微機(jī)及微處理器的發(fā)展?fàn)顩r及趨勢(shì),單片微型計(jì)算機(jī)(簡(jiǎn)稱單片機(jī)) 定義:?jiǎn)纹瑱C(jī)是在一塊芯片上集成了CPU、

6、存儲(chǔ)器和各種輸入/輸出接口。,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,單片機(jī)外型,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,單片機(jī)的發(fā)展,1.4位單片機(jī)(19711974) 2. 低檔8位單片機(jī)(19741978) 3. 高檔8位單片機(jī)(19781982) 4. 16位單片機(jī)(19821990) 5. 新一代單片機(jī)(90年代以來(lái)),2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,具有通用性和靈活性 面向控制 可靠性高(對(duì)嵌入式系統(tǒng)來(lái)說(shuō)) 具有掉電保護(hù) I/O接口功能強(qiáng),便于系統(tǒng)擴(kuò)展 應(yīng)用研制周期短 性能價(jià)格比高,單片機(jī)的

7、特點(diǎn),2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,數(shù)值計(jì)算 信息處理(包括數(shù)字、文字、語(yǔ)言、符號(hào)和圖象等) 實(shí)時(shí)控制 輔助設(shè)計(jì) CAD、CAI、CAM等 人工智能 “智能”是利用計(jì)算機(jī)模仿人類的智能活動(dòng)、判斷、理解、學(xué)習(xí)、圖象識(shí)別、問(wèn)題求解等。,單片機(jī)的應(yīng)用,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,單片機(jī)產(chǎn)品簡(jiǎn)介,國(guó)際上比較流行的單片機(jī)有以下幾種 Intel系列 Motorola系列 .NEC系列 Philip系列 .NS系列(美國(guó)國(guó)家半導(dǎo)體公司生產(chǎn) .Zilog系列(美國(guó)Zilog公司生產(chǎn) ATMEL系列(美國(guó)ATMEL公司生產(chǎn) .MSP4

8、30系列(TI ) .ARM系列,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,Intel 單片機(jī),2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,MCS-51系列芯片及制造工藝,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,單片機(jī)的發(fā)展趨勢(shì)(嵌入式應(yīng)用 MCU、DSP、FPGA ),1. 利用8051內(nèi)核為核心發(fā)展出各種型號(hào)系列的8051 MCU。 ATMEL AT89CXX WINBOND 51系列 PHILIPS 80C51系列單片機(jī) 2. 發(fā)展成為SOC (如:LCD控制, A/D, D/A ,網(wǎng)絡(luò)接口 等) 3. 低功耗

9、 TI MSP430系列 4. 高速 和DSP結(jié)合倍頻,減少機(jī)器周期的時(shí)鐘數(shù),2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,1.2 數(shù)字與碼制,一、數(shù)制及其互換 “數(shù)制”:是計(jì)數(shù)的進(jìn)位制,如:十進(jìn)制,0,1,2,8,9,這些字符也叫數(shù)碼。 “基數(shù)”:數(shù)制所用數(shù)碼的個(gè)數(shù)。 “權(quán)”:102、101、100、10.1,稱為相應(yīng)位的“權(quán)”。,任意一個(gè)十進(jìn)制數(shù)N都可以表示成按權(quán)展開(kāi)的多項(xiàng)式,例如:543.21可表示為 543.21=5102+4101+3100+210-1+110-2,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,二、計(jì)算機(jī)中的數(shù)制及相互轉(zhuǎn)換,

10、1. 二、 八、 十六進(jìn)制轉(zhuǎn)換成十進(jìn)制,例 1:將數(shù)(10.101)2, (46.12)8, (2D.A4)16轉(zhuǎn)換為十進(jìn)制。 (10.101)2=121+020+12-1+02-2+12-3=2.625 (46.12)8=481+680+18-1+28-2=38.156 25 (2D.A4)16=2161+13160+1016-1+416-2=45.640 62,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,2. 十進(jìn)制數(shù)轉(zhuǎn)換成二、八、十六進(jìn)制數(shù) 任意十進(jìn)制數(shù) N 轉(zhuǎn)換成 R 進(jìn)制數(shù), 需將整數(shù)部分和小數(shù)部分分開(kāi), 采用不同方法分別進(jìn)行轉(zhuǎn)換, 然后用小數(shù)點(diǎn)將這兩部分連接

11、起來(lái)。 (1) 整數(shù)部分: 除基取余法。 分別用基數(shù) R 不斷地去除 N 的整數(shù), 直到商為零為止, 每次所得的余數(shù)依次排列即為相應(yīng)進(jìn)制的數(shù)碼。最初得到的為最低有效數(shù)字, 最后得到的為最高有效數(shù)字。,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,例 2 將(168)10轉(zhuǎn)換成二、 八、 十六進(jìn)制數(shù)。,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,(2) 小數(shù)部分: 乘基取整法。 分別用基數(shù) R(R=2、8或16)不斷地去乘N 的小數(shù), 直到積的小數(shù)部分為零(或直到所要求的位數(shù))為止, 每次乘得的整數(shù)依次排列即為相應(yīng)進(jìn)制的數(shù)碼。 最初得到的為最高有效數(shù)

12、字, 最后得到的為最低有效數(shù)字。,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,故: (0.645)10=(0.10100)2=(0.51217)8=(0.A51EB)16,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,例 4 將(168.645)10轉(zhuǎn)換成二、 八、 十六進(jìn)制數(shù)。 根據(jù)例2、例 3 可得 (168.645)10= (10101000.10100)2= (250.51217) 8 =(A8.A51EB)16,例 5 將(110101.011)2轉(zhuǎn)換為十六進(jìn)制數(shù)。,0011 0101 . 0110,3 5 . 6,即 (110101.0

13、11) 2=(35.6)16,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,三、帶符號(hào)數(shù)的表示方法,1.機(jī)器數(shù)及真值 計(jì)算機(jī)在數(shù)的運(yùn)算中, 不可避免地會(huì)遇到正數(shù)和負(fù)數(shù), 那么正負(fù)符號(hào)如何表示呢?由于計(jì)算機(jī)只能識(shí)別0和1, 因此, 我們將一個(gè)二進(jìn)制數(shù)的最高位用作符號(hào)位來(lái)表示這個(gè)數(shù)的正負(fù)。 規(guī)定符號(hào)位用“0”表示正, 用“1”表示負(fù)。例如, X=-1101010B, Y=+1101010B, 則X表示為: 11101010B, Y表示為01101010B。,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,(1). 原碼 當(dāng)正數(shù)的符號(hào)位用0表示, 負(fù)數(shù)的符號(hào)

14、位用1表示, 數(shù)值部分用真值的絕對(duì)值來(lái)表示的二進(jìn)制機(jī)器數(shù)稱為原碼, 用X原表示, X為整數(shù)。設(shè)X =x1 x2 x3 xn X原= 例+115原= 01110011B; -115原= 11110011B,2.數(shù)的碼制,8位二進(jìn)制原碼能表示的范圍是: -127+127。,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,( 2). 反碼 一個(gè)正數(shù)的反碼, 等于該數(shù)的原碼; 一個(gè)負(fù)數(shù)的反碼, 由它的正數(shù)的原碼的最高位不變,其它位按位取反形成。反碼用X反表示。 X反= 例如: X=+103, 則X反=X原=01100111B; X=-103, X原=11100111B, 則X反=1

15、0011000B。,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,( 3). 補(bǔ)碼(為什么采用補(bǔ)碼,就是為了計(jì)算的方便) 一個(gè)正數(shù)的補(bǔ)碼, 等于該數(shù)的原碼; 一個(gè)負(fù)數(shù)的補(bǔ)碼, 由它的正數(shù)的原碼的最高位不變,其它位按位取反加1形成。補(bǔ)碼用X補(bǔ)表示。 X補(bǔ)= 例如: X=+75, 則X補(bǔ)=X原= 01001001B; X=-30, 則X補(bǔ)= 11100010B。,8位二進(jìn)制補(bǔ)碼能表示的范圍為: -128 +127, 若超過(guò)此范圍, 則為溢出。,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,(1)采用什么碼制是個(gè)人規(guī)定的; (2)采用補(bǔ)碼,最后的結(jié)果也是補(bǔ)

16、碼。,注意:,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,(4)BCD碼 BCD碼不是二進(jìn)制數(shù)而是十進(jìn)制數(shù),8421BCD編碼表,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,1.3 微型計(jì)算機(jī)的基本結(jié)構(gòu)和工作原理,一 微型計(jì)算機(jī)的基本結(jié)構(gòu) 由CPU、存儲(chǔ)器、輸入/輸出接口電路和系統(tǒng)總線構(gòu)成。,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,1. 中央處理器(CPU): CPU(Central Processing Unit)是計(jì)算機(jī)的核心部件, 它主要由運(yùn)算器和控制器組成, 完成計(jì)算機(jī)的運(yùn)算和控制功能。還包括寄存器陣列和內(nèi)部總

17、線。 運(yùn)算器又稱算術(shù)邏輯部件(ALU, Aithmctieal Logic Unit), 主要完成對(duì)數(shù)據(jù)的算術(shù)運(yùn)算和邏輯運(yùn)算。 控制器(Controller)是整個(gè)計(jì)算機(jī)的指揮中心, 它負(fù)責(zé)從內(nèi)部存儲(chǔ)器中取出指令并對(duì)指令進(jìn)行分析、判斷, 并根據(jù)指令發(fā)出控制信號(hào), 使計(jì)算機(jī)的有關(guān)部件及設(shè)備有條不紊地協(xié)調(diào)工作, 保證計(jì)算機(jī)能自動(dòng)、連續(xù)地運(yùn)行。由指令寄存器、譯碼器、定時(shí)與控制電路等組成。 寄存器陣列:運(yùn)算中間結(jié)果、堆棧、程序計(jì)數(shù)器等。 內(nèi)部總線:實(shí)現(xiàn)CPU與各個(gè)部件之間的信息傳遞。,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,存儲(chǔ)器 存儲(chǔ)器(Memory)是具有記憶功能的部件

18、, 用來(lái)存儲(chǔ)數(shù)據(jù)和程序。 ()存儲(chǔ)器的結(jié)構(gòu)圖 ()存儲(chǔ)器的分類:半導(dǎo)體存儲(chǔ)器、磁心存儲(chǔ)器和電耦合存儲(chǔ)器。 半導(dǎo)體存儲(chǔ)器包括: 程序存儲(chǔ)器:掩膜ROM、PROM、EPROM和EEPROM; 數(shù)據(jù)存儲(chǔ)器:靜態(tài)RAM、動(dòng)態(tài)RAM。,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院, 輸入/輸出接口(I/O接口) 輸入/輸出(I/O)接口由大規(guī)模集成電路組成的I/O器件構(gòu)成, 用來(lái)連接主機(jī)和相應(yīng)的I/O設(shè)備(如: 鍵盤(pán)、 鼠標(biāo)、顯示器、 打印機(jī)等), 使得這些設(shè)備和主機(jī)之間傳送的數(shù)據(jù)、信息在形式上和速度上都能匹配。不同的I/O設(shè)備必須配置與其相適應(yīng)的I/O接口。 總線 總線(BUS)

19、是計(jì)算機(jī)各部件之間傳送信息的公共通道。微機(jī)中有內(nèi)部總線和外部總線兩類。內(nèi)部總線是CPU內(nèi)部之間的連線。外部總線是指CPU與其它部件之間的連線。 外部總線有三種: 數(shù)據(jù)總線DB(Data Bus), 地址總線 AB(Address Bus)和控制總線 CBControl Bus)。,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,二、計(jì)算機(jī)的工作過(guò)程,()時(shí)序(單片機(jī)8031) 振蕩周期: 也稱時(shí)鐘周期, 是指為單片機(jī)提供時(shí)鐘脈沖信號(hào)的振蕩源的周期。 狀態(tài)周期: 每個(gè)狀態(tài)周期為時(shí)鐘周期的 2 倍, 是振蕩周期經(jīng)二分頻后得到的。 機(jī)器周期: 一個(gè)機(jī)器周期包含 6 個(gè)狀態(tài)周期S1

20、S6, 也就是 12 個(gè)時(shí)鐘周期。 在一個(gè)機(jī)器周期內(nèi), CPU可以完成一個(gè)獨(dú)立的操作。 指令周期: 它是指CPU完成一條操作所需的全部時(shí)間。 每條指令執(zhí)行時(shí)間都是有一個(gè)或幾個(gè)機(jī)器周期組成。MCS - 51 系統(tǒng)中, 有單周期指令、雙周期指令和四周期指令。,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,MCS - 51 指令的取指/執(zhí)行時(shí)序,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,計(jì)算機(jī)的基本工作過(guò)程,根據(jù)馮諾依曼原理構(gòu)成的現(xiàn)代計(jì)算機(jī)的工作原理可概括為: 存儲(chǔ)程序和程序控制。存儲(chǔ)程序是指人們必須事先把計(jì)算機(jī)的執(zhí)行步驟序列(即程序)及運(yùn)行中所需的數(shù)

21、據(jù), 通過(guò)一定的方式輸入并存儲(chǔ)在計(jì)算機(jī)的存儲(chǔ)器中。程序控制是指計(jì)算機(jī)能自動(dòng)地逐一取出程序中的一條條指令, 加以分析并執(zhí)行規(guī)定的操作。,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,作業(yè): 1.計(jì)算機(jī)系統(tǒng)的組成。 2.什么是單片機(jī),特點(diǎn)及應(yīng)用。 3.微型計(jì)算機(jī)的組成。 4.半導(dǎo)體存儲(chǔ)器的分類。 5.說(shuō)明MOX A,#30H指令的執(zhí)行過(guò)程。 6.什么是振蕩周期、機(jī)器周期、指令周期和狀態(tài)周期。,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,第二章 MCS-51單片微型計(jì)算機(jī)的結(jié)構(gòu),2.1 MCS-51基本組成 2.2 MCS-51內(nèi)部結(jié)構(gòu) 2.3 MCS-

22、51單片機(jī)引腳功能及片外三總線結(jié)構(gòu),2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,2.1 MCS-51單片機(jī)的基本組成,單片機(jī)的硬件資源,8 位的 CPU, 片內(nèi)有振蕩器和時(shí)鐘電路,工作頻率為 1.212MHz(Atmel 89Cxx為024MHz) 片內(nèi)有 128/256字節(jié) RAM 片內(nèi)有 0K/4K/8K字節(jié) 程序存儲(chǔ)器ROM 可尋址片外 64K字節(jié) 數(shù)據(jù)存儲(chǔ)器RAM 可尋址片外 64K字節(jié) 程序存儲(chǔ)器ROM 片內(nèi) 21/26個(gè) 特殊功能寄存器(SFR) 4個(gè)8位 的并行I/O口(PO P3) 1個(gè) 全雙工串行口(RXD/TXD) 2/3個(gè)16位 定時(shí)器/計(jì)數(shù)器(T

23、IMER/COUNTER) 可處理 5/6個(gè)中斷源,兩級(jí)中斷優(yōu)先級(jí) 內(nèi)置1個(gè)布爾處理器和1個(gè)布爾累加器(Cy) MCS-51指令集含 111條指令,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,MCS-51單片機(jī)組成框圖,控 制,并行口,串行通信,內(nèi)中斷,外中斷,頻率基準(zhǔn)源,外部事件計(jì)數(shù) 脈沖輸入,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,2.2 MCS-51內(nèi)部結(jié)構(gòu),2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,一、CPU:,CPU由運(yùn)算器和控制器等部件組成,1、運(yùn)算器 包括:ALU、ACC、B、TMP1、TMP2、PSW

24、等,程序狀態(tài)字PSW:8位寄存器,表征程序執(zhí)行的狀態(tài)信息。,CY(PSW.7)進(jìn)位標(biāo)志:在加減法運(yùn)算中,累加器A的最高位D7有進(jìn)位,則CY=1,否則CY=0.同理,在減法運(yùn)算中,如果A7有借位,則CY=1。 AC(PSW.6):輔助進(jìn)位位:用來(lái)判斷加減法運(yùn)算時(shí),低四位是否向高四位進(jìn)位或借位(即A3的進(jìn)位或借位) F0(PSW.5) 用戶標(biāo)志位:完全由用戶來(lái)定義和使用。 RS1,RS0工作寄存器區(qū)選擇位:確定工作寄存器R0-R7在4個(gè)區(qū)中的位置。可以通過(guò)修改RS1,RS0的值來(lái)改變工作寄存器區(qū)的選擇。,OV(PSW.2)溢出標(biāo)志位: 判斷有符號(hào)數(shù)運(yùn)算時(shí)是否有溢出。 P(PSW.0)奇偶標(biāo)志位:

25、用來(lái)標(biāo)志累加器A中運(yùn)算后1的個(gè)數(shù)。 當(dāng)P=1時(shí),表明A中 1的個(gè)數(shù)為奇數(shù)個(gè),反之為偶數(shù)個(gè)。,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,2、控制器 包括:PC、指令寄存器IR、指令譯碼器ID、定時(shí)控制電路等。,程序計(jì)數(shù)器PC(Program Counter):PC用于存放CPU下一條要執(zhí)行的指令地址, 是一個(gè) 16 位的專用寄存器, 可尋址范圍是0000H0FFFFH共 64 KB。 堆棧指針SP(Stack Pointer):堆棧操作是在內(nèi)存RAM區(qū)專門(mén)開(kāi)辟出來(lái)的按照“先進(jìn)后出”原則進(jìn)行數(shù)據(jù)存取的一種工作方式, 主要用于子程序調(diào)用及返回和中斷處理斷點(diǎn)的保護(hù)及返回, 它

26、在完成子程序嵌套和多重中斷處理中是必不可少的。(將在第三章詳細(xì)介紹) 數(shù)據(jù)指針寄存器DPTR:數(shù)據(jù)指針DPTR是一個(gè) 16 位的專用寄存器, 其高位字節(jié)寄存器用DPH表示,低位字節(jié)寄存器用DPL表示。既可作為一個(gè) 16 位寄存器DPTR來(lái)處理, 也可作為兩個(gè)獨(dú)立的 8 位寄存器DPH和DPL來(lái)處理。DPTR 主要用來(lái)存放 16 位地址, 當(dāng)對(duì) 64 KB外部數(shù)據(jù)存儲(chǔ)器空間尋址時(shí), 作為間址寄存器用。在訪問(wèn)程序存儲(chǔ)器時(shí), 用作基址寄存器。,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,二、存儲(chǔ)器:,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,1、程序

27、存儲(chǔ)器,程序存儲(chǔ)器(ROM)是存放程序、常數(shù)和表格的。 在MCS-51單片機(jī)中: /EA=1時(shí),系統(tǒng)執(zhí)行片內(nèi)的4KROM中的程序;在PC中的內(nèi)容增加到超過(guò)0FFFH時(shí),CPU將自動(dòng)開(kāi)始訪問(wèn)片外程序存儲(chǔ)器。,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,/EA=0時(shí),系統(tǒng)使用片外ROM中的程序。 無(wú)論是使用片內(nèi)還是使用片外的ROM(即 EA=1或EA=0),其起始地址都是從0000H單元開(kāi)始。 盡管系統(tǒng)具備片內(nèi)ROM和外部ROM,但是在一般正常使用情況下,只能通過(guò)/EA的設(shè)定來(lái)選擇其中之一。所以,在物理上的兩個(gè)存儲(chǔ)空間在邏輯上卻只是一個(gè)(或者使用內(nèi)部ROM;或者使用外部RO

28、M)。,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,程序存儲(chǔ)器保留的特定單元:,00000002H初始化程序入口。CPU在復(fù)位后,總是從0000H單元開(kāi)始執(zhí)行程序,所以,此處一般設(shè)置一條無(wú)條件轉(zhuǎn)移指令。 0003H外部中斷!INT0的處理程序入口。 000BH計(jì)數(shù)器/定時(shí)器T0的溢出中斷處理程序入口。 0013H外部中斷!INT1的處理程序入口。 001BH計(jì)數(shù)器/定時(shí)器T1的溢出中斷處理程序入口。 0023H串行口中斷處理程序入口。,0000H,0013H,000BH,0003H,001BH,0023H,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)

29、院,2、數(shù)據(jù)存儲(chǔ)器RAM,數(shù)據(jù)存儲(chǔ)器無(wú)論在物理上還是邏輯上都分為兩個(gè)地址空間即一個(gè)內(nèi)部和一個(gè)外部的數(shù)據(jù)存儲(chǔ)空間,因?yàn)椋?1、訪問(wèn)內(nèi)部數(shù)據(jù)存儲(chǔ)單元(128/256B)時(shí),使用 MOV 指令; 2、訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器(64KB)時(shí),使用 MOVX 指令。 內(nèi)部數(shù)據(jù)存儲(chǔ)器從功能上又將256B空間分為二個(gè)不同的塊: 1、低128B的RAM塊; 在低128B的RAM存儲(chǔ)單元中又可劃分為:工作寄存器區(qū)、位尋址區(qū)、通用存儲(chǔ)數(shù)據(jù)的“數(shù)據(jù)緩沖區(qū)”。 2、高128B的SFR(Special Function Register )塊。 高128B的專用寄存器區(qū)SFR中僅僅使用了21寄存器(51系列),其它單元不能使

30、用。,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,MCS-51 片內(nèi) 、片外 數(shù)據(jù)存儲(chǔ)器示意圖,特殊功能 寄存器 SFR,通用數(shù)據(jù) 存儲(chǔ)器,80H 7FH,00H,FFH,片內(nèi)RAM 片外RAM 256B個(gè)字節(jié) 64KB個(gè)字節(jié),片外數(shù)據(jù) 存儲(chǔ)器 64KB,0000H,FFFFH,注意: 1、訪問(wèn)片內(nèi)RAM20H單元 MOV A,20H 2、訪問(wèn)片外RAM20H單元 MOV R0, #20h MOVX A,R0,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,片內(nèi)RAM低 128B 字節(jié)功能分配圖,位尋址區(qū),3區(qū),2區(qū),1區(qū),0區(qū),便箋區(qū),08H 07

31、H 00H,7FH,30H 2FH,20H 1FH,18H 17H,10H 0FH,四個(gè)工作寄存器區(qū) 每個(gè)區(qū)中有R0-R7 八個(gè)工作寄存器,位尋址區(qū) 16個(gè)單元20H-2FH, 共有128 可尋址位個(gè)位。 位地址:00H-7FH 注意:位地址與字節(jié)地址的區(qū)別,通用的RAM區(qū) 地址:30H-7FH,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,0區(qū)工作寄存器區(qū)結(jié)構(gòu)圖,RAM地址 07H 06H 05H 04H 03H 02H 01H 00H,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,片內(nèi) RAM(20H-2FH)中的位尋址區(qū)結(jié)構(gòu)圖,2FH,20H,

32、字節(jié)地址,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,位尋址區(qū)內(nèi)的地址是位地址。共有00-7FH(共128個(gè)位); 要區(qū)分字節(jié)地址和位地址這兩個(gè)不同的地址概念: 從物理的角度,每一個(gè)字節(jié)地址內(nèi)包含了8個(gè)位,即: D7,D6,D5,D4,D3,D2,D1,D0 在一般情況,我們提到的RAM地址都是字節(jié)地址。 從邏輯的角度講,字節(jié)地址和位地址是靠不同類型的指令來(lái)區(qū)分的。如: MOV A, 20h ;將RAM的20單元內(nèi)容送累加器A; MOV C ,20h ;將RAM位尋址區(qū)中20H位送CY中。 在這二個(gè)例子中,第一條指令為字節(jié)傳送指令,所以20H為字節(jié)地址;第二個(gè)例子中的指

33、令為位操作指令,所以20H為位地址。有關(guān)詳細(xì)內(nèi)容將在第二章中描述。,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,特殊功能寄存器SFR,特殊功能寄存器SFR (Special Function Register) 用來(lái)設(shè)定單片機(jī)內(nèi)部各模塊的工作方式,存放相關(guān)模塊的狀態(tài)與標(biāo)志,如定時(shí)器、串行口,并行端口的鎖存器等等。 盡管特殊功能寄存器與RAM在同一個(gè)單元中,但不能作為普通的RAM存儲(chǔ)單元來(lái)使用。 (只有在編程中根據(jù)需要,進(jìn)行一些特定功能的設(shè)定,或者是從中查尋相關(guān)部件的狀態(tài)時(shí),才能進(jìn)行讀、寫(xiě)操作。如中斷方式的設(shè)定、定時(shí)器工作模式的設(shè)定,查詢串行口發(fā)送或接收是否結(jié)束等等),2

34、020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,特殊功能寄存器 SFR(表一),2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,SFR(表二),注:表中黃色的單元為可按位尋址的字節(jié) (字節(jié)地址可以被8整除),2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,三、并行輸入/輸出口電路結(jié)構(gòu),MCS51單片機(jī)設(shè)有四個(gè)8位雙向I/O端口(P0,P1,P2,P3)。 每一條I/O線都能獨(dú)立地用作輸入或輸出。 P0口為三態(tài)雙向口,能帶8個(gè)TTL電路。 P1、P2、P3口為準(zhǔn)雙向口,能帶4個(gè)TTL電路。,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大

35、學(xué)高等職業(yè)技術(shù)學(xué)院,1.端口功能,P0口常用作地址/數(shù)據(jù)總線口,即低8位地址與數(shù)據(jù)線分時(shí)使用P0口。 P1口其中每一位都能作為可編程的輸入或輸出線。 P2口常輸出高8位地址,與P0口一起組成16位地址總線。 P3口雙功能口。作為第一功能使用時(shí),其功能與P1口相同。作第二功能使用時(shí),每一位的定義如下表。,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,附表P3口的第二功能,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,2.端口操作,首先介紹端口的結(jié)構(gòu)。 (1)P0口(口地址80H),2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,(2

36、)P1口(口地址90H),P1口是一個(gè)準(zhǔn)雙向口,作通用的I/O口使用。,輸入時(shí)需預(yù)先置1,應(yīng)為:mov p1,#0FFH mov A, P1,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,(2)P2口(口地址A0H),P2口是一個(gè)準(zhǔn)雙向口,作通用的I/O口使用。,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,(2)P3口(口地址B0H),P3口是一個(gè)雙功能口。 作為第二功能口使用時(shí),見(jiàn)附表。,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院, 2.3 MCS-51單片機(jī)引腳功能及片外三總線結(jié)構(gòu),MCS51單片機(jī)屬總線型結(jié)構(gòu)。 訪問(wèn)外

37、部存儲(chǔ)器:P2口輸出高8位地址,P0口輸出低8位地址。 訪問(wèn)外部程序存儲(chǔ)器:!PSEN信號(hào)有效。 訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器:由P3口自動(dòng)產(chǎn)生讀(RD)/寫(xiě)(WR)信號(hào)。,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,復(fù)位和復(fù)位電路,MCS51單片機(jī)的復(fù)位電路如下:,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,寄存器 內(nèi)容,PC0000HACC00HB00HPSW00HSP07HDPTR0000HP3P0 0FFHIP00000BIE 000000BTMOD00HTCON00HTH000HTL000HTH100HTL100HSCON00HSBUF不定PCO

38、N 0B,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,MCS-51內(nèi)部有一個(gè)用于構(gòu)成振蕩器的高增益反相放大器.在單片機(jī)引腳的XTAL1和XTAL2分別是此放大器的輸入和輸出端.與作為反饋元件的晶體或陶瓷諧振器一起構(gòu)成了一個(gè)自激振蕩器. 內(nèi)部時(shí)鐘發(fā)生器的輸出信號(hào)是單片機(jī)所需的時(shí)鐘信號(hào),振蕩器與時(shí)鐘電路,如果使用外部振蕩器信號(hào),其外來(lái)的信號(hào)加在XTAL1的引腳上(見(jiàn)右圖).,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,8051引腳,1.主電源引腳Vss和Vcc 2.外接晶體引腳XTAL1和XTAL2 3.控制或與其它電源復(fù)用引腳RST/ VPD,AL

39、E/PROG,/PSEN和/EA/ VPP 4.輸入輸出引腳P0.0P0.7,P1.0P1.7,P2.0P2.7,P3.0P3.7,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,邏輯符號(hào),2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,作業(yè): 1.寫(xiě)出PSW各位的含義. 2.MCS-51的CPU都包含哪些功能模塊. 3.MCS-51存儲(chǔ)器的功能劃分. 4.MCS-51SFR有多少個(gè)?分布的地址空間?尋址方式? 5.說(shuō)明MCS-51內(nèi)外數(shù)據(jù)存儲(chǔ)器組織及地址范圍. 6.說(shuō)明MCS-51的EA引腳的功能. 7.MCS-51存在的地址混疊現(xiàn)象及解決方法. 8.

40、P0、P1、P2、P3口的功能. 9.P0、P1、P2、P3口的負(fù)載能力. 10.準(zhǔn)雙向口的概念. 11.畫(huà)出P1口的結(jié)構(gòu)圖,并說(shuō)明工作原理. 12.寫(xiě)出單片機(jī)復(fù)位后,主要SFR的狀態(tài).,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,3.1 MCS-51指令系統(tǒng) 3.2 MCS-51程序設(shè)計(jì),第二章 MCS-51指令系統(tǒng)及程序設(shè)計(jì)基礎(chǔ),2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,3.1 MCS-51指令系統(tǒng),指令概述 MCS-51單片機(jī)指令系統(tǒng)共有33種功能,42種助記符,111 條指令。,每條指令在程序存儲(chǔ)器ROM中占據(jù)一定的空間,以字節(jié)為單位。

41、按指令所占字節(jié)數(shù)分類: 單字節(jié)(49條);雙字節(jié)(46條);3字節(jié)(16條),每條指令在執(zhí)行時(shí)要花去一定的時(shí)間,以機(jī)器周期為單位。按指令執(zhí)行時(shí)間分類: 單周期(64條);雙周期(45條);4周期(2條),按指令的功能分類,可分為5大類: 數(shù)據(jù)傳送類(29條);算術(shù)運(yùn)算類(24條) 邏輯運(yùn)算及移位類(24);控制轉(zhuǎn)移類(17條) 位操作類(17條),2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,指令的格式,標(biāo)號(hào):操作碼 目的操作數(shù),源操作數(shù);注釋,方括符 表示可選項(xiàng) 標(biāo)號(hào)代表指令所在地址,1-8個(gè)字母/數(shù)字,“:”結(jié)尾 操作碼就是指令功能助記符,指令實(shí)體 目的操作數(shù) 源操作

42、數(shù) 注釋,以“;”開(kāi)頭,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,MCS-51單片機(jī)指令的尋址方式,尋址方式:指令按地址獲得操作數(shù)的方式 七種尋址方式,一條指令可能含多種尋址方式,立即尋址 直接尋址 寄存器尋址 寄存器間接尋址 變址尋址(基址寄存器+變址寄存器間接尋址) 相對(duì)尋址 位尋址,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,立即尋址,指令中直接含有所需要的操作數(shù)data。 MOV A,# data data稱為8位或16位的“立即數(shù)” 使用 # 作前綴。如: MOV A,#30H ;將8位立即數(shù)送累加器A MOV DPTR,#2000H

43、 ;16位立即數(shù)送DPTR寄存器 注意:符號(hào)“#”表明其后跟的是立即數(shù), 立即數(shù)就是數(shù)字量本身。,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,直接尋址,指令本身直接給出操作數(shù)在RAM中的地址。 MOV A,direct direct 為8位或16位RAM地址 如:MOV A,30H;將RAM 30H單元數(shù)據(jù)送累加器A,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,如:MOV A,30H ;將RAM30H單元內(nèi)容送累加器 這里30H是操作數(shù)在RAM中的地址。 直接尋址的指令長(zhǎng)度是兩個(gè)或三個(gè)字節(jié)。,n,n+1,30H,累加器A,直接尋址示意圖,2020

44、/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,【注意】: MOV A,#30H MOV A,30H 兩者的區(qū)別。,n,n+1,ROM,累加器A,MOV A,#30H,指令執(zhí)行流程,n,n+1,ROM,累加器A,MOV A,30H,30H,RAM,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,該方式中操作數(shù)存儲(chǔ)的空間有三種:,1.內(nèi)部數(shù)據(jù)存儲(chǔ)器的低128個(gè)字節(jié)單元(00H7FH) 例:MOV A, 70H ; (70H)A,2.位地址空間 例:MOV C, 00H ; 直接位00H內(nèi)容 進(jìn)位位,3.特殊功用功能寄存器 *只能用直接尋址方式進(jìn)行訪問(wèn)。 例:MOV

45、 IE, #85 ; 立即數(shù)85H 中斷允許寄存器,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,在MCS-51單片機(jī)中規(guī)定:訪問(wèn)特殊功能寄存器SFR只能采用直接尋址方式。例如: MOV A, SP ; (A) (SP) MOV A, 81H ; (A) (SP) MOV P1, #5AH ; (P1)(#5AH) MOV 90H,#5AH ; (P1)(#5AH) MOV B, 30H ; (B) (30H),SFR的地址見(jiàn)前章,相同,相同,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,在MCS-51單片機(jī)中訪問(wèn)特殊功能寄存器SFR只能采用直接尋址

46、方式的原因:SFR分布在80H0FFH范圍內(nèi),而52系列單片機(jī)有256字節(jié)的片內(nèi)RAM,其中的80H0FFH的RAM與SFR所占地址重疊。,MOV A, 90H 等效于 MOV A, P1 屬直接尋址 MOV A, R0 ;事先已知 (R0) = #90H 執(zhí)行的操作:A (90H) 屬寄存器間接尋址, 隨意寫(xiě)的指令如:MOV A, 85H 則是非法的!,于是規(guī)定: 80H0FFH范圍內(nèi)的RAM只能用寄存器間接尋址方式,而SFR只能用直接尋址方式。從而解決了地址沖突的問(wèn)題。例如:,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,存儲(chǔ)器配置(片內(nèi)RAM),89C51片內(nèi)RAM

47、 128字節(jié)(00H7FH) 89C52片內(nèi)RAM 256字節(jié)(00H0FFH),00H,20H,2FH,7FH,1FH,30H,80H,FFH,52子系列才有 的RAM區(qū),普通RAM區(qū),位尋址區(qū),工作寄存器區(qū),SFR分布在80H-FFH 其中92個(gè)位可位尋址,80H,FFH,89C51 128字節(jié),89C52 256字節(jié),只能直接尋址,只能寄存器間接尋址,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,寄存器尋址 從寄存器中讀取操作數(shù)或存放操作數(shù)進(jìn)寄存器 例:MOV A,B ; (A) (B) MOV 30H,R0 ;(30H)(R0) MOV A,R1 ; (A) (R

48、1),2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,寄存器間接尋址 寄存器中的內(nèi)容是一個(gè)地址,由該地址單元 尋址到所需的操作數(shù),注意: 1)“間接”表示某寄存器中的“內(nèi)容”只是一個(gè)“單元地址”,這個(gè)地址單元中存放的數(shù)據(jù)才是要找的“操作數(shù)”。 2)符號(hào)“”表示“在”,其含義與讀音皆同“at”。,例: MOV R1,#30H ;(R1) 立即數(shù)30H , MOV R1,#30H ;(R1) 立即數(shù)30H MOV R1,#0FH ;(30H)立即數(shù)0FH MOV A,R1 ;(A)(30H)=#0FH,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,MOV

49、R0,#30H ;立即數(shù)送R0寄存器 MOV A,R0 ;從RAM的30H單元取數(shù)送累加器A 【注意】 MOV A, R0 和 MOV A, R0 指令的區(qū)別。,30H,R0,00H,累加器A,1,2,3,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,變址尋址 也稱為: 基址寄存器+變址寄存器間接尋址,以16位的地址指針寄存器DPTR或 16位的PC寄存器為基址寄存器,以累加器 A 為變址寄存器,兩者中的“內(nèi)容”形成一個(gè)16位的“地址”,該“地址”所指的存儲(chǔ)單元中的內(nèi)容才是操作數(shù)。,例:設(shè):A中已存有#A4H,DPTR中已存有#1234H MOVC A,A+DPTR;(A

50、)(A)+(DPTR) 操作:將A4H+1234H=12D8H單元中的數(shù)放進(jìn)累加器A,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,變址尋址示意圖,02H,0300H,ALU,0302H,累加器A,DPTR,0300H (DPTR) + 02H (A) 0302H,MOVC A,A+DPTR,0300H,ROM,平方表,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,相對(duì)尋址 當(dāng)前PC值加上指令中規(guī)定的偏移量 rel,構(gòu)成實(shí)際的操作數(shù)地址 例: SJMP rel 操作:跳轉(zhuǎn)到的目的地址 = 當(dāng)前16位PC值 + rel,注意: 1)“當(dāng)前PC值”指程序

51、中下一條指令所在的首地址, 是一個(gè)16位數(shù); 2)符號(hào)“rel”表示“偏移量”,是一個(gè)帶符號(hào)的單字 節(jié)數(shù),范圍是:-128+127(80H7FH),在實(shí)際編程中,“rel” 通常用標(biāo)號(hào)代替,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,02H,2002H,ALU,2004H,累加器A,PC,2002H + 02H 2004H,操作碼,偏移量,例如:SJMP 02H (機(jī)器碼80H、02H),2000H,2002H,當(dāng)前PC值,LOOP1,由于偏移量 rel 為帶符號(hào)的8位補(bǔ)碼,所以控制程序轉(zhuǎn)移的 范圍為+127-128。,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)

52、高等職業(yè)技術(shù)學(xué)院,位尋址 指令中直接給出了操作數(shù)所在的位地址。 例: CLR P1.0 ;(P1.0) 0 SETB ACC.7 ;(ACC.7) 1 CPL C ;( C ) NOT( C ),注意: 1)位地址里的數(shù)據(jù)只可能是一個(gè) 0 或 1 2)有的位地址十分明確,如 P1.0, ACC.7等, 有的位地址則“不太明確”,如: MOV A,17H ; (A)(17H),17H是字節(jié)地址 MOV ACC.0,17H ;(ACC.0)(17H),這里ACC.0 是位地址所以該指令中的17H是22H單元的第7位,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,片內(nèi)RAM中有

53、128個(gè)位可按位尋址的位,位地址:00H7FH分布在:20H2FH單元; 另外,在SFR中字節(jié)地址可以被8整除的可按位尋址,00H,20H,2FH,7FH,1FH,30H,80H,FFH,SFR,普通RAM區(qū),位尋址區(qū),工作寄存器區(qū),27H,22H,21H,20H,26H,24H,25H,23H,28H,07 06 05 04 03 02 01 00,0F 0E 0D 0C 0B 0A 09 08,17 16 15 14 13 12 11 10,1F 1E 1D 1C 1B 1A 19 18,27 26 25 24 23 22 21 20,2F 2E 2D 2C 2B 2A 29 28,37

54、36 35 34 33 32 31 30,3F 3E 3D 3C 3B 3A 39 38,47 46 45 44 43 42 41 40,2FH,7F 7E 7D 7C 7B 7A 79 78,位地址,總共128個(gè)可按位尋址的位,單元地址,17,D7 D6 D5 D4 D3 D2 D1 D0,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,作為嵌入式控制器,CPU更多的是處理“開(kāi)關(guān)量”而不單純是字節(jié)結(jié)構(gòu)的數(shù)據(jù)。因此MCS-51在指令設(shè)計(jì)上刻意設(shè)計(jì)了大量的“布爾操作”即位操作,這為系統(tǒng)應(yīng)用帶來(lái)了很大的方便。,MCS-51 單片機(jī) 控制、檢測(cè) 系統(tǒng),驅(qū)動(dòng)器,電動(dòng)機(jī),外設(shè)1,外設(shè)

55、2,狀態(tài)信號(hào),狀態(tài)信號(hào),控制信號(hào),2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,MCS-51指令集,功能分五類,共111條指令,數(shù)據(jù)傳送類指令: (29條) 算術(shù)運(yùn)算類指令: (24條) 邏輯運(yùn)算及移位類指令: (24條) 控制轉(zhuǎn)移類指令: (17條) 位操作(布爾操作)類指令:(17條),2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,(一) 數(shù)據(jù)傳送類指令 (5種/29條),內(nèi)部存儲(chǔ)器間傳送: (MOV16條) 外部數(shù)據(jù)存儲(chǔ)器與累加器間傳送: (MOVX4條) 程序存儲(chǔ)器向累加器傳送: (MOVC2條) 數(shù)據(jù)交換:(XCH,XCHD,SWAP5條)

56、 堆棧操作: (PUSH,POP2條),2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,Acc 累加器,Direct 直接尋址,Ri 間接尋址,Rn 寄存器,#data 立即數(shù),Rn: R0R7 Ri: R0,R1 #data:8位立即數(shù) #data16:16位立即數(shù) direct:直接地址 rel: 8位帶符號(hào)偏移量,(一)數(shù)據(jù)傳送類指令(5種/29條),內(nèi)部存儲(chǔ)器間傳送指令 (16條): MOV 類指令的操作方向總是后面的 操作數(shù) 指向前面的操作數(shù)! 例:MOV A,30H (A)(30H),2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,(1) 以

57、累加器為目的操作數(shù)的指令(4條),MOV A,Rn ;(Rn)(A) MOV A,direct;(direct)(A) MOV A,Ri ;(Ri)(A) MOV A,#data;data(A) 將源操作數(shù)指定內(nèi)容送到A中。,(2) 以寄存器Rn為目的操作數(shù)的指令 (3條),MOV Rn,A MOV Rn,direct MOV Rn,#data 這組指令功能是把源操作數(shù)指定的內(nèi)容送入當(dāng)前工作寄存器,源操作數(shù)不變。,1內(nèi)部數(shù)據(jù)傳送指令MOV,2020/7/27,微機(jī)原理教學(xué)課件 遼寧科技大學(xué)高等職業(yè)技術(shù)學(xué)院,(3)以寄存器間接地址為目的字節(jié)的傳送指令(3條),MOV Ri,A ;(A) (Ri) MOV Ri,direct;(direct) (Ri) M

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論