MCS-51單片機(jī)應(yīng)用教程1.4.ppt_第1頁
MCS-51單片機(jī)應(yīng)用教程1.4.ppt_第2頁
MCS-51單片機(jī)應(yīng)用教程1.4.ppt_第3頁
MCS-51單片機(jī)應(yīng)用教程1.4.ppt_第4頁
MCS-51單片機(jī)應(yīng)用教程1.4.ppt_第5頁
已閱讀5頁,還剩22頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1 4單片機(jī)的存儲(chǔ)器配置 80C51存儲(chǔ)器配置程序存儲(chǔ)器內(nèi)部數(shù)據(jù)存儲(chǔ)器外部數(shù)據(jù)存儲(chǔ)器 主要內(nèi)容 數(shù)據(jù)存儲(chǔ)器 80C51內(nèi)部集成有一定容量的程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器 如果不能滿足設(shè)計(jì)需要ROM和RAM都可以進(jìn)行外部擴(kuò)展 其存儲(chǔ)器的配置情況可以表示為 外部ROM 物理上分為4個(gè)空間 80C51單片機(jī)的存儲(chǔ)器配置情況 邏輯上分為3個(gè)空間 片內(nèi)ROM 片外ROM片內(nèi)RAM 片外RAM 片內(nèi) 外統(tǒng)一編址的程序存儲(chǔ)器內(nèi)部數(shù)據(jù)數(shù)據(jù)存儲(chǔ)器外部數(shù)據(jù)存儲(chǔ)器 64KB 256B 64KB 下面就分別介紹80C51單片機(jī)程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器的配置及特點(diǎn) 一 程序存儲(chǔ)器程序存儲(chǔ)器用于存放編好的程序和表格常數(shù) 尋址范圍 0000H FFFFH容量64KB 即地址長(zhǎng)度 16位 先尋址內(nèi)部ROM 只尋址外部ROM 當(dāng)PC值超過片內(nèi)ROM容量時(shí)會(huì)自動(dòng)轉(zhuǎn)向外部存儲(chǔ)器空間 對(duì)于有內(nèi)部ROM的單片機(jī) 如8051 在正常運(yùn)行時(shí) 此引腳接高電平 該引腳接低電平時(shí) 單片機(jī)工作在調(diào)試狀態(tài) 對(duì)于內(nèi)部沒有ROM的單片機(jī) 如8031 此引腳始終接低電平 2 一些關(guān)鍵的存儲(chǔ)單元 1 0000H單元 系統(tǒng)的啟動(dòng)地址系統(tǒng)復(fù)位后 程序計(jì)數(shù)器PC的值為0000H 所以系統(tǒng)必須從0000H單元開始執(zhí)行程序 0000H是系統(tǒng)的啟動(dòng)地址 一般在此單元放一條跳轉(zhuǎn)指令 用戶的主程序從跳轉(zhuǎn)后的地址開始存放 0003H 外部中斷0入口000BH T0溢出中斷入口0013H 外中斷1入口001BH T1溢出中斷入口0023H 串口中斷入口 2 5個(gè)特殊的單元 中斷服務(wù)程序的入口地址 每?jī)蓚€(gè)相鄰入口地址間僅有8個(gè)存儲(chǔ)單元 這是不可能存放中斷服務(wù)程序的 所以在入口地址處通常都存放一條跳轉(zhuǎn)指令 跳轉(zhuǎn)后的地址即為中斷服務(wù)程序的實(shí)際入口地址 二 內(nèi)部數(shù)據(jù)存儲(chǔ)器物理上分為兩個(gè)不同的存儲(chǔ)空間 00H 7FH 低128B80H FFH 高128B 又叫特殊功能寄存器 SFR 區(qū) 1 數(shù)據(jù)存儲(chǔ)區(qū) 低128單元 數(shù)據(jù)存儲(chǔ)區(qū)又分為三個(gè)區(qū)域 通用寄存器區(qū) 位尋址區(qū)和用戶RAM區(qū) 1 通用寄存器區(qū)00H 1FH共32個(gè)單元是4個(gè)通用工作寄存器區(qū) 每個(gè)區(qū)有8個(gè)8位的寄存器 R0 R7 可以用來存放操作數(shù)及中間結(jié)果等 內(nèi)部RAM低128單元 08H 10H 18H 思考 80C51的內(nèi)部RAM低128B中共有多少個(gè)工作寄存器 答案 共有32個(gè) 注意 在任一時(shí)刻 CPU只能選擇使用其中的一組工作寄存器 即8個(gè) CPU當(dāng)前使用的寄存器區(qū)叫做當(dāng)前工作寄存器區(qū) 編程時(shí)可以在當(dāng)前工作寄存器R0 R7中選擇合適的寄存器使用 其中選擇這4組寄存器區(qū)的哪一組是由用戶在程序中通過設(shè)定專門的寄存器事先寫明的 2 位尋址區(qū)20H 2FH的16個(gè)單元可以進(jìn)行位尋址 也可以作為一般的RAM單元進(jìn)行字節(jié)尋址 各尋址位都有各自的位地址 范圍為 00H 7FH 該區(qū)域共有128位可尋址位 位尋址區(qū) 80C51具有位處理機(jī)功能 可以進(jìn)行位尋址的存儲(chǔ)空間包括位尋址區(qū)和SFR的11個(gè)專用寄存器 3 用戶RAM區(qū)共80個(gè)單元30H 7FH 這部分的使用不作限制 堆棧一般開設(shè)在此區(qū) 2 特殊功能寄存器區(qū) 高128單元 特殊功能寄存器又稱為專用寄存器 單元地址為80H FFH 51子系列SFR的地址分配及位地址見下表 表中給出了特殊功能寄存器的符號(hào) 名稱和地址 注意 表中共有4個(gè)雙字節(jié)寄存器 PC為雙字節(jié)寄存器 但是不在80H FFH范圍內(nèi) 表中 凡地址能被8整除的寄存器都是可位尋址的寄存器 通過觀察上表 可以得到如下結(jié)論 80C51內(nèi)部共有21 22 個(gè)SFR 這21個(gè)特殊功能寄存器在內(nèi)部RAM高128單元中的分布是不連續(xù)的 雖然其中還有空閑的地址 但用戶不能使用 程序存儲(chǔ)器PC是獨(dú)立于SFR之外唯一一個(gè)不可尋址的專用寄存器 它不占用RAM單元 物理上獨(dú)立 編程時(shí)可直接利用 在21個(gè)SFR中有11個(gè)寄存器可以進(jìn)行字節(jié)尋址的同時(shí)還可以進(jìn)行位尋址 這11個(gè)可以進(jìn)行位尋址的寄存器原則上有88位可尋址位 但由于有些寄存器中的個(gè)別位沒有意義 所以共有82位可尋址位 共210位 各寄存器的名稱及主要功能 1 與算術(shù)運(yùn)算有關(guān)的寄存器 A 累加器 為8位寄存器 最為常用 可以存放操作數(shù) 中間結(jié)果 運(yùn)算結(jié)果等 如 MOVA 30H B B寄存器 乘 除法運(yùn)算用 為8位寄存器 主要用于乘 除運(yùn)算 也可作一般寄存器使用 PSW 程序狀態(tài)字寄存器 ProgramStatusWord 為8位寄存器 存放程序運(yùn)行的狀態(tài)信息 其中有些位由硬件置位 有些由軟件設(shè)定 PSW的位狀態(tài)可由專門的指令測(cè)試也可用指令讀出來 各位的含義如圖所示 P RS0 RS1 OV F0 AC CY PSW寄存器 D7HD6HD5HD4HD3HD2HD1HD0H 位地址 位名稱 各位的含義 CY 進(jìn)位 借位標(biāo)志功能 算術(shù)運(yùn)算時(shí)作為進(jìn)位 借位標(biāo)志位位操作中常作累加位由硬件置 復(fù)位 AC 輔助進(jìn) 借位標(biāo)志功能 執(zhí)行加 減運(yùn)算時(shí)表示低四位向高四位的進(jìn)位 借位情況 由硬件置 復(fù)位 F0 用戶定義標(biāo)志位功能 用戶可以定義狀態(tài)標(biāo)記 由軟件置 復(fù)位 OV 溢出標(biāo)志位在帶符號(hào)加減運(yùn)算中 OV 1表示加減結(jié)果超出A表示的有符號(hào)數(shù)的范圍 即超過 128 127 定義10000000 128 在乘法運(yùn)算中 OV 1表示乘積超過了255 即結(jié)果高位放在B中 低位放在A中 OV 0說明乘積只在A中 在除法運(yùn)算中 OV 1表示除數(shù)為零 不能進(jìn)行運(yùn)算 由硬件置 復(fù)位 P 奇偶標(biāo)志位功能 表示累加器A中1的個(gè)數(shù) P 1 A中1的個(gè)數(shù)為奇數(shù) P 0 A中1的個(gè)數(shù)為偶數(shù) 由硬件置 復(fù)位 RS1 RS0 當(dāng)前工作寄存器區(qū)選擇控制位功能 從內(nèi)部RAM低128B中選擇一組寄存器區(qū)作為當(dāng)前工作寄存器 00 0區(qū)R0 R7 地址00H 07H 01 1區(qū)R0 R7 地址08H 0FH 10 2區(qū)R0 R7 地址10H 17H 11 3區(qū)R0 R7 地址18H 1FH 由軟件置 復(fù)位 注意 當(dāng)前工作寄存器區(qū)一旦確定 R0 R7各個(gè)寄存器的地址也就確定了 例如 設(shè)定RS1 RS0分別為01 則此時(shí)指令MOVA R3中A中最終存放的是哪個(gè)單元的數(shù)據(jù) 答案 0BH PSW應(yīng)用舉例 例 有符號(hào)數(shù)8CH和95H執(zhí)行加法運(yùn)算結(jié)果放入A中 PSW寄存器的內(nèi)容為多少 用戶標(biāo)志位設(shè)為0 擇第二組工作寄存器為當(dāng)前工作寄存器 因?yàn)?0001100 1001010100100001 CY 1AC 1F0 0RS1 RS0 10OV 1保留位設(shè)為0P 0 PSW 11010100B D4H 2 指針型寄存器 PC 程序計(jì)數(shù)器是一個(gè)16位的計(jì)數(shù)器 功能 用來存放即將執(zhí)行的下一條指令的地址 程序存儲(chǔ)器地址 在物理上獨(dú)立 沒有訪問地址 所以無法對(duì)它進(jìn)行讀 寫操作 但是可以通過轉(zhuǎn)移 調(diào)用返回等指令改變其內(nèi)容 程序執(zhí)行時(shí)PC可以自動(dòng)加1 系統(tǒng)復(fù)位時(shí)PC 0000H 使CPU從啟動(dòng)地址重新取指令執(zhí)行 舉例 0020H MOVA 0AH 該指令執(zhí)行完后PC的值為 MOVR1 A 答案 0022H 指令本身占兩個(gè)字節(jié) SP 堆棧指針寄存器一個(gè)8位的專用寄存器 可軟件設(shè)置初值 功能 指明堆棧頂部在內(nèi)部RAM中的位置 地址 系統(tǒng)復(fù)位時(shí)SP 07H 但是數(shù)據(jù)要從08H單元開始存放 因?yàn)槎褩5牡撞渴遣荒艽娣艛?shù)據(jù)的 注意 原則上堆棧可以根據(jù)用戶的需要在內(nèi)部RAM中開設(shè) 但內(nèi)部RAM08H 1FH屬于工作寄存器區(qū) 所以一般把SP的值設(shè)得大一些在30H 7FH之間 SP的值可以隨著壓棧和出棧操作自動(dòng)增量或減量 始終指向堆棧的頂部 DPTR 數(shù)據(jù)指針寄存器16位專用寄存器 由兩個(gè)8位的寄存器組成DPTR可用作一個(gè)16位寄存器用 也可以作兩個(gè)8位的寄存器使用 功能 DPTR通常用來存放16位地址 可以借助它訪問外部RAM MOVX指令 和外部ROM MOVC指令 3 并行輸入 輸出端口的鎖存器80C51的四個(gè)并行口都有各自的鎖存器并分別用P0 P1 P2 P3表示 都是8位的鎖存器 在實(shí)際敘述時(shí)一定要明白P0 P1 P2 P3表示的是端口還是端口的鎖存器 4 串行數(shù)據(jù)緩沖器用于存放串行口將要發(fā)送和接收的數(shù)據(jù) 包含兩個(gè)物理上獨(dú)立的寄存器 發(fā)送緩沖器接收緩沖器 5 定時(shí) 計(jì)數(shù)器80C51有兩個(gè)16位的定時(shí)器 計(jì)數(shù)器T0和T1 T0和T1分別由兩個(gè)8位的寄存器構(gòu)成 可用于設(shè)定計(jì)數(shù)初值 注意 T0和T1不能當(dāng)作16位寄存器使用 只能當(dāng)成兩個(gè)8位寄存器分別訪問 6 其它控制寄存器除了以上介紹的這些寄存器還有一些專用寄存器 如IP IE TMOD TCON SCON PCON等 后續(xù)章節(jié)介紹 三 外部數(shù)據(jù)存儲(chǔ)器80C51內(nèi)部存儲(chǔ)器不夠用時(shí) 需要外接RAM和I O 此時(shí)需要注意幾點(diǎn) 單片機(jī)可以訪問的外部RAM地址空間為0 64KB 最多由16根地址線尋址 外部RAM與外接I

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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)論