單片機(jī)的體系結(jié)構(gòu)_第1頁(yè)
單片機(jī)的體系結(jié)構(gòu)_第2頁(yè)
單片機(jī)的體系結(jié)構(gòu)_第3頁(yè)
單片機(jī)的體系結(jié)構(gòu)_第4頁(yè)
單片機(jī)的體系結(jié)構(gòu)_第5頁(yè)
已閱讀5頁(yè),還剩58頁(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)介

第2章8051單片機(jī)的體系結(jié)構(gòu) 本章學(xué)習(xí)要點(diǎn) 1 8051單片機(jī)內(nèi)部結(jié)構(gòu) 功能部件 2 8051單片機(jī)引腳名稱 功能和三總線信號(hào) 3 單片機(jī)的存儲(chǔ)結(jié)構(gòu) 編址 特殊功能寄存器 4 單片機(jī)工作時(shí)序 時(shí)鐘電路 復(fù)位電路 5 單片機(jī)I O的結(jié)構(gòu)功能特點(diǎn) 6 單片機(jī)的工作模式 2 18051單片機(jī)內(nèi)部結(jié)構(gòu)八大功能部件 1 微處理器 8位CPU 2 程序存儲(chǔ)器 ROM EPROM或Flash等 3 數(shù)據(jù)存儲(chǔ)器 RAM E2PROM 4 四個(gè)8位并行可編程I O端口 P0 P1 P2 P3 5 一個(gè)串行口 UART 6 兩個(gè)16位定時(shí)器 計(jì)數(shù)器 T0 T1 7 中斷系統(tǒng) 含 8個(gè)中斷源 2個(gè)優(yōu)先級(jí) 8 特殊功能寄存器 SFR 還包含 時(shí)鐘振蕩器 總線控制器和供電電源此外 有的還有其它功能部件 如 A D D APWM PCAWDTSPI I2C ISP IAP 8051單片機(jī)內(nèi)部結(jié)構(gòu)圖 2 28051單片機(jī)芯片引腳功能單片機(jī)芯片雙列直插封裝方式引腳圖 2 28051單片機(jī)芯片引腳功能單片機(jī)芯片方形封裝方式引腳圖 2 28051單片機(jī)芯片引腳功能單片機(jī)芯片引腳功能1 主電源引腳 1 GND接地 2 VCC正常操作時(shí)為十5V電源 2 時(shí)鐘電路引腳 1 XTAL1 2 XTAL2 3 控制線與電源復(fù)用引腳 1 RST VPD RST是復(fù)位信號(hào) 高電平有效 VPD為第二功能 即備用電源輸入端 2 ALE PROG ALE為地址鎖存允許信號(hào)輸出引腳 PROG為編程信號(hào) 第二功能 低電平有效 3 PSEN 片外ROM選通信號(hào)輸出端 低電平有效 4 EA VPP EA為內(nèi)部和外部ROM控制端當(dāng)EA 1時(shí) 從內(nèi)ROM開(kāi)始訪問(wèn)當(dāng)EA 0時(shí) 只訪問(wèn)外部ROMVPP是編程電源輸入端 4 并行輸入 輸出引腳 1 P0口 P0 0 P0 7統(tǒng)稱為P0口 2 P1口 P1 0 P1 7統(tǒng)稱為P1口 3 P2口 P2 0 P2 7統(tǒng)稱為P2口 4 P3口 P3 0 P3 7統(tǒng)稱為P3口P3口每一位可用作第二功能 而且P3口的每一條引腳都可以獨(dú)立設(shè)置為第一功能的I O口功能和第二功能 2 38051中央處理器單片機(jī)的CPU是完整的1位微計(jì)算機(jī) 這個(gè)1位微計(jì)算機(jī)包含CPU 位寄存器 I O口和指令集 CPU內(nèi)部包含 1 運(yùn)算器2 控制器3 存儲(chǔ)器 2 3 1運(yùn)算器運(yùn)算器包含 1 算術(shù)邏輯運(yùn)算單元ALU 算術(shù)運(yùn)算 邏輯運(yùn)算2 累加器A 相當(dāng)于數(shù)據(jù)加工廠3 位處理器 位運(yùn)算4 BCD碼修正電路 十進(jìn)制數(shù)的運(yùn)算處理5 PSW 記錄程序運(yùn)行狀態(tài) 2 3 2控制器單片機(jī)的指揮部件 主要任務(wù)是識(shí)別指令 控制各功能部件 保證各部分有序工作 主要包括指令寄存器 指令譯碼器 程序計(jì)數(shù)器 程序地址寄存器 條件轉(zhuǎn)移邏輯電路 時(shí)序控制邏輯電路 1 指令 指令譯碼及控制器指令 就是完成某項(xiàng)操作的命令 指令譯碼 對(duì)指令進(jìn)行解析和翻譯控制器 發(fā)出相應(yīng)的控制信息 指揮運(yùn)算器和存儲(chǔ)器協(xié)同完成指令所要求的操作 例如 下面是單片機(jī)的一條指令 0010010100110000 A 30H 該指令是加法指令 指令占2字節(jié) 2 指令集和指令助記符指令譯碼器所能解析系統(tǒng)在設(shè)計(jì)時(shí)規(guī)定的 為直觀表達(dá) 用指令助記符表示 例如 上面的加法指令的助記符為 ADDA 30H 3 程序及程序計(jì)數(shù)器PC什么叫計(jì)算機(jī)程序 為完成一個(gè)完整的運(yùn)算任務(wù) 按照?qǐng)?zhí)行步驟用計(jì)算機(jī)指令編寫(xiě)的指令集合 執(zhí)行程序指示 地址由PC指示 執(zhí)行程序時(shí) 在計(jì)算機(jī)控制器的控制下 取指令裝置會(huì)按PC的指向從存儲(chǔ)器中讀出第一條指令并譯碼 執(zhí)行指令所要求的操作 2 3 3程序執(zhí)行過(guò)程執(zhí)行程序線路實(shí)際上按PC的指取指令運(yùn)行 PC就象引路人 稱為程序指針 執(zhí)行流程如下圖 程序指令取指執(zhí)行過(guò)程 1 復(fù)位PC 00002 從PC取指 PC 13 取數(shù)據(jù)4 執(zhí)行指令5 取下一條指令 2 48051單片機(jī)的存儲(chǔ)結(jié)構(gòu)8051單片機(jī)存儲(chǔ)器采用哈佛結(jié)構(gòu) 1 有一根地址和數(shù)據(jù)總線 2 程序存儲(chǔ)器空間和數(shù)據(jù)存儲(chǔ)器空間采用獨(dú)立編址 3 擁有各自的尋址方式和尋址空間 2 4 18051單片機(jī)的存儲(chǔ)器結(jié)構(gòu)8051單片機(jī)存儲(chǔ)器從物理結(jié)構(gòu)上分四種 1 片內(nèi)程序存儲(chǔ)器 只讀存儲(chǔ)器ROM 類型 ROM PROM EPROM E2PROM Flash 2 片外程序存儲(chǔ)器 類型同上 3 片內(nèi)數(shù)據(jù)存儲(chǔ)器 讀寫(xiě)存儲(chǔ)器RAM 類型 SRAM DRAM E2PROM Flash 4 片外數(shù)據(jù)存儲(chǔ)器 類型同上 從尋址空間分布上分三種 程序存儲(chǔ)器 內(nèi)部數(shù)據(jù)存儲(chǔ)器外部數(shù)據(jù)存儲(chǔ)器 從功能作用上可五種 程序存儲(chǔ)器 內(nèi)部數(shù)據(jù)存儲(chǔ)器 特殊功能寄存器 位地址空間存儲(chǔ)器和外部數(shù)據(jù)存儲(chǔ)器 2 4 18051單片機(jī)的存儲(chǔ)器結(jié)構(gòu)圖 2 4 2程序存儲(chǔ)器 可尋址的地址空間為64KB 從0000H開(kāi)始編址 最大地址可至FFFFH 用EA信號(hào)選擇片內(nèi) 片外程序存儲(chǔ)器 對(duì)于STC89C51單片機(jī) 片內(nèi)有4KB 編址為0000 0FFFH EA接高電平 從片內(nèi)0000H開(kāi)始執(zhí)行程序 對(duì)于8031單片機(jī)無(wú)內(nèi)部程序存儲(chǔ)器 EA接低電平 從片外讀取程序執(zhí)行 中斷向量 單片機(jī)至少有5個(gè)中斷地址 在0000 002FH程序存儲(chǔ)器地址之間占5個(gè)特殊地址 被固定用于5個(gè)中斷源的中斷服務(wù)程序入口地址 中斷地址如下 2 4 3片內(nèi)數(shù)據(jù)存儲(chǔ)器1 片內(nèi)RAM編址片內(nèi)數(shù)據(jù)存儲(chǔ)器 RAM 128B 256B 用來(lái)存放程序運(yùn)行時(shí)所需要的常數(shù)或變量 編址如下 51子系列片內(nèi)RAM有128字節(jié)編址為00 7FH特殊功能寄存器塊有128字節(jié)編址為為80 FFH52子系列片內(nèi)RAM有256字節(jié)低128字節(jié)編址為00 7FH 直接尋址 高128字節(jié)編址為80 FFH 間接尋址 SFR有128字節(jié)編址為為80 FFH 間接尋址 2 內(nèi)部數(shù)據(jù)存儲(chǔ)器的劃分片內(nèi)RAM編址為00 7FH 分工作寄存器區(qū) 位尋址區(qū) 數(shù)據(jù)緩沖區(qū)和堆棧數(shù)據(jù)區(qū)三個(gè)部分 結(jié)構(gòu)如下圖 1 工作寄存器區(qū)從上圖中可以看到 單片機(jī)內(nèi)部RAM的00 1FH區(qū)是R工作寄存器區(qū) 分為四個(gè)組 由RS1 RS0配置選擇 2 位尋址區(qū)內(nèi)部RAM的20H 2FH為位尋址區(qū)域 見(jiàn)表2 4 這16個(gè)單元 共128位 的位地址編址范圍為00H 7FH 3 數(shù)據(jù)緩沖區(qū)內(nèi)部RAM的30H 7FH是數(shù)據(jù)緩沖區(qū) 也稱為用戶RAM區(qū) 共80個(gè)單元 52子系列內(nèi)部有256個(gè)單元的數(shù)據(jù)存儲(chǔ)器 用戶RAM區(qū)范圍為30H FFH 共208個(gè)單元 工作寄存器區(qū)和位尋址區(qū)的地址及單元數(shù)與上述一致 3 堆棧和堆棧指針堆棧的概念 是一種數(shù)據(jù)項(xiàng)按序排列的數(shù)據(jù)結(jié)構(gòu) 采用后進(jìn)先出 這種后進(jìn)先出操作的緩沖器區(qū)稱為堆棧 堆棧指針總是指向棧頂 堆棧就好比水桶或手槍中的彈匣 更象一個(gè)裝兵乓球的小圓筒 堆棧的幾個(gè)名詞 滿堆棧 空堆棧 遞增堆棧和遞減堆棧 堆棧特點(diǎn) 后進(jìn)先出堆棧有3個(gè)具體功能 1 保護(hù)斷點(diǎn) 2 現(xiàn)場(chǎng)保護(hù) 3 臨時(shí)暫存數(shù)據(jù) 2 4 4特殊功能寄存器單片機(jī)是通過(guò)特殊功能寄存器 SFR 對(duì)各種功能部件進(jìn)行集中控制 如下表 2 4 5外部數(shù)據(jù)存儲(chǔ)器單片機(jī)一般的內(nèi)部RAM只有128B或256B 現(xiàn)在有大RAM容量單片機(jī)或集成了DataFlash的單片機(jī) 系統(tǒng)需要海量存儲(chǔ)器必須擴(kuò)展外部存儲(chǔ)器 擴(kuò)展外部存儲(chǔ)器方式 1 并行方式擴(kuò)展 最大64KB 2 串行方式擴(kuò)展 最大1MB以上 存儲(chǔ)器使用總結(jié)如下 1 地址有重疊性 用不同的控制命令分開(kāi) 2 RAM 和 ROM 在操作使用上是嚴(yán)格區(qū)分的 不同的操作指令不能混用 3 位地址空間有兩個(gè)區(qū)域 20H 2FH區(qū)和SFR區(qū) 4 片外數(shù)據(jù)存儲(chǔ)器區(qū)中 RAM存儲(chǔ)單元與單片機(jī)外部擴(kuò)展的I O端口是統(tǒng)一編址的 2 5并行I O端口 共有4個(gè)8位雙向I O口 共32口線 每位均有自己的鎖存器 SFR 輸出驅(qū)動(dòng)器和輸入緩沖器 多路開(kāi)關(guān)功能 用于控制選通I O方式還是地址 數(shù)據(jù)輸出方式方式控制 由內(nèi)部控制信號(hào)產(chǎn)生 輸入鎖存器 兩個(gè)輸入緩沖器 BUF1和BUF2 推拉式I O驅(qū)動(dòng)器 2 5 1P0口位圖內(nèi)部結(jié)構(gòu) 5 P0R2為讀引腳信號(hào) 執(zhí)行 MOVA P0 時(shí)該信號(hào)有效6 讀引腳 端口 時(shí) 輸出鎖存器應(yīng)為 1 說(shuō)明 1 當(dāng)控制信號(hào)為0時(shí) P0口做雙向I O口 為漏極開(kāi)路 三態(tài) 2 控制信號(hào)為1時(shí) P0口為地址 數(shù)據(jù)復(fù)用總線 用于口擴(kuò)展 3 P0W為端口輸出寫(xiě)信號(hào) 用于鎖存輸出狀態(tài)4 P0R1為讀鎖存器信號(hào) 執(zhí)行 ANLP0 0FH 時(shí)該信號(hào)有效 1 0 2 5 2P1口內(nèi)部結(jié)構(gòu) P1口內(nèi)部結(jié)構(gòu)如圖2所示輸出部分有內(nèi)部上拉電阻R 約為20K 其他部分與P0端口使用相類似 讀引腳時(shí)先寫(xiě)入1 寫(xiě)數(shù)據(jù) 讀端口 2 5 3P2口內(nèi)部結(jié)構(gòu) 2 當(dāng)控制信號(hào)為1時(shí)P2口輸出地址信息 此時(shí)單片機(jī)完成外部的取指操作或?qū)ν獠繑?shù)據(jù)存儲(chǔ)器16位地址的讀寫(xiě)操作 3 當(dāng)P2口作為普通I O口使用時(shí)用法和P1口類似 說(shuō)明 1 P2可以作為通用的I O 也可以作為高8位地址輸出 MCS 51片外總線結(jié)構(gòu)示意圖 返回 MCS 51單片機(jī)片外總線 P0 4 返回 6264 WE 單片機(jī)8031 P2 0 A8 ALE RD 74LS373 G A7 A0 P0 0 P0 7 OE CE Q0 Q7 D0 D7 A12 P2 4 WR D7 D0 2 5 4P3口內(nèi)部結(jié)構(gòu) 說(shuō)明 1 做普通端口使用時(shí) 第二功能應(yīng)為 1 2 使用第二功能時(shí) 輸出端口鎖存器應(yīng)為 1 3 變異功能 P3 0TXDP3 4T0P3 1RXDP3 5T1P3 2INT0P3 6WRP3 3INT1P3 7RD 2 5 5P0 P3端口功能總結(jié)使用中應(yīng)注意的問(wèn)題 1 P0 P3口都是并行I O口 但P0口和P2口還可用來(lái)構(gòu)建數(shù)據(jù)總線和地址總線 所以電路中有一個(gè)MUX 進(jìn)行轉(zhuǎn)換 2 而P1口和P3口無(wú)構(gòu)建系統(tǒng)的數(shù)據(jù)總線和地址總線的功能 因此 無(wú)需轉(zhuǎn)接開(kāi)關(guān)MUX 3 只有P0口是一個(gè)真正的雙向口 P1 P3口都是準(zhǔn)雙向口 原因 P0口作數(shù)據(jù)總線使用時(shí) 為保證數(shù)據(jù)正確傳送 需解決芯片內(nèi)外的隔離問(wèn)題 即只有在數(shù)據(jù)傳送時(shí)芯片內(nèi)外才接通 否則應(yīng)處于隔離狀態(tài) 為此 P0口的輸出緩沖器應(yīng)為三態(tài)門(mén) 4 P3口具有第二功能 因此在P3口電路增加了第二功能控制邏輯 這是P3口與其它各口的不同之處 P3口的第二功能 2 6單片機(jī)時(shí)序與復(fù)位時(shí)鐘電路用于產(chǎn)生單片機(jī)工作所必需的時(shí)鐘控制信號(hào) 2 6 1時(shí)鐘電路時(shí)鐘頻率直接影響單片機(jī)的速度 電路的質(zhì)量直接影響系統(tǒng)的穩(wěn)定性 常用的時(shí)鐘電路有兩種方式 內(nèi)部時(shí)鐘方式和外部時(shí)鐘方式 一 內(nèi)部時(shí)鐘方式內(nèi)部有一個(gè)用于構(gòu)成振蕩器的高增益反相放大器 其輸入端 XTAL1 輸出端 XTAL2 C1和C2典型值通常選擇為30pF左右 晶體的振蕩頻率在1 2MHz 12MHz之間 某些高速單片機(jī)芯片的時(shí)鐘頻率已達(dá)40MHz 二 外部時(shí)鐘方式常用于多片單片機(jī)同時(shí)工作 三 時(shí)鐘信號(hào)的輸出為應(yīng)用系統(tǒng)中的其它芯片提供時(shí)鐘 但需增加驅(qū)動(dòng)能力 2 6 2機(jī)器周期 指令周期與指令時(shí)序一 時(shí)鐘周期單片機(jī)的基本時(shí)間單位 若時(shí)鐘的晶體的振蕩頻率為fosc 則時(shí)鐘周期Tosc 1 fosc 如fosc 6MHz Tosc 166 7ns 二 機(jī)器周期CPU完成一個(gè)基本操作所需要的時(shí)間 執(zhí)行一條指令分為幾個(gè)機(jī)器周期 每個(gè)機(jī)器周期完成一個(gè)基本操作 MCS 51單片機(jī)每12個(gè)時(shí)鐘周期為一個(gè)機(jī)器周期 一個(gè)機(jī)器周期又分為6個(gè)狀態(tài) S1 S6 每個(gè)狀態(tài)又分為兩拍 P1和P2 因此 一個(gè)機(jī)器周期中的12個(gè)時(shí)鐘周期表示為 S1P1 S1P2 S2P1 S2P2 SP6P1 S6P2 三 指令周期執(zhí)行一條指令時(shí) 可分為取指令階段和指令執(zhí)行階段 取指令階段 PC中地址送到程序存儲(chǔ)器 并從中取出需要執(zhí)行指令的操作碼和操作數(shù) 指令執(zhí)行階段 對(duì)指令操作碼進(jìn)行譯碼 以產(chǎn)生一系列控制信號(hào)完成指令的執(zhí)行 ALE信號(hào)是為地址鎖存而定義的 以時(shí)鐘脈沖1 6的頻率出現(xiàn) 在一個(gè)機(jī)器周期中 ALE信號(hào)兩次有效 注意 在執(zhí)行訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器的指令MOVX時(shí) 將會(huì)丟失一個(gè)ALE脈沖 時(shí)鐘電路需外接晶振的頻率1 2 12MHZ C1和C2取30 10PF CPU的時(shí)序 時(shí)鐘周期 狀態(tài)周期 機(jī)器周期 若外接晶振為12MHz時(shí) 則單片機(jī)的四個(gè)周期的具體值為 時(shí)鐘周期 1 12MHz 1 12 s 0 0833 s狀態(tài)周期 1 6 s 0 167 s機(jī)器周期 1 s指令周期 1 4 s可用于計(jì)算指令 程序的執(zhí)行時(shí)間 以及定時(shí)器的定時(shí)時(shí)間 2 6 3復(fù)位電路單片機(jī)的初始化操作 擺脫死鎖狀態(tài) 引腳RST加上大于2個(gè)機(jī)器周期 即24個(gè)時(shí)鐘振蕩周期 的高電平就可使MCS 51復(fù)位 復(fù)位時(shí) PC初始化為0000H 使MCS 51單片機(jī)從0000H單元開(kāi)始執(zhí)行程序 除PC之外 復(fù)位操作還對(duì)其它一些寄存器有影響 見(jiàn)表2 8 P43 SP 07H P0 P3的引腳均為高電平 在復(fù)位有效期間 ALE腳和PSEN 腳均為高電平 內(nèi)部RAM的狀態(tài)不受復(fù)位的影響 2 7 2復(fù)位電路片內(nèi)復(fù)位結(jié)構(gòu) 上電自動(dòng)復(fù)位和按鈕復(fù)位最簡(jiǎn)單的上電自動(dòng)復(fù)位電路 按鍵手動(dòng)復(fù)位 有電平方式和脈沖方式兩種 電平方式脈沖方式 兩種實(shí)用的兼有上電復(fù)位與按鈕復(fù)位的電路 圖2 19中 b 的電路能輸出高 低兩種電平的復(fù)位控制信號(hào) 以適應(yīng)外圍I O接口芯片所要求的不同復(fù)位電平信號(hào) 74LS122為單穩(wěn)電路 實(shí)驗(yàn)表明 電容C的選擇約為0 1 F較好 Watch

溫馨提示

  • 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)論