1. 80c51單片機基礎練習習題 資料 試題
第二章 單片機的基本結構與工作原理
2·1 80C51系列單片機在片內集成了哪些主要邏輯功能都件?各個邏輯部件的主要功能是什麼?
答:80C51系列單片機在片內集成了以下主要邏輯功能部件及分別有如下的主要功能。
(l)CPU(中央處理器):8位
功能:中央處理器由中央控制器與運算器一起構成。中央控制器是識別指令,並根據指令性質控制計算機各組成部件進行工作的部件。
(2)片內RAM:128B
功能:在單片機中,用隨機存取存儲器(RAM)來存儲程序在運行期間的工作變數和數據,
所以稱為數據存儲器。一般,在單片機內部設置一定容量(64B至256B)的RAM。這樣小容
量的數據存儲器以高速RAM的形式集成在單片機內,以加快單片機運行的速度。同時,這種結構的RAM還可以使存儲器的功耗下降很多。
(3)特殊功能寄存器:21個
功能:特殊功能寄存器(SFR)是80C51單片機中各功能部件所對應的寄存器,用以存放相
應功能部件的控制命令、狀態或數據的區域。這是80C51系列單片機中最有特色的部分。現在所有80C51系列功能的增加和擴展幾乎都是通過增加特殊功能寄存器(SFR)來達到的。
80C51系列單片機設有128B內部數據RAM結構的特殊功能寄存器(SFR)空間區。除
程序計數器PC和4個通用工作寄存器組外,其餘所有的寄存器都在這個地址空間之內。
(4)程序存儲器:4KB
功能:80C51單片機的程序存儲器用於存放經調試正確的應用程序和表格之類的固定常
數。由於採用16位的程序計數器PC和16位的地址匯流排,因而其可擴展的地址空間為64KB,而且這64KB地址空間是連續、統一的。
(5)並行I/O口:8位,4個
功能:為了滿足"面向控制"實際應用的需要,80C51系列單片機提供了數量多、功能強、使用靈活的並行I/O口。80C51系列單片機的並行I/O口,不僅可靈活地選作輸人或輸出,而且還具有多種功能。例如,它既是I/O口,又是系統匯流排或是控制信號線等,從而為擴展外部存儲器和I/O介面提供了方便,大大拓寬了單片機的應用范圍。
(6)串列介面:全雙工,1個
功能:全雙工串列I/O口,提供了與某些終端設備進行串列通信,或者和一些特殊功能的器件相連的能力;甚至可用多個單片機相連構成多機系統,使單片機的功能更強和應用更廣。
(7)定時器/計數器:16位,2個
功能:在單片機的實際應用中,定時器/計數器提供精確的定時,或者對外部事件進行計
數。為了減少軟體開銷和提高單片機的實時控制能力,因而均在單片機內部設置定時器/計數器電路,通過中斷,實現定時/計數的自動處理。
(8)片內時鍾電路:1個
功能:計算機的整個工作是在時鍾信號的驅動下,按照嚴格的時序有規律地一個節拍一個節拍地執行各種操作的。各種計算機均有自己的固定時序和定時電路。同樣,80C51系列單片機內部也設有定時電路,只須外接振盪元件即可工作。外接振盪元件一般選用晶體振盪器,或用價廉的RC振盪器,也可用外部時鍾源作振盪元件。近來也有的單片機將振盪元件也集成在晶元內部,這樣不僅大大縮小了單片機的體積,同時也方便了使用。
2·2 80C51系列單片機有哪些信號需要晶元引腳以第二功能的方式提供?
答:
第一功能 第二功能
串列口:
P3.0 RXD(串列輸入口)
P3.1 TXD(串列輸出口)
中斷:
P3.2 INT0外部中斷0
P3.3 INT1外部中斷1
定時器/計數器(T0、T1):
P3.4 T0(定時器/計數器0的外部輸入)
P3.5 T1(定時器/計數器1的外部輸入)
數據存儲器選通:
P3.6 WR(外部存儲器寫選通,低電平有效,輸出)
P3.7 RD(外部存儲器讀選通,低電平有效,輸出)
定時器/計數器(T2):
P1.0 T2(定時器T2的計數端)
P1.1 T2EX(定時器T2的外部輸入端)
2.3 程序計數器PC作為不可定址寄存器,它打哪些特點?地址指針DPTR有哪些特點?與程存計數器 PC有何異同?
答(1)程序計數器PC作為不可定址寄存器的特點
程序計數器PC是中央控制器申最基本的寄存器,是一個獨立的計數器,存放著下一條將程序存儲器中取出的指令的地址。
程序計數器PC變化的軌跡決定程序的流程。程序計數器的寬度決定了程序存儲器可以
定址的范圍。
程序計數器PC的基本工作方式有:
①程序計數器PC自動加1。這是最基本的工作方式,也是這個專用寄存器被稱為計數
器的原因。
②執行條件或無條件轉移指令時,程序計數器將被置入新的數值,程序的流向發生變化。
變化的方式有下列幾種:帶符號的相對跳轉SJMP、短跳轉AJMP、長跳轉LJMP及JMP @A+DPTR等。
③在執行調用指令或響應中斷時:
●PC的現行值,即下一條將要執行的指令的地址送入堆棧,加以保護;
●將子程序的入口地址或者中斷矢量地址送入PC,程序流向發生變化,執行子程序或中斷服務程序;
●子程序或中斷服務程序執行完畢,遇到返回指令RET或RETI時,將棧頂的內容送到PC寄存器中,程序流程又返回到原來的地方,繼續執行。
(2)地址指針DPTR的特點
地址指針DPTR的特點是,它作為片外數據存儲器定址用的地址寄存器(間接定址)。
(3)地址指針DPTR與程序計數器PC的異同
①相同之處:
●兩者都是與地址有關的、16位的寄存器。其中,PC與程序存儲器的地址有關,而
DPTR與數據存儲器的地址有關。
●作為地址寄存器使用時,PC與DPTR都是通過P0和P2口(作為16位地址匯流排)輸
出的。但是,PC的輸出與ALE及PSEN有關;DPTR的輸出,則與ALE、RD及WR相聯系。
②不同之處:
●PC只能作為16位寄存器對待,由於有自動加1的功能,故又稱為計數器;
DPTR可以作為16位寄存器對待,也可以作為兩個8位寄存器對待。
●PC是不可以訪問的,有自己獨特的變化方式,它的變化軌跡決定了程序執行的流程;
DPTR是可以訪問的,如MOV DPTR,#XXXXH,INC DPTP。
2. 4 80C51存儲器在結拘上有何特點?在物理上和邏輯上各有哪幾種地址空間?訪問片內RAM和片外 RAM的指今格式有何區別?
答: (1)80C51存儲器在結構上的特點
80C51採用將程序存儲器和數據存儲器截然分開,分別定址的結構,稱為哈佛(Harvard)
結構。
(2)在物理上和邏輯上的地址空間
①在物理上設有4個存儲器空間:片內程序存儲器、片外程序存儲器、片內數據存儲器、
片外數據存儲器。
②在邏輯上有3個存儲器地址空間:片內、片外統一的64KB程序存儲器地址空間,片內
256B(或384B)數據存儲器地址空間,片外64KB的數據存儲器地址空間。
(3)訪問片內RAM和片外RAM的指令格式
訪問片內RAM採用MOV格式。
訪問片外RAM採用MOVX格式。
2·5 80C51單片機的EA信號有何功能?在使用80C31時,EA信號引腳應如何處理?
答: (1)80C51單片機的EA信號的功能
EA為片外程序存儲器訪問允許信號,低電平有效;在編程時,其上施加21V的編程電壓
EA引腳接高電平時,程序從片內程序存儲器開始執行,即訪問片內存儲器;EA引腳接低電平時,迫使系統全部執行片外程序存儲器程序。
(2)在使用80C31時,EA信號引腳的處理方法
因為80C31沒有片內的程序存儲器,所以在使用它時必定要有外部的程序存儲器,EA 信號引腳應接低電平。
2·6 片內RAM低128單元劃分為哪三個主要部分?各部分主要功能是什麼?
答: 片內RAM低128單元的劃分及主要功能:
(l)工作寄存器組(00H~lFH)
這是一個用寄存器直接定址的區域,內部數據RAM區的0~31(00H~lFH),共32個單
元。它是4個通用工作寄存器組,每個組包含8個8位寄存器,編號為R0~R7。
(2)位定址區(20H~2FH)
從內部數據RAM區的32~47(20H~2FH)的16個位元組單元,共包含128位,是可位尋
址的RAM區。這16個位元組單元,既可進行位元組定址,又可實現位定址。
(3)位元組定址區(30H~7FH)
從內部數據RAM區的48~127(30H~7FH),共80個位元組單元,可以採用間接位元組定址
的方法訪問。
2·7 80C51設有 4個通用工作寄存器組,有什麼特點?如何選用?如何實現工作寄存器現場保護?
答: (1)通用工作寄存器組的特點
用寄存器直接定址,指令的數量最多,均為單周期指令,執行速度快。
(2)通用工作寄存器組的選用
在某一時刻,只能選用一個工作寄存器組使用。其選擇是通過軟體對程序狀態字(PSW
中的RS0、RSl位的設置來實現的。設置RS0、RSl時,可以對PSW進行位元組定址,也可以進行位定址,間接或直接修改RS0、RSl的內容。若RSl、RS0均為0時,則選用工作寄存器組0;若RSl、RS0為1時,則選用工作寄存器組1;其他以此類推。
(3)工作寄存器的現場保護
對於工作寄存器的現場保護,一般在主程序中使用一組工作寄存器;而在進人子程序或中斷服務程序時,切換到另一組工作寄存器;在返回主程序前,再重新切換回原來的工作寄存器。
2·8 堆棧有哪些功能?堆棧指示器(SP)的作用是什麼?在程序設計時,為什麼還要對 SP重新賦值?
答: (1)堆棧的功能
堆棧是內部數據RAM區中,數據先進後出或後進先出的區域。其具體功能有兩個:保護斷點和保護現場。
(2)堆棧指示器(SP)的作用
堆棧指示器(SP)是一個8位寄存器,存放當前的堆棧棧頂所指存儲單元地址的。
(3)對SP的重新賦值
系統復位後,SP內容為07H。如不重新定義,則以07H為棧底,壓棧的內容從08H單元開始存放;如需使用深度較大的堆棧時,將會影響到工作寄存器的使用。所以要對SP進行重新的賦值,使堆棧區設定在片內數據·RAM區中的某一空白區域內,堆棧深度以不超過片內RAM空間為限。
2·9 為什麼說 80C51具有很強的布爾(位)處理功能7共有多少單元可以位定址?採用布爾處理有哪些優點7
答 (1)80C51具有很強的布爾(位)處理功能
在80C5I單片機系統中,與位元組處理器相對應,還特別設置了一個結構完整的布爾(位)
處理器。在該系統中,除了程序存儲器和ALU與位元組處理器合用之外,還有自己的:
①累加器CY:借用進位標志位。在布爾運算中,CY是數據源之一,又是運算結果的存
放處,是位數據傳送中的中心。根據CY的狀態,程序轉移:JC rel,JNC rel,JBC rel。
②位定址的RAM區:從內部數據RAM區的32~47(20H~2FH)的16個位元組單元,共包含128位(0~127),是可位定址的RAM區。
③位定址的寄存器:特殊功能寄存器(SFR)中的可位定址的位。
④位定址的並行I/O口:P0、Pl、P2及P3各口的每一位都可以進行位定址。
⑤位操作指令系統:位操作指令可實現對位的置位、清0、取反、位狀態判跳、傳送、位邏輯、運算、位輸人/輸出等操作。
強大的布爾(位)處理功能,是80C5l系列單片機的突出優點之一。
(2)可以位定址單元的數目
可以位定址的單元共有228個。分布在:
①RAM區:20H~2FH位元組中所有位,共計有128個單元。
②特殊功能寄存器區:P0、TCON、Pl、SCON、P2、IE、P3、1P.PSW、A、B、PCON及TMOD中的相應位,共計95個單元(IE中有兩位無定義,IP中有三位無定義,PSW中有一位無定義,PCON中有三位無定義)。
(3)採用布爾處理方法的優點
利用位邏輯操作功能進行隨機邏輯設計,可把邏輯表達式直接變換成軟體執行,方法簡
便;免去了過多的數據往返傳送、位元組屏蔽和測試分支,大大簡化了編程,節省存儲器空間,加快了處理速度;還可實現復雜的組合邏輯處理功能。所有這些,特別適用於某些數據採集,實時測控等應用系統。這些給"面向控制"的實際應用帶來了極大的方便,是其他微機機種所無可比擬的。
2·10 80C51單片機的時中周期、機器周期、指令周期是如何設置的?當主頻為 12MHZ時,一個機器周期等子多少微秒(us)?執行一條最長的指令需多少微秒(us)?
答:1) 80C51中定時單位的設置為時序定時單位,共有4個,從小到大依次是:節拍、狀態、機器周期和指令周期。
●時鍾周期:節拍是CPU處理動作的最小周期稱為時鍾周期。一個狀態周期就包含兩
個節拍,其前半周期對應的節拍叫Pl,後半周期對應的節拍叫P2.
●機器周期80C51採用定時控制方式,因此它有固定的機器周期。規定一個機器周期
的寬度為6個狀態,並依次表示為Sl~S6。由於一個狀態又包括兩個節拍,因此一個
機器周期總共有12個節拍,分別記作SlPl、SlP2…S6P2。由於一個機器周期共有12
個振盪脈沖周期,因此機器周期就是振盪脈沖的12分頻。
當振盪脈沖頻率為12MHz時,1個機器周期為lus;當振盪脈沖頻率為6MHz時,1個
機器周期為2us。
●指令周期:執行一條指令所需要的時間稱為指令周期。指令周期是最大的時序定時單
位。80C51的指令周期根據指令的不同,可包含有1、2、3、4個機器周期。
2)當主頻為12MHz時,1個機器周期為1件s。
3)執行一條時間最長的指令-----MUI,和DIV指令,需要4個機器周期,即需要4us。
2·11 單片機有幾種復往方法?復往後抗暴的初始狀態如何,即各寄存器的狀態如何?
答: (1)單片機復位方法
單片機復位方法有:上電自動復位、按鍵電平復位和外部脈沖三種方式,如題圖2-1所示。
題圖2-1
(2)復位後的初始狀態
復位後機器的初始狀態,即各寄存器的狀態:PC之外,復位操作還對其他一些特殊功能寄存器有影響,它們的復位狀態如題表2-1所例.
2. 12 舉例說明單片機在工業控制系統中低功耗工作方式的意義及方法。
答: 1. 低功耗系統設計的意義
按傳統觀念,低功耗系統只是攜帶型系統中考慮的問題。然而,從經典電子系統發展到現代電子系統,低功耗系統應是一切現代電子系統的普通取向。實現系統運行的低功耗是現代電子系統的普通取向,是"綠色"電子的基本要求。除了節省能源外,低功耗系統還具有顯著的電磁兼容EMC(Electro Magnetic Compatib;lily)效益和可靠性效益。
(1)實現"綠色"電子,節省能源
在許多現代電子系統,如家用電器和視頻音像系統中,普遍採用遙控操作,在不使用時大都處於待機狀況下。據有關部門統計,目前,許多家用電器在備用狀態下耗費的電量已超過實際使用中消耗的電量。據報道,美國家用電器每年在備用狀態下浪費的能源達10億美元。採用低功耗系統設計,不僅能減少使用中的功耗,而且可以減少備用狀態下的功耗。
在節省能源的同時,許多低功耗設計採用的最大靜態化設計有利於減少電磁污染。
(2)促進便攜化發展
低功耗設計技術有利於電子系統向便攜化發展。攜帶型電腦/筆記本電腦是低功耗系統
設計的成果。現代電子系統便攜化拓寬了它的應用領域。
(3)誘人的可靠性效益
低功耗系統設計不可避免要走全CMOS化道路和功耗管理的道路。在數字電路中,
MOS電路有較大的雜訊容限;在功耗管理中,常採用休閑、掉電、睡眠、關斷及電源關閉等方式,在這些方式下系統對外界雜訊失敏,大大減少了因雜訊干擾產生的出錯概率。
2. CMOS電路是低功耗系統設計的首選
(1)CMOS電路的功耗特性
CMOS電路的功耗特性十分鮮明,表現在本質低功耗,靜態與動態功耗的巨大差異及功耗可控性等因素上.
①本質低功耗:在題表2-2中,將高速CMOS邏輯電路與傳統TTL邏輯電路的功耗進行了對比.
可以看出:CMOS器件有極低的靜態功耗,並要求極小的輸人驅功電流。因此,使用
CMOS電路器件可構成本質低功耗的電路系統。
②靜、動態功耗的巨大差異:從題表2-1中看出,傳統的TTL電路中,沒有靜、動態功耗差異,也就不存在利用無謂等待狀態的低功耗運行方式。在CMOS電路中,靜、動態功耗差異十分顯著,而且動態功耗與時鍾速度相關,隨時鍾頻率加大,功耗急劇上升。由於CMOS電路中的靜、動態功耗的巨大差異,形成了CMOS器件中形形色色的低功耗運行方式。各種低]耗方式的核心,就是CMOS電路的最大靜態化控制。
③動態功耗相關參數多:根據動態功耗P"是瞬間導通功耗PTC與靜態功耗PC之和,J
表達式為
PA=PTC+Pc=VDD×ITC+fCL×V2DD
動態功耗PA除直接與電源電壓VDD、時鍾頻率土及輸出電容CL有關外,導通電流ITC還與邏輯電平的跳變速率有關。這些相關因素都是CMOS電路系統中的重要運行參數。要設計最小功耗系統,就要在系統中根據實際的時、空運行狀態來管理這些參數,保證系統有最小的運行功耗。
④靜態功耗的溫度特性:CMOS電路的靜態功耗主要是保護二級管和PMOS、NMOS管
寄生二極體的泄漏電流。常溫下,靜態功耗極小,但隨溫度增高呈指數上升,對溫度敏感。;
多數CMOS電路在85 0C或125 0C 工作環境下,其靜態功耗大約是常溫下的30~50倍,相應的輸人電流約增加10倍以上。
(2)降低CMOS電路功耗的途徑
按照CMOS電路的功耗特性,降低功耗的途徑如下:
①大力降低系統或器件的工作電壓。隨著器件工作電壓的下降,功耗會顯著下降。目
前,集成電路器件普遍從+5V電源向+3V電源過渡。有些低功耗的CMOS器件己出現
2.7V、1.8V的工作電壓,表明了電壓控制在CMOS電路中的重要作用。
②控制CMOS器件申的時鍾頻率。時鍾宜低不宜高;同時,時鍾不用時應及時關斷,實
現系統的最大時空靜態化管理來降低系統功耗。在CMOS器件中,有許多低功耗方式就是基於系統時鍾管理來實現的。
③在CMOS電路系統中實施最大限度的靜態化運行管理。使無謂等待下的電路處於靜
態功耗,關閉時鍾,停止動態輸人或關閉電源。
3. 低功耗系統中單片機的選擇和應用
低功耗系統設計中,器件選擇是基礎。選擇的器件不僅要求本質低功耗,而且要求具有良好的功耗控制功能。
(1)採用CMOS工藝製造的單片機
目前單片機已普遍採用高速CMOS工藝,應用系統設計時,不再選用非CMOS單片機。
在低功耗系統設計的單片機選擇時,主要考慮單片機的本質低功耗與功耗管理性能。CMOS工藝製造的80C51系列單片機具有優良的功耗管理性能,
(2)低功耗運行方式
早期CMOS單片機的功耗控制主要是對系統時鍾實施管理而出現的休閑ID(IDle)方式
和掉電PD(Power Down)方式。當通過編程式控制制IDL,位有效時,迸人ID方式,關閉進人CPU的時鍾,CPU停止運行,只保留中斷系統、定時器/計數器、串列口的操作功能。要退出ID方式時,可採用申斷或復位操作。編程式控制制PD位有效時,時鍾停振,單片機內部所有功能單元部停止操作。因此,要退出PD方式只有通過復位,清除PD編程位。
題表2-3給出了80C51正常運行、ID、PD方式下的功耗數據。從表中可以大致看出,不同時鍾頻率及不同運行方式下的功耗狀況;可以明顯地看出,CMOS單片機中時鍾頻率及時鍾控制對功耗的重要影響。
題表2-3 80C51不同頻率不同方式下的功耗狀況
(3)單片機的電壓及雙時鍾功耗控制
目前除了採用PD、ID的低功耗運行方式外,還可以採用降低電壓和設置雙時鍾(主時鍾、
子時鍾)的方式來進一步降低功耗。例如,目前有許多帶雙時鍾和寬電源電壓的單片機,在正常運行時可以使用3V供電,降低功耗;除了在工作時鍾下的運行ID方式外,還可以在子時鍾支持下運行慢速(SLOW)和睡眠(SLEEP)方式,以及使全部時鍾停止的停振(STOP)方式。
題表2-4為東芝TLCS一870在不同方式下的功耗狀況。TLCS一870可工作在2.7~6V,主
時鍾為1~8MHz,子時鍾為32.8kHz。雙時鍾的設置能使單片機高速運行或低速運行,實現控制功能.
題表2-4 TLCS-870不同方式下的功耗狀況
有的單片機在設定了主時鍾後,在其內部還可以對時鍾進行分頻,以降低系統運行速度來進一步降低功耗。
2·13 單片機"面向掛創"應用的特點,在硬體結拘方面有哪些體現?
答:單片機"面向控制"應用的特點,體現在硬體結構方面有以下幾點:
①由於考慮到單片機"面向控制"的實際應用的特點,一般需要較大的程序存儲器,因此
目前的單片機以採用程序存儲器和數據存儲器截然分開的結構為多。這種結構稱為哈佛(Harvard)結構。80C51單片機系列的存儲器採用的就是這種結構,即將程序存儲器和數據存
儲器截然分開,程序存儲器和數據存儲器各有自己的定址方式、定址空間和控制系統。
這種結構對於單片機"面向控制"的實際應用極為方便、有利。
②為了滿足"面向控制"實際應用的需要,單片機提供了數量多、功能強、使用靈活的並行I/O口。不同單片機的並行I/O電路在結構上稍有差異。有些單片機的並行I/I口,不僅而靈活地選作輸人或輸出,而且還具有多種功能。例如,它既是IO口,又是系統匯流排,或是控制信號線等,從而為擴展外部存儲器和1/0介面提供了方便,大大拓寬了單片機的應用范圍。
③在單片機的實際應用中,往往需要精確的定時,或者需對外部事件進行計數。為了減
少軟體開銷和提高單片機的實時控制能力,因而均在單片機內部設置定時器/計數器電路減
過中斷,實現定時/計數的自動處理。
④在80C51單片機系統中,與位元組處理器相對應,還特別設置了一個結構完整、功能極強的布爾(位)處理器。這是80C5l系列單片機的突出優點之一。這給"面向控制"的實際應用並來了極大的方便。
在位處理器系統申,除了程序存儲器和ALU與位元組處理器合用之外,還有自己的:
●累加器CY:借用進位標志位。在布爾運算中,CY是數據源之一,又是運算結果的存
放處,位數據傳送中的中心。根據CY的狀態,程序轉移:
JC rel
JNC rel
JBC rel
●位定址的RAM.:RAM區中的0~127位。
●位定址的寄存器:特殊功能寄存器(SFR)申的可位定址的位。
位定址的並行I/O口:P0、Pl、P2及P3各口的每一位都可以進行位定址。
2·14 80C51單片機運行出錯或程序進入死循環,如何擺脫困境?
答:當由於程序運行出錯或操作錯誤使系統處於死鎖狀態時,需按復位鍵以重新啟動。
2. 單片機考試試題 急用 謝謝
修改如下:
ORG 0000H
LJMP 1000H
ORG 0003H
LJMP 2000H ;轉到外部中斷0
ORG 001BH
LJMP 3000H ;轉到定時器1中斷程序
ORG 1000H ;主程序
SETB EX0
SETB ET1
SETB EA ;以上開放是中斷
SETB PT1 ;設置定時器1為高級
SJMP $
ORG 2000H ;外部中斷0程序
RETI
ORG 3000H ;定時器1中斷程序
RETI
3. MCS-51單片機試題
三.簡答題:(每題8分共24分)
1. MCS-51單片機中斷的開放和關閉是如何控制的?如果要對定時器T1開放中斷,可以用什麼指令實現?
答:通過對中斷允許寄存器IE進行設置,可以控制中斷的開放和關閉。
執行:
SETB ET1
SETB EA
即可開放T1中斷。
2. 設程序執行前F0=0,RS1,RS0=00B,請問機器執行如下程序後PSW中各位的狀態是什麼?程序如下:
MOV A,#0FH
ADD A,#F8H (要求寫出過程)
PSW中有四位標志位,隨著運算指令發生變化。
MOV A,#0FH P=0,C不變,V不變,Ac不變
ADD A,#F8H (要求寫出過程)
0000 1111
+ 1111 1000
-------------------
1 0000 0111 P=1,C=1,V=0,Ac=1
ACC=03H
3. 簡述80C51單片機的I/O口的功能和特點;
輸入、輸出;
准雙向口,輸入之前,應先輸出1。
四:程序分析與系統設計(1,2.3每題8分,4題12分,共36分)
1. 設內部RAM的30H單元的內容為40H,即(30H)=40H,還知(40H)=10H,(10H)=00H,埠P1=CAH,問執行以下指令後,各有關寄存器,存儲單元和埠的內容是什麼?(即R0,R1,A,B,P1,40H,30H及10H單元)
MOV R0, #30H (R0)=30H
MOV A, @R0 (A) =((R0))=(30H)=40H
MOV R1, A (R1)=40H
MOV B, @R1 (B)=((R1))=(40H)=10H
MOV @R1, P1 ((R1))即(40H)=CAH
MOV P2, P1 (P2)=CAH
MOV 10H, #20H (10H)=20H
MOV 30H, 10H (30H)=(10H)=20H
2.若要完成以下的數據傳送,應如何用MCS-51指令來實現?
(1).R1的內容傳送到R0.
MOV A, R1
MOV R0, A
(2).外部RAM20H的內容傳送到R0.
MOV DPTR, #20H
MOVX A, @DPTR
MOV R0, A
(3)外部RAM 20H的內容傳送到內部RAM 20H單元.
MOV DPTR, #20H
MOVX A, @DPTR
MOV 20H, A
3.設變數X存放於VAR單元,函數Y存放在RUNC單元.試按照下式編程給Y 賦值.
?????
4. 編寫程序:利用定時/計數器T0的方式1,產生10ms的定時,並使P1.0引腳上輸出周期為20ms的方波,採用中斷方式,設系統時鍾頻率為12 MHz。
ORG 0000H
SJMP START
ORG 000BH
SJMP T0_INT
START:
MOV TMOD, #01H
MOV TH0, #0D8H
MOV TL0, #0F0H
SETB TR0
MOV IE, #82H
SJMP $
T0_INT:
MOV TH0, #0D8H
MOV TL0, #0F0H
CPL P1.0
RETI
END
;完
-------------------------
補充:
3.設變數X存放於VAR單元,函數Y存放在RUNC單元.試按照下式編程給Y 賦值.
Y=1 x>0
Y=0 x=0
Y=-1 x<0
答:
MOV A, VAR ;取數
JZ LING ;為零轉移
JB ACC.1, FU ;為負轉移
MOV RUNC, #1 ;正
SJMP WAN ;轉移到「完」
FU:
MOV RUNC, #255 ;255就是-1
SJMP WAN
LING:
MOV RUNC, #0
WAN:
SJMP $ ;原地轉移
;真完了。
4. 求單片機試卷答案,急!
簡答題:
2)F060 3)定址方式不同 4)因為P0口即做數據口,又做地址的低八位。
5)
選擇題:
D C A A C A CE C C B C B C A A
5. 求單片機原理及介面技術 試題及答案
單片機模擬試卷001
一、選擇題(每題1分,共10分)
1.8031單片機的( )口的引腳,還具有外中斷、串列通信等第二功能。
a)P0 b)P1 c)P2 d)P3
2.單片機應用程序一般存放在( )
a) RAM b)ROM c)寄存器 d)CPU
3.已知某數的BCD碼為0111 0101 0100 0010 則其表示的十進制數值為( )
a) 7542H b) 7542 c) 75.42H d) 75.42
4.下列指令中不影響標志位CY的指令有( )。
a)ADD A,20H b)CLR c)RRC A d)INC A
5.CPU主要的組成部部分為( )
a)運算器、控制器 b)加法器、寄存器
c)運算器、寄存器 d)運算器、指令解碼器
6.INTEL 8051 CPU是( )位的單片機
a) 16 b)4 c)8 d)准16
7.8031復位後,PC與SP的值為( )
a )0000H,00H b) 0000H,07H c) 0003H,07H d)0800H,00H
8.當需要從MCS-51單片機程序存儲器取數據時,採用的指令為( )。
a)MOV A, @R1 b)MOVC A, @A + DPTR
c)MOVX A, @ R0 d)MOVX A, @ DPTR
9.8031單片機中既可位定址又可位元組定址的單元是( )
a)20H b)30H c)00H d)70H
10.下列哪條指令是正確的( )
a) PUSH R2 b) ADD R0,A
c) MOVX A @DPTR d) MOV @R0,A
二、填空題(每空1分,共30分)
1.一個完整的微機系統由 和 兩大部分組成。
2.8051 的引腳RST是____(IN腳還是OUT腳),當其端出現____電平時,8051進入復位狀態。8051一直維持這個值,直到RST腳收到____電平,8051才脫離復位狀態,進入程序運行狀態,從ROM H單元開始取指令並翻譯和執行。
3.半導體存儲器分成兩大類 和 ,其中 具有易失性,常用於存儲 。
4.求十進制數-102的補碼(以2位16進制數表示),該補碼為 。
5.PC存放_______________,具有___________特性。在8051中決定程序執行順序的是PC還是DPTR? 它是______位? (是,不是)SFG?
6.123= B= H。
7.8051內部有 並行口,P0口直接作輸出口時,必須外接 ;並行口作輸入口時,必須先 ,才能讀入外設的狀態。
8.MCS-51的堆棧只可設置在 ,其最大容量為 ,存取數據的原則是 。堆棧寄存器SP是 位寄存器,存放 。
9.中斷處理的全過程分為以下3個段: 、 、 。
10.定時和計數都是對 進行計數,定時與計數的區別是
。
三、判斷題(對者打√,錯者打×,並改正,每題1分,共10分)
1 中斷服務程序的最後一條指令是RET。
2 存儲器分成內存和外存兩大部分,其中外存可以直接與CPU交換信息。
3 P2口既可以作為I/O使用,又可以作地址/數據復用口使用。
4 在中斷響應階段CPU一定要做如下2件工作:保護斷點和給出中斷服務程序入口地址。
5 RC A為循環左移指令。
6 MOV A,30H的源操作數為立即定址方式。
7 MOV A,@A+DPTR是一條查表指令。
8 MUL AB的執行結果是高8位在A中,低8 位在B中。
9 AJMP跳轉空間最大可達到64KB 。
10 DPTR是由DPH和DPL兩個8位特殊寄存器組成的。
四、簡答題(每題5分,共15分)
1.MCS51的中斷系統有幾個中斷源?幾個中斷優先順序?中斷優先順序是如何控制的?在出現同級中斷申請時,CPU按什麼順序響應(按由高級到低級的順序寫出各個中斷源)?各個中斷源的入口地址是多少?
2.已知單片機系統晶振頻率為6MHz,若要求定時值為10ms時,定時器T0工作在方式1時,定時器T0對應的初值是多少?TMOD的值是多少?TH0=?TL0=?(寫出步驟)
3.MCS51系列單片機的內部資源有哪些?說出8031、8051和8751的區別。
五、作圖題(10分)
用6264(8K*8)構成16K的數據存儲系統。要求採用線選法產生片選信號,並計算6264的地址范圍。
六、設計題(1題13分;2題12分,共25分)
1.某單片機控制系統有8個發光二極體。試畫出89C51與外設的連接圖並編程使它們由左向右輪流點亮。
2.某控制系統有2個開關K1和K2,1個數碼管,當K1按下時數碼管加1,K2按下時數碼管減1。試畫出8051與外設的連接圖並編程實現上述要求。
單片機模擬試卷001答案
一、選擇題(每題1分,共10分)
1. D 2. B 3. B 4. D 5. A 6. C 7. B 8. B 9. A 10. D
二、填空題(每空1分,共30分)
1.一個完整的微機系統由硬體和軟體兩大部分組成。
2.8051 的引腳RST是IN腳(IN腳還是OUT腳),當其端出現高電平時,8051進入復位狀態。8051一直維持這個值,直到RST腳收到低電平,8051才脫離復位狀態,進入程序運行狀態,從ROM 0000 H單元開始取指令並翻譯和執行。
3.半導體存儲器分成兩大類:RAM ROM,其中 RAM 具有易失性,常用於存儲 臨時性數據 。
4.求十進制數-102的補碼(以2位16進制數表示),該補碼為¬¬¬¬ 9AH 。
5.PC存放_CPU將要執行的指令所在的ROM單元的地址,具有自動加1特性。在8051中決定程序執行順序的是PC還是DPTR PC ?它是16位?不是(是,不是)SFG?
6.123= 01010010 B= 52 H。
7.8051內部有 4 個並行口,P0口直接作輸出口時,必須外接 上拉電阻 ;並行口作輸入口時,必須先 將口鎖存器置1 ,才能讀入外設的狀態。
8.MCS-51的堆棧只可設置在 內RAM低128B區 ,其最大容量為 128B ,存取數據的原則是 先進後出 。堆棧寄存器SP是 8 位寄存器,存放 堆棧棧頂的地址 。9.中斷處理的全過程分為以下3個段: 中斷請求 、 中斷響應 、 中斷服務 。
10.定時和計數都是對 脈沖 進行計數,定時與計數的區別是 定時是對周期已知的脈沖計數;計數是對周期未知的脈沖計數 。
三、判斷題(對者打√,錯者打×,並改正,每題1分,共10分)
1 中斷服務程序的最後一條指令是RETRETI。×
2 存儲器分成內存和外存兩大部分,其中外內存可以直接與CPU交換信息。×
3 P2口既可以作為I/O使用,又可以作地址/數據復用口使用。√
4 在中斷響應階段CPU一定要做如下2件工作:保護斷點和給出中斷服務程序入口地址。√
5 LCRL A為循環左移指令。×
6 MOV A,30H的源操作數為立即直接定址方式。
7 MOVMOVC A,@A+DPTR是一條查表指令。×
8 MUL AB的執行結果是高低8位在A中,低高8 位在B中。×
9 AJMP跳轉空間最大可達到642KB 。
10 DPTR是由DPH和DPL兩個8位特殊寄存器組成的。 √
四、簡答題(每題5分,共15分)
1.MCS51的中斷系統有幾個中斷源?幾個中斷優先順序?中斷優先順序是如何控制的?在出現同級中斷申請時,CPU按什麼順序響應(按由高級到低級的順序寫出各個中斷源)?各個中斷源的入口地址是多少?
答:MCS51單片機有5個中斷源,2個中斷優先順序,中斷優先順序由特殊功能寄存器IP控制,在出現同級中斷申請時,CPU按如下順序響應各個中斷源的請求:INT0、T0、INT1、T1、串口,各個中斷源的入口地址分別是0003H、000BH、0013H、001BH、0023H。
2.已知單片機系統晶振頻率為6MHz,若要求定時值為10ms時,定時器T0工作在方式1時,定時器T0對應的初值是多少?TMOD的值是多少?TH0=?TL0=?(寫出步驟)
答:定時值為10ms時,定時器T0工作在方式1時,定時器T0對應的初值是1388H
TMOD的值是00000001B,TH0=13H;TL0=88H。
3.MCS51系列單片機的內部資源有哪些?說出8031、8051和8751的區別。
答:MCS51系列單片機上有1個8位CPU、128B的RAM、21個SFR、4個並行口、1個串列口、2個定時計數器和中斷系統等資源。8031、8051和8751的區別是8031內無ROM;8051內有4KB的掩膜ROM;8751內有4KB的EPROM。
五、作圖題(10分)
答:WR接6264的WE
RD接6264的OE
AB0---AB12接6264的A0---A12
DB0—DB7接6264的D0—D7
AB15、AB14分別接Y0和Y1
地址:0000H---1FFFH;2000H---3FFFH
六、設計題
1.某單片機控制系統有8個發光二極體。試畫出89C51與外設的連接圖並編程使它們由右向左輪流點亮。
答: 圖 (5分) 構思 (3分)
MOV A,#80H (1分)
UP:MOV P1,A (1分)
RR A (2分)
SJMP UP (1分)
2.某控制系統有2個開關K1和K2,1個數碼管,當K1按下時數碼管加1,K2按下時數碼管減1。試畫出8051與外設的連接圖並編程實現上述要求。
答:圖 (5分) 構思 (3分)
程序(4分)
ORG 0000H
LJMP MAIN
ORG 0003H
LJMP AINT0
ORG 0013H
LJMP BINT1
MAIN: MOV IE,#83H
SETB IT0
SETB IT1
MOV R0,#00H
MOV DPTR,#TAB
UP: MOV A,R0
MOVC A,@A+DPTR
MOV P1,A
SJMP UP
AINT0: INC R0
CJNE R0,#10,AINT01
MOV R0,#0
AINT01: RETI
BINT1: DEC R0
CJNE R0,#0FFH,BINT11
MOV R0,#9
BINT11: RETI
6. 單片機試題一
8051匯編語言的指令格式如下:
[標號:] 操作碼助憶符 [操作數1,] [ 操作數2,] [操作數3,] [;注釋]
操作碼助憶符體現該指令的功能,它對應一條二進制編碼的機器指令。指令的操作數個數由該指令的確定,可以沒有操作數,也可以有一個、二個或三個操作數。絕大多數指令的操作數要顯式的寫出來,但也有指令的操作數是隱含的,不需要在指令中寫出。
綜上,8051匯編語言的指令格式中,唯一不可缺少的部分是指令操作碼。
7. 單片機試題解答
一,選擇題
1.當CPU響應外部中斷0後,PC的值是( A )
A.0003H B.2000H C.000BH D.3000H
2.當MCS-51復位時,下面說法准確的是(A)
A.PC=0000H B.SP=00H C.SBUF=00H D.(30H)=00H
3.要用傳送指令訪問MCS-51片外RAM,它的指令操作碼助記符是( B)
A.MOV B.MOVX C.MOVC D.以上都行
4.ORG 2000H
LACLL 3000H
ORG 3000H
RET
上邊程序執行完RET指令後,PC=(C )
A.2000H B.3000HC .2003H D.3003H
5.要使MCS-51能響應定時器T1中斷,串列介面中斷,它的中斷允許寄存器IE的內容應是( A)
A.98H B.84H C.42H D.22H
6.JNZ REL指令的定址方式是(C)
A.立即定址 B.寄存器定址 C.相對定址 D.位定址
7.要把P0口高4位變0,低4位不變,應使用指令( D)
A.ORL P0,#0FH B.ORL P0,#0F0H C. ANL P0,#0F0H D.ANL P0,#0FH
8若某存儲器晶元地址線為12根,那麼它的存儲容量為( C)
A. 1KB B. 2KB C.4KB D.8KB
9.PC中存放的是( A )
A.下一條指令的地址 B. 當前正在執行的指令
C.當前正在執行指令的地址 D.下一條要執行的指令
10. 若MCS-51中斷源都編程為同級,當他們同時申請中斷時CPU首先響應(A )
A. INT0 B. INT1 C.T1 D.T0
11.編寫程序產生的代碼一般存儲在(B)。
A、RAM B、ROM C、EEROM D、SDRAM
12.51系列單片機採用12M晶振的機器周期為(A)。
A、1US B、2US C、4US D、12US
13. 在CPU內部,反映程序運行狀態或反映運算結果的特徵寄存器是(B )。A、PC B、PSW C、ACC D、SP
14. 要用傳送指令訪問片外RAM,它的指令操作助記符是(B )。
A、MOV B、MOVX C、MOVC D、PUSH
15. 開機復位後,CPU使用的是第0組工作寄存器,地址范圍是(B )。
A、00H-10H B、00H-07H C、10H-1FH D、08H-0FH
16. 80C51系列單片機有中斷源 (D )。
A、2個 B、3個 C、4個 D、5個
17. 某存儲器晶元的地址線為11根,那麼它的存儲容量為 ( B)。
A、1KB B、2KB C、3KB D、4KB
18. 提高單片機的晶振頻率fosc,則機器周期Tcy( C)。
A、不變 B、變長 C 、變短 D、不定
19. 關於80C51的堆棧操作,正確的說法是(A )
A、先入棧,再修改指針 B、先修改指針,再出棧
C、先修改指針,再入棧 D、以上都不對
20. 擴展4X4的矩陣鍵盤需要佔用多少個I/O口(B)
A、4 B、8 C、16 D、12
8. 單片機試題
《單片機原理及介面技術》試卷(閉卷A卷) 一.單項選擇題(每題1分,共20分) 1.DPTR為( C) A.程序計數器 B.累加器 C.數據指針寄存器 D.程序狀態字寄存 2.PSW的Cy位為( B) A.輔助進位標志 B.進位標志 C.溢出標志位 D.奇偶標志位 3.MCS-51單片機片內ROM容量為( A ) A.4KB B.8KB C.128B D.256B 4.MCS-51單片機片要用傳送指令訪問片外數據存儲器,它的指令操作碼助記符是以下哪個?( B) A.MUL B.MOVX C.MOVC D.MOV 5.direct表示( C ) A.8位立即數 B.16位立即數 C.8位直接地址 D.16位地址 6.堆棧指針SP是一個( A )位寄存器 A.8 B.12 C.13 D.16 7.定時器/計數器工作方式選擇中,當M1M0=11時,其工作方式為( D ) A.方式0 B.方式1 C.方式2 D.方式3 8.定時器/計數器工作方式0為( A) A.13位定時/計數方式 B.16位定時/計數方式 C.8位可自動裝入計數初值方式 D.2個8位方式 9.MCS-51的最小時序定時單位是( A ) A.節拍 B.狀態 C.機器周期 D.指令周期 10.#data表示( A ) A.8位直接地址 B.16位地址 C.8位立即數 D.16位立即數 11.主頻為12MHz的單片機它的機器周期為(C ) A.1/12微秒 B.0.5微秒 C.1微秒 D.2微秒 12.MCS-51單片機在同一優先順序的中斷源同時申請中斷時,CPU首先響應( A )。 A.外部中斷0 B.外部中斷1 C.定時器0中斷 D.定時器1中斷 13.MOVC A ,@A+PC指令對於源操作數的定址方式是( D ) A.寄存器間接定址 B.寄存器定址 C.立即定址 D.變地定址 14. 為( C ) A.復位信號輸入端 B.地址鎖存允許信號輸出端 C.程序存儲允許輸出端 D.程序存儲器地址允許輸入端 15.MCS-51單片機的一個機器周期由(D )個振盪脈沖組成。 A.2 B.4 C.6 D.12 16.MOVC A ,#30H指令對於源操作數的定址方式是( C ) A.寄存器間接定址 B.寄存器定址 C.立即定址 D.變地定址 17.計算機能直接識別的語言為( B) A.匯編語言 B. 機器語言 C.自然語言 D.硬體和軟體 18.PSW的OV位為( C ) A.輔助進位標志 B.進位標志 C.溢出標志位 D.奇偶標志位 19.在單片機中( A )為程序存儲器。 A.ROM B. RAM C.EPROM D.EEPROM 20.能用紫外線光擦除ROM中的程序的只讀存儲器為( C ) A.掩膜ROM B.PROM C.EPROM D.EEPROM 二、填空(每題 2 分,共 10 分) 1、從單片機系統擴展的角度出發,單片機的引腳可以構成三匯流排結構,即 數據 匯流排、地址匯流排和 控制 匯流排。 2、ALE信號的作用是 鎖存低8位地址信號(或 低8位地址鎖存) 。 3、MOV A,40H 指令對於源操作數的定址方式是 直接 定址。 4、PC存放的內容為: 下一條要執行的指令的地址 。 5、MCS-8051系列單片機字長是 8 位,有 40 根引腳。 三、簡答題:(共 25 分) 1、什麼是單片機?簡述單片機的應用領域。(15 分) 答:單片微型計算機簡稱單片機,它是把微型計算機的各個功能部件:中央處理器CPU、隨機存儲器RAM、只讀存儲器ROM、定時/計數器及I/O介面電路等集成在一塊晶元上,構成一個完整的微型計算機。 應用領域:(1)單片機在智能儀器儀表中的應用;(2)單片機在工業控制中的應用;(3)單片機在計算機網路與通信技術中的應用;(4)單片機在日常生活及家電中的應用。 2、什麼叫中斷?中斷有什麼特點?(10 分) 答:(1)「中斷」是指計算機在執行某段程序的過程中,由於計算機系統內、外的某種原因,當出現CPU以外的某種情況時,由服務對象向CPU發出中斷請求信號,要求CPU暫時中斷當前程序的執行而轉去執行相應的處理程序,待處理程序執行完畢後,再返回繼續執行原來被中斷的程序。 (2)特點:分時操作;實時處理;故障處理。 四.已知:(R1)=32H,(30H)=AAH,(31H)=BBH,(32H)=CCH,求執行下列指令後累加器A.50H.R6.32H.和P1口中的內容。(10分) MOV A ,#30H MOV 50H ,A MOV R6 ,31H MOV @R1 ,31H MOV P1,32H 解:上述指令執行後的操作結果為: A=30H (50H)=30H R6=BBH (32H)=BBH P1=BBH 五、分析執行如下指令後,PSW中的Cy 、Ac、OV、P各為多少? A中的結果用十進製表示是多少?(15分) MOV A,#85H ADD A,#0AEH Cy=1,Ac=1,OV=1,P=0。(A)=51 六、編程題: (每小題10分,共20分) 1、在程序中定義一個0——9的平方表,利用查表指令找出累加器A=03的平方值。(10分) 解:編程如下: ORG 0050H MOV DPTR,#TABLE ;表首地址→DPTR MOV A,# ;03→A MOVC A ,@A+DPTR ;查表指令,25→A SJMP $ ;程序暫停 TABLE:DB 0,1,4,9,16,25,36,49,64,81 ;定義0——9平方表 END 2、試採用兩種方法編製程序,開放定時器T1的溢出中斷。(10分) 解:編程如下: MOV IE,88H 或者MOV A8H,88H 或者 SETB EA SETB ET1
以上回答你滿意么?
9. 單片機測試題
分開答吧,我答前幾題。後面的朋友繼續。
二,填空題( 共5題,每空1分)1. 復位時SP的值為_07H____,P1口的值為__0FFH_____。
2. MCS-51單片機存儲器物理上分為__片內數據存儲器_____、_片外數據存儲器____、_片內程序存儲器__和_片外程序存儲器_。
3. 關於堆棧類操作的兩條指令分別是_____入棧指令PUSH_________ 、___出棧指令POP_________。
4. MCS-51有五個中斷源分別為_INT0____、__T0____、__INT1_____、__T1______、__串列通信口____。
5. MCS-51有兩種存儲器_數據存儲器RAM____和_程序存儲器ROM____。(此答案不確定)
三,簡答計算題( 共4題,每題5分)
4. SP=27H PC=3456H
四, 讀程序,寫結果( 共5題,每題6分)
1.
執行後結果 A=33H B=23H
2.
(A)=24H
3.
6655H+11FFH結果送到(51H)(50H)
4. 執行下列程序段後,內部RAM中的30H、31H、DPTR 以及SP單元中的內容是什麼?
(30H)=00H,(31H)=0FFH,(DPTR)=0100H,(SP)=60H
5. 求各有關單元的最終結果
CY=1,(41H)=07H,(40H)=54H
10. 單片機試題求助
1.(40H)=44H;
2.(R0)= 36H (R2)= E2H
3. (A)= 10H (B)=01H
4. (41H)= 03H (42H)= 02H
5. 貌似缺少(41H)的已知條件,且需確認(40H)=56後面有沒有H;(40H) = 56 (41H) = (42H )=56 (43H)=56循環右移
5.(30H) =78 (31H) =04H (32H )=00H (33H)=FFH
7.
1)寄存器定址2)直接定址3)位定址4)立即定址5)變址間接定址6)寄存器間接定址