版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、C:Documents and SettingsAdministratorLocal習題參考答 案.htm單片機原理及應(yīng)用思考題與習題參考答案緒論0.1 解:單片微型計算機( Single-Chip Microcomputer ),簡稱單片機。就是將微處理器( CPU )、 存儲器(存放程序或數(shù)據(jù)的 ROM 和 RAM )、總線、定時器 /計數(shù)器、輸入 /輸出接口( I/O 口) 和其他多種功能器件集成在一塊芯片上的微型計算機。單片機的主要特點有: ( 1)可靠性高( 2)便于擴展( 3)控制功能強( 4)低電壓、低功 耗( 5)片內(nèi)存儲容量較小,除此之外,單片機還具有集成度高、體積小、性價比
2、高、應(yīng)用廣 泛、易于產(chǎn)品化等特點0.2 解:當前單片機的主要產(chǎn)品有: Intel 的 8051 系列、 Motorola 的 M68HC 系列、 Philips (飛 利浦)的80C51系列、臺灣義隆公司 (EMC) EM78系列單片機、美國 Microchip公司的PIC 單片機系列、 Atmel 公司的 AT90 系列單片機 Ubicom 公司的 Scenix 單片機、 日本愛普生科技 公司的Epson單片機、Zilog公司的Z86系列、美國國家半導體公司NSCOP8單片機、臺灣Winbond (華邦)的 W78 系列等。MCS-51 為主流產(chǎn)品。MSP430的功能較強。是一種特低功耗的
3、Flash微控制器。主要用于三表及超低功耗場合。 EM78 系列單片機采用高速 CMOS 工藝制造,低功耗設(shè)計為低功耗產(chǎn)品,價格較低。具 有三個中斷源、 R-OPTION 功能、 I/O 喚醒功能、 多功能 I/O 口等。 具有優(yōu)越的數(shù)據(jù)處理性能, 采用 RISC 結(jié)構(gòu)設(shè)計。Microship 單片機是市場份額增長較快的單片機。它的主要產(chǎn)品是 PIC 系列 8位單片機。 CPU 采用 RISC 結(jié)構(gòu),運行速度快,價格低適于用量大、檔次低、價格敏感的產(chǎn)品。Motorola 是世界上最大的單片機生產(chǎn)廠家之一,品種全、選擇余地大、新產(chǎn)品多。其特 點是噪聲低,抗干擾能力強,比較適合于工控領(lǐng)域及惡劣的環(huán)
4、境。AVR是增強RISC內(nèi)載Flash的單片機,單片機內(nèi)部32個寄存器全部與 ALU直接連接, 突破瓶頸限制,每 1MHz 可實現(xiàn) 1MIPS 的處理能力,為高速、低功耗產(chǎn)品。端口有較強的負 載能力,可以直接驅(qū)動 LED 。支持 ISP、 IAP, I/O 口驅(qū)動能力較強。Scenix單片機除傳統(tǒng)的I/O功能模塊如并行 I/O、UART、SPI、I2C、A/D、PWM、PLL、 DTMF等,增加了新的I/O模塊(如USB、CAN、J1850、虛擬I/O等)。其特點是雙時鐘設(shè) 置,指令運行速度較快,具有虛擬外設(shè)功能,柔性化 I/O 端口,所有的 I/O 端口都可單獨編 程設(shè)定。Epson 單片機
5、主要為日本愛普生科技公司生產(chǎn)的 LCD 配套。其單片機的特點是 LCD 驅(qū) 動部分性能較好,低電壓、低功耗。Z8 單片機是 Zilog 公司的主要產(chǎn)品,采用多累加器結(jié)構(gòu),有較強的中斷處理能力。價格 低。COP8 單片機片內(nèi)集成了 16 位 A/D ,內(nèi)部使用了抗電磁干擾EMI ( Electro MagneticIn terfere nee)電路,在看門狗電路及單片機的喚醒方式上都有獨到之處。程序加密控制功能 也比較好。W78 系列與標準的 8051兼容, W77 系列為增強型 51 系列,對 8051 的時序作了改進, 在同樣時鐘頻率下,速度提高 2.5倍。 Flash ROM 容量從 4K
6、B 到 64KB ,有 ISP 功能。 0.3 解:( 1)第一階段( 19741976 年):制造工藝落后,集成度低,而且采用了雙片形式。典 型的代表產(chǎn)品有 Fairehild 公司的 F8 系列。其特點是:片內(nèi)只包括了8 位 CPU, 64B 的 RAM和兩個并行口, 需要外加一塊 3851芯片(內(nèi)部具有 1KB 的 ROM 、定時器 /計數(shù)器和兩個并行 口)才能組成一臺完整的單片機。(2) 第二階段(19771978年):在單片芯片內(nèi)集成 CPU、并行口、定時器/計數(shù)器、RAM 和 ROM 等功能部件,但性能低,品種少,應(yīng)用范圍也不是很廣。典型的產(chǎn)品有Intel 公司的 MCS-48 系
7、列。其特點是,片內(nèi)集成有 8 位的 CPU, 1KB 或 2KB 的 ROM , 64B 或 128B 的 RAM ,只有并行接口,無串行接口,有 1 個 8 位的定時器 /計數(shù)器,中斷源有 2 個。片外尋址 范圍為 4KB ,芯片引腳為 40 個。(3)第三階段( 19791982 年):8 位單片機成熟的階段。其存儲容量和尋址范圍增大,而且中斷源、并行 I/O 口和定時器 /計數(shù)器個數(shù)都有了不同程度的增加,并且集成有全雙工串 行通信接口。在指令系統(tǒng)方面增設(shè)了乘除法、位操作和比較指令。其特點是,片內(nèi)包括了8位的 CPU, 4KB 或 8KB 的 ROM , 128B 或 256B 的 RAM
8、 ,具有串 /并行接口, 2 個或 3 個 16 位的定時器/計數(shù)器,有57個中斷源。片外尋址范圍可達64KB,芯片引腳為40個。代表產(chǎn)品有 Intel 公司的 MCS-51 系列, Motorola 公司的 MC6805 系列, TI 公司的 TMS7000 系列, Zilog 公司的 Z8 系列等。(4)第四階段( 1983 年至今): 16 位單片機和 8 位高性能單片機并行發(fā)展的時代。 16 位機的工藝先進,集成度高,內(nèi)部功能強,運算速度快,而且允許用戶采用面向工業(yè)控制的 專用語言,其特點是,片內(nèi)包括了 16 位的 CPU, 8KB 的 ROM, 232B 的 RAM ,具有串 /并
9、行接口,4個16位的定時器/計數(shù)器,有8個中斷源,具有看門狗( Watchdog),總線控制部 件,增加了 D/A 和 A/D 轉(zhuǎn)換電路, 片外尋址范圍可達 64KB 。代表產(chǎn)品有 Intel 公司的 MCS-96 系列,Motorola公司的 MC68HC16系列,TI公司的TMS9900系列,NEC公司的783XX系 列和 NS 公司的 HPC16040 等。然而,由于 16 位單片機價格比較貴,銷售量不大,大量應(yīng)用 領(lǐng)域需要的是高性能、大容量和多功能的新型 8 位單片機。近年來出現(xiàn)的 32 位單片機,是單片機的頂級產(chǎn)品,具有較高的運算速度。代表產(chǎn)品有 Motorola 公司的 M6830
10、0 系列和 Hitachi (日立)公司的 SH 系列、 ARM 等。0.4 解:面對工控領(lǐng)域?qū)ο?嵌入到工控應(yīng)用系統(tǒng)中,實現(xiàn)嵌入式應(yīng)用的計算機稱之為嵌入式計 算機系統(tǒng),簡稱嵌入式系統(tǒng)。單片機從體系結(jié)構(gòu)到指令系統(tǒng)都是按照嵌入式應(yīng)用特點專門設(shè) 計的,能最好的滿足對控制對象、應(yīng)用系統(tǒng)的嵌入、現(xiàn)場的可靠運行以及非凡的控制品質(zhì)要 求。0.5 解: 選擇原則: 主要從指令結(jié)構(gòu)、運行速度、程序存儲方式和功能等幾個方面選擇單片機。MCS-51 為主流產(chǎn)品。Motorola 是世界上最大的單片機廠商。品種全、選擇余地大、新產(chǎn)品多。其特點是噪聲 低,抗干擾能力強,比較適合于工控領(lǐng)域及惡劣的環(huán)境。Microshi
11、p 單片機是市場份額增長較快的單片機。它的主要產(chǎn)品是 PIC 系列 8 位單片機。 其特點是運行速度快,低價位,適用于量大、檔次低、價格敏感的產(chǎn)品。美國德州儀器( TI )公司生產(chǎn)的 MSP430 系列單片機是一種特低功耗的 Flash 微控制器。 主要用于三表及超低功耗場合。在嵌入式系統(tǒng)低端的單片機領(lǐng)域, Intel 公司的 MCS-51 形成了既具有經(jīng)典性又不乏生命 力的一個單片機系列。 許多半導體廠家、 電器公司以 MCS-51 系列中的 8051 為基核, 推出了 許多兼容性的 CHMOS 單片機 80C51 系列。此外,還有 Zilog、EM78、Senix、NEC、Epson、NS
12、、三星、富士通、華邦、 Philips、 ARM 等單片機。第1章1.1 解:MCS-51 為主流產(chǎn)品。MSP430的功能較強。是一種特低功耗的 Flash微控制器。主要用于三表及超低功耗場合。EM78 系列單片機采用高速 CMOS 工藝制造,低功耗設(shè)計為低功耗產(chǎn)品,價格較低。具 有三個中斷源、 R-OPTION 功能、 I/O 喚醒功能、 多功能 I/O 口等。 具有優(yōu)越的數(shù)據(jù)處理性能, 采用 RISC 結(jié)構(gòu)設(shè)計。PIC系列8位單片機是 Microship公司的產(chǎn)品。CPU采用RISC結(jié)構(gòu),運行速度快,價格 低適于用量大、檔次低、價格敏感的產(chǎn)品。Motorola 是世界上最大的單片機生產(chǎn)廠家
13、之一,品種全、選擇余地大、新產(chǎn)品多。其特 點是噪聲低,抗干擾能力強,比較適合于工控領(lǐng)域及惡劣的環(huán)境。AVR是增強RISC內(nèi)載Flash的單片機,單片機內(nèi)部32個寄存器全部與 ALU直接連接, 突破瓶頸限制,每 1MHz 可實現(xiàn) 1MIPS 的處理能力,為高速、低功耗產(chǎn)品。端口有較強的負 載能力,可以直接驅(qū)動 LED。支持ISP、IAP,I/O 口驅(qū)動能力較強。1.2 解:MCS-51單片機在片內(nèi)集成了中央處理器( CPU )、程序存儲器(ROM )、數(shù)據(jù)存儲器 (RAM )、定時器 /計數(shù)器、并行 I/O 接口、串行 I/O 接口和中斷系統(tǒng)等幾大單元。CPU 是整個單片機的核心部件,由運算器和
14、控制器組成。運算器可以完成算術(shù)運算和邏 輯運算,其操作順序在控制器控制下進行。控制器是由程序計數(shù)器PC(Program Counter)、指令寄存器 IR( Instruction Register )、指令譯碼器 ID( Instruction Decoder )、定時控制邏輯和 振蕩器OSC等電路組成。CPU根據(jù)PC中的地址將欲執(zhí)行指令的指令碼從存儲器中取出,存放在IR中,ID對IR中的指令碼進行譯碼, 定時控制邏輯在 OSC配合下對ID譯碼后的信號 進行分時,以產(chǎn)生執(zhí)行本條指令所需的全部信號。程序存儲器( ROM )用于存儲程序、常數(shù)、表格等。數(shù)據(jù)存儲器( RAM )用于存儲數(shù)據(jù)。805
15、1內(nèi)部有兩個16位可編程序的定時器/計數(shù)器T0和T1,均為二進制加1計數(shù)器???用于定時和對外部輸入脈沖的計數(shù)。8051的中斷系統(tǒng)主要由中斷允許控制器IE和中斷優(yōu)先級控制器IP等電路組成??蓪崿F(xiàn)對5個中斷源的管理。8051的中斷系統(tǒng)主要由中斷允許控制器IE和中斷優(yōu)先級控制器 IP等電路組成。其中, IE 用于控制 5 個中斷源中哪些中斷請求被允許向 CPU 提出,哪些中斷源 的中斷請求被禁止; IP 用于控制 5 個中斷源的中斷請求的優(yōu)先權(quán)級別。I/O 接口是 MCS-51 單片機對外部實現(xiàn)控制和信息交換的必經(jīng)之路,用于信息傳送過程 中的速度匹配和增加它的負載能力??煞譃榇泻筒⑿?I/O 接
16、口。1.3 解:80C51單片機有4個I/O端口,每個端口都是 8位雙向口,共占32根引腳。每個端口都 包括一個鎖存器(即專用寄存器P0P3)、一個輸入驅(qū)動器和輸入緩沖器。通常把 4個端口稱為P0P3。在無片外擴展的存儲器的系統(tǒng)中,這4個端口的每一位都可以作為雙向通用I/O端口使用。在具有片外擴展存儲器的系統(tǒng)中,P2 口作為高8位地址線,P0 口分時作為低8位地址線和雙向數(shù)據(jù)總線。1.4 解:控制線一共有 6 條:( 1) ALE/:地址鎖存允許 /編程線,配合 P0 口引腳的第二功能使用。在訪問片外存儲器時,8051 CPU在P0.7P0.0引腳上輸出片外存儲器低8位地址的同時在ALE/上輸
17、出一個高電位脈沖,用于把這個片外存儲器低8位地址鎖存到外部專用地址鎖存器,以便空 出P0.7P0.0引腳線去傳送隨后而來的片外存儲器讀寫數(shù)據(jù)。在不訪問片外存儲器時,8051自動在 ALE/上輸出頻率為 fosc/6 的脈沖序列。 該脈沖序列可用作外部時鐘源或作為定時脈沖源使用。(2)/Vpp :允許訪問片外存儲器/編程電源線,可以控制8051使用片內(nèi)ROM還是使用片外ROM。若 =0,則允許使用片內(nèi)ROM;若=1則允許使用片外ROM。(3):片外ROM選通線,在執(zhí)行訪問片外ROM的指令M OVC時,8051自動在上產(chǎn)生一個負脈沖,用于為片外ROM芯片的選通。其他情況下線均為高電平封鎖狀態(tài)。(4
18、)RST/Vpd:復位/備用電源線,可以使8 0 5 1處于復位工作狀態(tài)。1.5 解:指令:人為輸入計算機,由計算機識別并執(zhí)行一步步操作的命令的形式稱為指令。 程序:一系列指令的有序集合稱為程序。程序在計算機中是按序執(zhí)行的,CPU通過程序計數(shù)器PC控制程序的執(zhí)行順序,一般情況下程序是按序執(zhí)行的,當執(zhí)行轉(zhuǎn)移、調(diào)用、返回等指令時,程序轉(zhuǎn)移到相應(yīng)的目的地址處 執(zhí)行。 CPU 根據(jù)程序計數(shù)器 PC 中的地址將欲執(zhí)行指令的指令碼從存儲器中取出,存放在 IR 中,ID對IR中的指令碼進行譯碼,定時控制邏輯在OSC配合下對ID譯碼后的信號進行分時,產(chǎn)生執(zhí)行本條指令所需的全部信號,完成本條指令的執(zhí)行。1.6
19、解:(1) 80C51在結(jié)構(gòu)上的特點8 0C51采用將程序存儲器和數(shù)據(jù)存儲器截然分開,分別尋址的結(jié)構(gòu),稱為Harvard結(jié)構(gòu)。( 2)在物理和邏輯上的地址空間存儲器上設(shè)有4個存儲器空間:片內(nèi)程序存儲器、片外程序存儲器、片內(nèi)數(shù)據(jù)存儲器、 片外數(shù)據(jù)存儲器。在邏輯上有3個存儲器地址空間:片內(nèi)、片外統(tǒng)一的6 4KB程序存儲器地址空間,片 內(nèi)2 5 6 B數(shù)據(jù)存儲器地址空間,片外64KB的數(shù)據(jù)存儲器地址空間。( 3)訪問格式訪問片內(nèi)RAM采用MOV格式訪問片外RAM采用M OVX格式1.7 解:堆棧是一個特殊的存儲區(qū)。 主要功能是暫時存放數(shù)據(jù)和地址, 通常用來保護斷點和現(xiàn)場。 它的特點是按照“先進后出”
20、的存取數(shù)據(jù)。堆棧指針SP是一個8位寄存器,是用于指示堆棧的棧頂?shù)刂返募拇嫫鳎鼪Q定了堆棧在內(nèi)部 RAM 中的物理位置。1.8 解:8 0 5 1有21個特殊功能寄存器 (PC除外),它們被離散地分布在內(nèi)部 RAM的80H FFH 地址單元中, 共占據(jù)了 128個存儲單元, 其中有 83位可以位尋址。 特殊功能寄存器 SFR 的分布和功能見教材 Pi8表122。1.9 解:8 0 5 1單片機的4個I/O口在結(jié)構(gòu)上是基本相同的,但又各具特點。這四個端口都 是8位雙向口,每個端口都包括一個鎖存器、一個輸出驅(qū)動器和輸入緩沖器。在無片外擴展 存儲器的系統(tǒng)中,這四個端口的每一位都可以作為雙向通用I/O端
21、口使用。在作為一般的 通用I/O輸入時, 都必須先向鎖存器寫入“1”,使輸出驅(qū)動場效應(yīng)管FET截止,以免誤讀數(shù)據(jù)。各自特點如下:(1) P0 口為雙向8位三態(tài)I/O 口,它既可作為通用I/O 口,又可作為外部擴展時的數(shù)據(jù) 總線及低 8 位地址總線的分時復用口。作為通用 I/O 口時,輸出數(shù)據(jù)可以得到鎖存,不需外接專用鎖存器;輸入數(shù)據(jù)可以得到緩沖,增加了數(shù)據(jù)輸入的可靠性。每個引腳可驅(qū)動8個TTL 負載。(2) P1 口為 8位準雙向 I/O 口, 內(nèi)部具有上拉電阻,一般作通用 I/O 口使用, 它的每一位都可以分別定義為輸入線或輸出線,作為輸入時,鎖存器必須置1。每個引腳可驅(qū)動 4 個TTL 負
22、載。(3) P2 口為8位準雙向I/O 口,內(nèi)部具有上拉電阻,可直接連接外部I/O設(shè)備。它與地址總線高8位復用,可驅(qū)動 4個TTL負載。一般作為外部擴展時的高8位地址總線使用。(4)P3 口為8位準雙向I/O 口,內(nèi)部具有上拉電阻,它是雙功能復用口,每個引腳可 驅(qū)動4個TTL負載。作為通用I/O 口時,功能與 P1 口相同,常用第二功能。作為第二功能 使用時,各位的作用見教材 P23表1.2.5所示。1.10 解:數(shù)據(jù)指針DPTR是16位的專用寄存器,它由兩個 8位的寄存器DPH (高8位)和DPL (低 8 位)組成。專門用來寄存片外 RAM 及擴展 I/O 口進行數(shù)據(jù)存取時的地址。編程時,
23、 既可以按 16 位寄存器來使用,也可以按兩個 8 位寄存器來使用(即高位字節(jié)寄存器DPH 和低位字節(jié)寄存器 DPL)。DPTR 主要是用來保存 16位地址,當對 64KB 外部數(shù)據(jù)存儲器尋址時,可作為間址寄存 器使用,1.11 解:程序狀態(tài)字 PSW 是 8 位寄存器,用于存放程序運行的狀態(tài)信息, PSW 中各 位狀態(tài)通常是在指令執(zhí)行的過程中自動形成的,但也可以由用戶根據(jù)需要采用傳送指令 加以改變。各個標志位的意義如下:PSW.7 (Cy):進位標志位。PSW.6( AC):輔助進位標志位,又稱為半進位標志位。PSW.5( F0):用戶標志位。PSW.4、PSW.3( RS1和 RS0):寄
24、存器組選擇位。PSW.2(OV ):溢出標志位。PSW.1 (空缺位):此位未定義。PSW.0( P):奇偶校驗位。1.12解:開機復位后,CPU使用的是第0組工作寄存器。它們的地址是OOH07H°CP U通過對程序狀態(tài)字PSW中RS1和RS0的設(shè)置來確定和改變當前工作寄存器組。1 .13 解:8051片內(nèi)數(shù)據(jù)存儲器有2 5 6 B尋址空間。存儲器空間的地址范圍為:OOH FFH在這個存儲器空間又可分為:基本的數(shù)據(jù)存儲區(qū):00H 7FH,可劃分為工作寄存器、位尋址區(qū)、堆棧與數(shù)據(jù) 緩沖區(qū)。SFR空間:80H FF H1.14解:片內(nèi)RAM低128單元劃分及主要功能如下:(1)工作寄存器
25、組(00H 1FH)這是一個用寄存器直接尋址的區(qū)域,內(nèi)部數(shù)據(jù)RAM區(qū)的0 3 1,共3 2個單元。它 是4個通用工作寄存器組,每個組包含8個8位寄存器,編號為R0R7。(2)位尋址區(qū)(2 0H2FH)16個字節(jié)單元,共包含12 8位,這16個字節(jié)單元既可以進行字節(jié)尋址,又可以實 現(xiàn)位尋址。主要用于位尋址。(3)堆棧與數(shù)據(jù)緩沖區(qū)(3 0H7FH)用于設(shè)置堆棧、存儲數(shù)據(jù)。1.15 解:程序存儲器通過/Vpp引腳選擇。若 =0,則允許使用片內(nèi)ROM; 若 =1則允許使用片外ROM。數(shù)據(jù)存儲器通過指令區(qū)分:訪問片內(nèi)RAM采用MOV指令,訪問片外RAM采用MO VX指令。1.16 解:時鐘周期又稱為振蕩
26、周期,由單片機內(nèi)部振蕩電路OSC產(chǎn)生,定義為 OSC時鐘頻率的倒數(shù)。時鐘周期又稱為節(jié)拍(用 P表示)。時鐘周期是時序中的最小單位。一個狀態(tài)有兩個 節(jié)拍,機器周期定義為實現(xiàn)特定功能所需的時間。MCS-51的機器周期由12個時鐘周期構(gòu)成。執(zhí)行一條指令所需要的時間稱為指令周期,指令周期是時序中的最大單位。由于機器執(zhí)行不同指令所需的時間不同,因此不同指令所包含的機器周期數(shù)也不盡相同。MCS-51的指令可能包括14個不等的機器周期。當MCS-51的主頻為12MHz時,一個機器周期為1 s。執(zhí)行一條指令需要的最長時間為4 s。1.17 解:8051單片機復位后機器的初始狀態(tài),即各寄存器的狀態(tài):PC之外,復
27、位操作還對其它 一些特殊功能寄存器有影響,它們的復位狀態(tài)如下:寄存器復位時內(nèi)容寄存器復位時內(nèi)容PC0000 HTCON0X 000000BACC00HTL000HB00HTH000HPSW00HTH100HSP07HTH100HDPTR0000HSCON00HPO P3FFHSBUF不確定TMODXX 000000BPCON0XXX 0000B單片機復位方法有:上電自動復位,按鍵電平復位和外部脈沖三種方式。第2章2.1 解:8051的指令系統(tǒng)由111條指令組成。如果按字節(jié)數(shù)分類,有 49條單字節(jié)指令46條雙字 節(jié)指令和16條三字節(jié)指令,以單字節(jié)指令為主;如果按照指令執(zhí)行時間分類,有64條單周期
28、指令、45條雙周期指令和2條四周期指令,以單周期指令為主。8051的指令系統(tǒng)具有以下特點:(1) 存儲效率高、執(zhí)行速度快,可以進行直接地址到直接地址的數(shù)據(jù)傳送,能把一個并行 I/O 口中的內(nèi)容傳送到內(nèi)部 RAM單元中而不必經(jīng)過累加器 A或工作寄存器 Rn。這樣可以大 大提高傳送速度和緩解累加器 A的瓶頸效應(yīng)。(2) 用變址尋址方式訪問程序存儲器中的表格,將程序存儲器單元中的固定常數(shù)或表格字 節(jié)內(nèi)容傳送到累加器 A中。這為編成翻譯算法提供了方便。(3)在算術(shù)運算指令中設(shè)有乘法和除法指令(4)指令系統(tǒng)中一些對I/O 口進行操作的指令具有“讀修改寫”的功能。這一功能指:在執(zhí)行讀鎖存器的指令時,CPU
29、首先完成將鎖存器的值通過緩沖器BUF2度入內(nèi)部,進行修改、改變,然后重新寫到鎖存器中去。這種類型指令包含所有的邏輯操作和位操作指令。(5)8051單片機內(nèi)部有一個布爾處理器,對為地址空間具有豐富的位操作指令。布爾操作類指令有17條,包括布爾傳送指令、布爾狀態(tài)控制指令、布爾邏輯操作指令、布爾條件轉(zhuǎn) 移指令。2.2 解:MCS-51單片機指令系統(tǒng)按功能可分為5類:(1)數(shù)據(jù)傳送指令(2)算術(shù)運算指令(3)邏輯運算和移位指令4)控制轉(zhuǎn)移指令 (5 )位操作指令MCS-51單片機的指令系統(tǒng)提供了七種尋址方式,其對應(yīng)的尋址范圍如下表:尋址方式使用的變量尋址范圍立即尋址程序存儲器直接尋址內(nèi)部RAM低128
30、個字節(jié); 特殊功能寄存器SFR寄存器尋址R0R7 ; A、B、DPTR、C寄存器間接尋址R0、R1、SP內(nèi)部RAM、堆棧指針SPR0、R1、DPTR外部RAM變址尋址A+PC、A+DPTR程序存儲器相對尋址PC+偏移量程序存儲器位尋址內(nèi)部RAM低128B位尋址區(qū) 可位尋址的特殊功能寄存器位2.3 解 :訪問特殊功能寄存器,應(yīng)采用直接尋址、位尋址方式。 訪問外部數(shù)據(jù)存儲器,應(yīng)采用寄存器間接尋址方式。在0255B范圍內(nèi),可用寄存器 R0 R1間接尋址:MOVX A , R0 或 MOVX A, R1MOVX R0, A 或 MOVX R1 , A在064KB范圍內(nèi),可用16位寄存器DPTR間接尋址
31、:MOVX A , DPTRMOVX DPTR , A2.4 解:這條指令是在進行 BCD 碼加法運算時,跟在“ ADD ”和“ ADDC ”指令之后,用來對 BCD 碼的加法運算結(jié)果自動進行修正的,使其仍為 BCD 碼表達形式。在計算機中, 遇到十進制調(diào)整指令時, 中間結(jié)果的修正是由 ALU 硬件中的十進制修正電 路自動進行的。 用戶不必考慮何時該加 “6 ”,使用時只需在上述加法指令后面緊跟一條“DAA ”指令即可。2.5 解 :雖然內(nèi)部RAM位尋址區(qū)的位地址范圍 00H7FH與低128個單元的單元地址范圍 00H 7FH 形式完全相同,但是在應(yīng)用中可以通過指令的類型區(qū)分單元地址和位地址。
32、位尋址的操作只適用于下列位指令,而直接尋址操作對這些指令是無效的。MOV C ,bitCPL bitJB bit ,relMOV bit ,CANL C ,bitJNB bit ,relCLR bitANLC , /bitSETB bit2.6 解 : 在實際應(yīng)用中,可從尋址范圍和指令長度兩個方面來選擇長跳轉(zhuǎn)指令LJMP 和短跳轉(zhuǎn)指令 AJMP 、長調(diào)用指令 LCALL 和短調(diào)用指令 ACALL 。長跳轉(zhuǎn)LJMP在64KB范圍內(nèi)轉(zhuǎn)移,而短跳轉(zhuǎn)AJMP只能在2KB空間轉(zhuǎn)移。長調(diào)用LCALL 調(diào)用位于 64KB 程序空間的子程序, 而短調(diào)用 ACALL 調(diào)用位于 2KB 程序空間范圍的子程序。 A
33、JMP、ACALL指令代碼長度為2個字節(jié);LJMP、LCALL指令代碼長度為3個字節(jié)。2.7 解 :指令的轉(zhuǎn)移范圍不同。SJMP是256B范圍內(nèi)的相對轉(zhuǎn)移指令,AJMP是2KB范圍內(nèi)的無條件短跳轉(zhuǎn)指令,LJMP 是 64KB 范圍內(nèi)的無條件長跳轉(zhuǎn)指令。2.8 解 :MOVC A , A+DPTR :訪問外部程序存儲器指令,功能為程序存儲器內(nèi)容送累加 器。MOVX A , DPTR :訪問外部數(shù)據(jù)存儲器指令,功能為外部數(shù)據(jù)存儲器內(nèi)容送累加器 指令2.9 解 : 使用 A+DPTR 基址變址尋址時, DPTR 為常數(shù)且是表格的首地址, A 為從表格首址到被訪問字節(jié)地址的偏移量。PC 仍是下條指令首
34、地址, 而 A 則是從下條指令首地址到使用 A+PC 基址變址尋址時, 常數(shù)表格中的被訪問字節(jié)的偏移量。2.10 解:結(jié)果為:(A )= 30H2.11 解:結(jié)果為: (61H)=24H(RO) =50H( 50H)= 00H( 51H)= 30H(31H)=0FFH2.12 解:指令MOV A,40HMOV R0,AMOV P1,#80H(62H)=10H(30H)=00HDPTR=241OHSP=6OH源操作數(shù)的尋址方式直接尋址 寄存器尋址 立即尋址執(zhí)行指令后的結(jié)果(A)=5OH (RO)=5OH (P1)=8OHMOV R0,20H寄存器間接尋址(50H)=30HMOV DPTR,#20
35、00H立即尋址(DPTR)=2000HMOV 40H,30H直接尋址(40H)=40HMOV R0,30H直接尋址(R0)=40HMOV D0H,R0直接尋址(D0H)=40HMOV 10H,#10H立即尋址(10H)=10HMOV A,R0寄存器間接尋址(A)=50HMOV P2,P1寄存器尋址(P2)=80H1)R1 的內(nèi)容傳送到 R0 ;2.13 解 :MOVA, R1MOVR0, A2) 片外 RAM 20H 單元內(nèi)容送 R0 ;MOVDPTR, #0020HMOVX A, DPTRMOVR0,A3) 片外 RAM 20H 單元的內(nèi)容送片內(nèi) RAM 20H 單元;MOV DPTR, #
36、0020HMOVXA,DPTRMOV20H,A4) 片外 RAM 1000H 單元的內(nèi)容送片內(nèi) RAM 20H 單元;MOV DPTR, #1000H MOVX A, DPTRMOV 20H, A5) ROM 2000H 單元的內(nèi)容送 R0 單元;MOVA, #00HMOV DPTR, #2000HMOVCA, A+DPTRMOV R0H, A6) ROM 2000H 單元的內(nèi)容送片內(nèi) RAM 20H 單元;MOVA, #00HMOV DPTR, #2000HMOVCA, A+DPTRMOV 20H, A7) ROM 2000H 單元的內(nèi)容送片外 RAM 20H 單元。MOVA,#00HMOV
37、DPTR,#2000HMOVCA, A+DPTRMOVDPTR,#0020HMOVX DPTR, A2.14 解:ORG 0000HLJMP STARTORG 0030HSTART:MOV A , 22HADD A , 32HDA AMOV A , 23H ADDC A , 33H DA AMOV 43H , A SJMP $ENDMOV 42H , A2.15 解:ORG 0000HMAIN :LJMP MAINORG 0030HMOV R7 , #20HMOV R1 , #40HMOV DPTR , #3000HLOOP : MOV A , R12.16 解:MAIN :ORG 0000H
38、LJMP MAINORG 0030HMOV R0 , #30HLP2 :MOV R1 , #00HMOV R2 , #00HMOV R3 , #07HMOV A , R0LP1 :ADD A , R2 MOV R2 , A JNC LP1INC R1INC R02.17 解:MOVX DPTR , AINC R1INC DPTRDJNZ R7 , LOOPSJMP $ENDDJNZ R3 , LP2MOV R3 , #03HLP3:CLR CMOV A , R1RRC AMOV R1 , AMOV A , R2 RRC AMOV R2 , A DJNZ R3 , LP3MOV 3AH , R2
39、 SJMP $ENDSTART:NET1 :ORG 0000HLJMP STARTORG 0030HMOV DPTR , #2001H MOVX A , DPTRMOV 30H , AMOV DPTR , #2002H MOVX A , DPTR ADD A , 30HMOVB , AMUL ABMOV R1 , ACJNE A , #10, NET1 MOV DPTR , #2000H MOVX DPTR , A SJMP NET3JNC NET2CLR CMOV A , R1SUBB A , #10MOV DPTR , #2000HMOVX DPTR , ANET2 :SJMP NET3M
40、OV A , R1ADD A , #102.18 解:ORG0000HLJMPMAINORG0030hMAIN:MOVDPTR,#2000HMOVA,#OFFHMOVXDPTR,AMOVDPTR,#2100HMOVA,#34HMOVXDPTR,AMOVDPTR,#2008HMOVA,#33HMOVXDPTR,AMOVDPTR,#2108HMOVA,#44HMOVXDPTR,AMOVDPTR,#200EHMOVA,#0EEHMOVXDPTR,AMOVDPTR,#210EHMOVA,#32HMOVXDPTR,AMOVDPTR,#2000HMOVR1,#30HMOVR2,#15LOOP:MOVXA,
41、DPTRMOVR1,AINCDPTRINCR1DJNZR2,LOOPMOVR1,#30H2.19 解:ORG 0000HLJMP MAINORG 0030HMOV DPTR , #2000HMOVX DPTR , ANET3 :SJMP $ENDMOVDPTR,#2100HMOVR2,#15MOVR0,#40HLOOP2:MOVXA,DPTRCLRCADDCA,R1INCLOOP1MOVR0,01SJMPLOOP4LOOP1:MOVR0,#00LOOP4:INCROMOVR0,AINCR1INCDPTRINCRODJNZR2,LOOP2MOVR0,#40HMOVDPTR,#2200HMOVR2
42、,#30LOOP3:MOVA,R0MOVX DPTR,AINCR0INCDPTRDJNZR2,LOOP3SJMP$ENDMAIN : MOV R2 , #100MOV R3 , #00HMOV R4 , #00HMOV R5 , #00HINC R4MOV DPTR , #2000HINC DPTRLOOPMOVX A , DPTRDJNZ R2 , LOOPCJNE A , #00H , NET1SJMP NET3INC R3NET2 :INC R5INC DPTRINC DPTRDJNZ R2 , LOOPDJNZ R2 , LOOPSJMP NET3NET3 :SJMP $NET1 :J
43、C NET2END2.20 解:ORG0000HMOVXA,DPTRLJMPMAINMOVR0,AORG0030HINCDPTRMAIN:INCR0MOVDPTR,#1000HDJNZR2,LOOPMOVA,#22HMOVDPTR,#1000HMOVXDPTR,AMOVA,#00MOVDPTR,#1030HMOVR2,#31HMOVA,#33HLOOP1:MOVXDPTR,AMOVXDPTR,AMOVDPTR,#1000HINCDPTRMOVR2,#31HDJNZR2,LOOP1MOVR0,#30HSJMP$LOOP:END2.21 解:ORG 0000HCJNE A , 21H , LOOP
44、LJMP MAINLOOP :JNC LOOP1ORG 0100HMOV A , 20HMAIN :MOV DPTR , #2040HMOVX DPTR , AMOV R2 , #50DEC DPTRCLR 7FHMOV A , 21HDEC R2MOVX DPTR , ALS :MOVX A , DPTRINC DPTRMOV 20H , ASETB 7FHINC DPTRLOOP1DJNZ R2 , LSMOVX A , DPTRJB 7FH , MAINMOV 21H , ASJMP $MOV A , 20HEND2.22 解:ORG0000HMAIN:LJMPMAINLCALLSUBO
45、NEORG0030HAJMP$;SUBONE use dptr,a,30h,31hSUBONE:MOV DPTR,#2000HLOOP:MOVX A,DPTRXRLA,#41HJNZTTMOV A,30HMOV DPTR,#20A0HMOVX DPTR,AMOV DPTR,#20A1H2.23 解:ORG 0000HLJMP MAINORG 0030HMAIN : MOV R2 , #20MOV R1 , #30HMOV DPTR , #2000H TT :MOVX A , DPTRCLR CSUBB A , #30HSWAP AMOV 41H , AINC DPTRMOVX A , DPTR
46、CLR CSUBB A , #30HMOV R1 , A2.24 解:ORG 0000HLJMP MAINORG 0030HMAIN:MOV DPTR,#2400HMOV A,#07HMOVX DPTR,AMOV A,31HMOVX DPTR,ARETTT:INCDPTRMOV 30H,DPHMOV31H,DPLMOV A,31HCJNEA,0 0H,L OOPRETENDMOV A , 41HXCHD A , R1MOV R1 , AINC R1INC DPTRDJNZ R2 , TTMOV DPTR , #3000HMOV R1 , #30HMOV R2 , #0AHTT1 :MOV A
47、, R1MOVX DPTR , AINC R1INC DPTRDJNZ R2 , TT1SJMP $ENDMOV 32H,#25HMOV 33H,#00HMOV R2,#51HLOOP:MOV DPH,30HMOV DPL,31HMOVX A,DPTRMOVDPH,32HMOVDPL,33HMOVXDPTR,AINC31HINC33HMOV DPTR,2450HMOV A,#06HMOVX DPTR,AMOV 30H,#24HMOV 31H,#00HDJNZ R2,L00PENDAJMP $2.25 解:ORG 0000HLJMP MAINMAINORG 0030HMOV DPTR,#2030
48、HMOV A,#03HMOVX DPTR,AMOV DPTR,#2031HMOV A,#05HMOVX DPTR,AMOV DPTR,#2030HMOVX A,DPTR LCALLSQRMOV R1,AMOV DPTR,#2031HMOVX A,DPTR LCALLSQRADD A,R1MOV DPTR,#2040HMOVX DPTR,ASQR:TAB:AJMP $INC AMOVC A,A+PCRETDB 0,1,4,9,16,25DB 36,49,64,81,100DB 121,144,169,196,225 END3.1 解:當CPU正在處理某件事情的時候,外部發(fā)生的某一事件請求CPU迅
49、速去處理,CPU暫時中止當前的工作,轉(zhuǎn)去處理所發(fā)生的事件, 處理完該事件以后,再回到原來被中止的地方, 繼續(xù)原來的工作。這種過程為中斷,實現(xiàn)這種服務(wù)的部件稱為中斷系統(tǒng)。功能:實時處理,能對外界異步發(fā)生的事件作出及時的處理。完全消除了CPU在查詢方式中的等待現(xiàn)象,大大提高了CPU的工作效率。實現(xiàn)實時控制。3.2 解:中斷優(yōu)先級是 CPJ向應(yīng)中斷的先后順序。中斷優(yōu)先處理的原則是:先響應(yīng)優(yōu)先級高的中斷請求,再響應(yīng)優(yōu)先級低的中斷請求。(2) 如果一個中斷請求己被響應(yīng),同級的其他中斷請求將被禁止。(3) 如果同級的多個中斷請求同時出現(xiàn),CPU則按單片機內(nèi)部的自然優(yōu)先級順序響應(yīng)各中斷請求。單片機內(nèi)部自然優(yōu)
50、先級順序(由高到低)為 :外部中斷0宀定時器0中斷t外部中斷It定時器1中斷t串行接口中斷。3.3 解:(1)80C51有以下中斷源:夕卜部中斷0 ()請求,低電平有效。夕卜部中斷1 ()請求,低電平有效。T0:定時器/計數(shù)器0溢出中斷請求。T1:定時器/計數(shù)器1溢出中斷請求。TI/RI :串行接口中斷請求。(2) 通過對特殊功能寄存器 TCON SCON IE、IP的各位進行置位或復位等操作,可實現(xiàn)對 各種中斷的控制功能。3.4 解:中斷系統(tǒng)的初始化步驟如下:(1) 開相應(yīng)中斷源的中斷允許;(2) 設(shè)定所用中斷源的中斷優(yōu)先級;(3) 若為外部中斷,則應(yīng)規(guī)定中斷觸發(fā)方式(低電平或負邊沿觸發(fā))。
51、3.5 解:單片機一旦響應(yīng)中斷請求,就由硬件完成以下功能:(1) 根據(jù)響應(yīng)的中斷源的中斷優(yōu)先級 ,使相應(yīng)的優(yōu)先級狀態(tài)觸發(fā)器置1 ;(2) 執(zhí)行硬件中斷服務(wù)子程序調(diào)用 ,并把當前程序計數(shù)器 PC的內(nèi)容壓入堆棧,保護 斷點,尋找中斷源;(3) 清除相應(yīng)的中斷請求標志位(串行口中斷請求標志RI和TI除外);(4) 把被響應(yīng)的中斷源所對應(yīng)的中斷服務(wù)程序的入口地址(中斷矢量)送入PC,從而轉(zhuǎn)入相應(yīng)的中斷服務(wù)程序。(5) 中斷返回,程序返回斷點處繼續(xù)執(zhí)行。3.6 解:(1) 由中斷源提出中斷請求,由中斷控制允許控制決定是否響應(yīng)中斷,如果允許響應(yīng)中斷,則CPU按設(shè)定好的優(yōu)先級的順序響應(yīng)中斷。 如果是同一優(yōu)先級的中斷, 則按單片機內(nèi) 部的自然優(yōu)先級順序(外部中斷 0t定時器0中斷T外部中斷I T定時器1中斷T串行接口 中斷)響應(yīng)中斷。CPU響應(yīng)中斷請求后,就立即轉(zhuǎn)入執(zhí)行中斷服務(wù)程序。保護斷點、尋找中斷源、中斷 處理、中斷返回,程序返回斷點處繼續(xù)執(zhí)行。(2) 由中斷允許寄存器IE控制開放和禁止中斷。 欲開放某一中斷,則應(yīng)先開放總中斷允許(EA置1),然后開放相應(yīng)中斷的中斷允許(相應(yīng)位置1 );若要要禁止中斷,則 EA置O即可。(3) 由中斷優(yōu)先級控制寄存器 IP控制中斷優(yōu)先級,相應(yīng)位置 1,則設(shè)為高級中斷,置 0 則為低級。其中:PS為串行中斷優(yōu)先
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024版機電設(shè)備安裝合同范本
- 2024版學校廢物管理承包合同3篇
- 2025年度電子元器件展參展商權(quán)益保障協(xié)議模板3篇
- 2025年度城市垃圾分類處理承包合同3篇
- 2025年度房屋租賃管理及押金合同4篇
- 二零二四平安普惠企業(yè)融資借款合同3篇
- 2025版路燈設(shè)施智能監(jiān)控系統(tǒng)建設(shè)合同4篇
- 2025年度高新技術(shù)產(chǎn)業(yè)園區(qū)廠房租賃合同補充協(xié)議3篇
- 2024離婚訴訟費用分擔及財產(chǎn)處理合同
- 2025年度旅游景區(qū)旅游安全風險評估與應(yīng)急預案合同4篇
- 八年級英語教材分析
- 新能源居間合同協(xié)議書范本
- 經(jīng)外周中心靜脈置管術(shù)(PICC)知情同意書
- 福建省福州市鼓樓實驗小學教育集團2023-2024學年五年級下學期期中英語試題
- 消防安全隱患等級
- 溫室氣體(二氧化碳和甲烷)走航監(jiān)測技術(shù)規(guī)范
- 有關(guān)傳統(tǒng)文化的謎語
- 藥品代持協(xié)議書
- 嘔血護理查房
- 2024年新青島版(六三制)三年級下冊科學全冊知識點
- 朝韓關(guān)系相關(guān)分析
評論
0/150
提交評論