1. 【單片機】求用匯編語言寫圖中的2、3題
是思考題。
--------
這樣的題目,要考慮一些技巧。
動一動腦子,不能直來直去的編。
特別是第三題,是已知數列求和,如果用循環50遍、累加,就不符合題意了。
應該用數列求和的公式來做,簡化程序,盡量縮短程序運行的時間。
3.程序如下:
MOV A, #2 ;首項
ADD A, #100 ;加上末項
MOV B, #25 ;項數/2
MUL AB ;結果在B、A中
SJMP $
結果是:
B = 09H
A = F6H
BA = 09F6H = 2550 = 2 + 4 + 6 + ... + 100
---------------------------
第二題,也可以優化如下:
2.
MOV R0, #30H
MOV R2, #0
MOV R3, #0
MOV R4, #0
LOOP:
CJNE @R0, #0, FU
INC R2 ;零的個數
JMP NEXT
FU:
CJNE @R0, #128, $ + 3
JC ZHENG
INC R4 ;負數個數
JMP NEXT
ZHENG:
INC R3 ;正數個數
NEXT:
INC R0
CJNE R0, #3AH, LOOP
SJMP $
END
程序很簡單,所用的寄存器也最少。
2. 求解單片機思考題:為什麼程序結束用「STOP:SJMP STOP」指令用沒有其他的停止方式
把WAIT1: JBC TI,STOP
SJMP WAIT1
STOP: SJMP $
改為
WAIT1: JBC TI,WAIT
SJMP WAIT1
這樣程序就能一直接收數據了,原來的只能接收一次數據。
3. 單片機思考題幫我看看做得對不對。 題目: 將內存單元20H中存放的兩個BCD碼拆開,求它們的乘積,
MOV A,20H
ANL A,#0FH
MOV B,A
XCH A,20H
SWAP A
ANL A,#0FH
MUL AB
MOV B,#10
DIV AB
SWAP A
ANL A,#0F0H
ORL A,B
MOV 21H,A
4. 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單片機運行出錯或程序進入死循環,如何擺脫困境?
答:當由於程序運行出錯或操作錯誤使系統處於死鎖狀態時,需按復位鍵以重新啟動。
5. 練習與思考題
第1章 概 述第1章 概 述 1.1 單片機的概念及單片機的種類 1.2 單片機的類型、特點及用途 1.3 單片機的發展趨勢本章小結練習與思考題 第1章 概 述 1.1 單片機的概念及單片機的種類 1.1.1 單片機及單片機系統單片機是微型計算機發展的一個分支,是一種專門面向控制的微處理器件,故又稱之為微控制器(Micro Controller Unit,MCU)。單片機通常以單一晶元的形式出現,但是它已具有了微型計算機所包含的基本組成結構和特有的控制應用功能,是一種晶元級的微型計算機。另外,由於單片機的體積、結構和功能特點,在實際應用中可以完全融入應用系統之中,故而也稱為嵌入式微控制器 (Embedded Micro-Controller)。 第1章 概 述最基本的單片機系統由單片機晶元和軟體程序共同組建而成,是用戶為了實現某種控制用途的需要而設計的實際裝置。在單片機系統中,單片機晶元內部的中央處理單元(CPU)處於核心地位,CPU通過執行軟體程序調動硬體電路完成控制功能。根據這種工作方式,單片機系統可以劃分為硬體和軟體兩個組成部分。 第1章 概 述 1. 硬體部分單片機系統的硬體部分是包括CPU在內的所有硬體電路,按照硬體電路的功能和配置大致可以分為以下3類 第1章 概 述 1) 基本功能類基本功能類硬體包括:CPU(用於運算、控制)、 RAM(用於數據存儲)、ROM(用於程序存儲)、I/O設備(實現串列、並行輸入/輸出介面)及時鍾電路(建立工作時序)。在微型計算機中,上述部件被分成若干塊晶元,安裝在一塊稱之為主板的印刷線路板上,在程序的指揮下完成計算機的基本運算操作功能。但是在單片機中,除了時鍾電路之外,其餘部分一般均被集成到一塊半導體晶元上,所以被稱為單片機,即單晶元微型計算機。 第1章 概 述 2) 控制功能類控制功能類硬體包括:定時器/計數器(用於時間設定/事件記錄)和中斷裝置(實現實時處理)。使用這類硬體是為了實現單片機的控制功能,即定時控制、順序控制和實時控制等基本控制功能。作為面向嵌入式控制的特色,這類部件通常也集成在單片機晶元內部。 3) 輔助功能類輔助功能類硬體包括:A/D(模/數轉換)和D/A(數/模轉換,通常採用PWM形式)等部件。這類部件根據晶元的配置不同不一定集成在單片機晶元上,需要用戶根據使用要求選擇。 第1章 概 述 2. 軟體部分與微型計算機的運行原理相似,單片機系統的運行也需要軟體系統的支持,但是由於處理任務的不同,其復雜程度相對較低。根據單片機軟體所要實現的功能,可以將軟體劃分為管理程序和應用程序兩類。 1) 管理程序管理程序是單片機系統的監控程序,主要用於控制過程復雜,控制量較大的裝置,例如測控儀器、儀表等。對於僅完成簡單控制任務的單片機系統一般可以相應簡化。 第1章 概 述 2) 應用程序應用程序是針對具體的控制動作而編寫的程序,是實現控制具體功能的程序基礎,通常以子程序模塊的形式出現,便於執行控制動作時調用。 第1章 概 述 1.1.2 單片機程序設計語言及開發環境簡介單片機程序設計語言主要是指在開發系統中使用的語言。在單片機開發系統中可以使用機器語言、匯編語言和高級語言。機器語言採用機器碼,是單片機能夠直接識別的程序語言,匯編語言是以助記符表示機器碼的程序設計語言。機器語言和匯編語言都是高效的計算機語言,實時性較強,但它們都是面向機器的語言,通用性差,編程效率低。 第1章 概 述單片機的開發過程涉及3項內容,即編程、糾錯和模擬。一般採用PC機內安裝的集成開發環境(IDE)軟體進行開發調試。在集成開發環境內可以實現文本編程、編譯糾錯和模擬運行。其中模擬的形式又可以分為兩種,即軟體模擬和硬體模擬。軟體模擬不必連接硬體應用系統,模擬結果在開發環境中模擬的單片機構造中得到體現;硬體模擬需要與用戶控制系統配合,以集成開發環境的輸出替代用戶系統中原有的單片機,模擬過程真實、實時性強。另一種較新的開發形式採用具有ISP(In-System Programming,在系統可編程)功能的單片機,利用下載程序開發單片機系統。 第1章 概 述 1.1.3 單片機的使用環境及產品等級單片機用途廣,使用環境差別大,如何保證單片機控制系統或裝置的可靠性是設計者和使用者最為關注的問題。作為電子產品而言,其可靠性主要取決於半導體晶元的產品等級,根據運行溫度范圍,產品等級大致劃分為3級,下面分別予以介紹。 第1章 概 述 1. 軍用級運行溫度范圍為�6�1-50℃~+125℃,適用於軍用品要求苛刻的應用環境,晶元的價格比較昂貴。例如Intel公司的 MCS-51系列單片機MD80C51FB。型號以MD表示開頭的, M代表軍品,D代表直插封裝。 第1章 概 述 2. 商業級運行溫度范圍為0℃~+70℃,主要限於機房、辦公及住宅環境,適用於民用產品,例如家電、玩具等。商業級產品價格低廉,品種齊全,應用最為廣泛。 3. 工業級早期的單片機產品大多為工業級,運行溫度范圍為�6�1-45℃~+85℃,介於商業級和軍用級之間,適宜在工業生產環境下使用。其特點是可靠性遠高於商業級,但價格遠低於軍用級。MCS-51系列單片機的普通產品均屬於工業級。 第1章 概 述 1.2 單片機的類型、特點及用途 1.2.1 單片機主要類型及其特點 1. 常用單片機的類型及特點 Intel公司的MCS-51系列及其兼容產品是目前最常用的一種單片機類型,其引進歷史較長,學習資料齊全,影響面較廣、應用成熟,已被單片機控制裝置的開發設計人員廣泛接受。本書將以這種單片機產品為主介紹單片機的結構原理、指令系統、編程應用及介面電路等內容。MCS-51系列單片機及其兼容產品的生產廠家很多,以下僅列出具有代表性的 3家公司的產品,其產品的型號及特點如表1-1所示。 第1章 概 述表1-1 常用MCS-51系列單片機一覽表公 司 品 名 特 點 Intel 8031 MCS-51 CMOS 單片8 位微控制器,32 條I/O 引線,2 個定時器/計數器, 5 個中斷源,2 個優先順序,128 B 片內RAM 80C562 基於8051 CMOS 控制器,8 位 A/D,PWM,48 條I/O 引線,3 個定時器/計數器,14 個中斷源,4 個優先順序,無片內ROM,256 B 片內RAM Philips 87C591 基於8051 CMOS控制器,片內CAN(SJA1000 CAN),10 位 ADC,WDT, 32 條I/O 引線,3 個定時器/計數器,15 個中斷源,4 個優先順序,I 2 C 匯流排, 16 KB EPROM,256 B 片內 RAM +256 B 附加AUX RAM 第1章 概 述 2.常用單片機的更新及進步隨著單片機技術的發展,高性能的新型單片機開始出現,其中美國Cygnal公司推出的C8051F系列單片機就是在MCS-51系列單片機基礎之上進行更新開發的一種產品。�6�1C8051F實際上是一種以8051為內核集成的混合信號系統級晶元。熟悉MCS-51系列單片機的工程技術人員可以很容易地掌握C8051F的應用技術並能進行軟體的移植。 第1章 概 述 C8051F系列單片機採用流水線結構,單周期指令運行速度是8051的12倍,全指令集運行速度是原來的9.5倍。 C8051F系列單片機的內部資源非常豐富,例如C8051F020單片機內部除包含8051微控制器內核、RAM、ROM、I/O口、定時器/計數器等MCS-51 系列的配置之外,還具有ADC、 DAC、PCA、SPI和SMBus等部件。這種將單片機的基本組成單元與模擬、數字外設集成在一個晶元上而組成的片上系統(SoC),實質上已超出了以往單片機(MCU)的含義,代表了高性能單片機發展的一個方向。 第1章 概 述 3. 其他類型單片機及特點簡介 1) �6�1PIC系列單片機 PIC系列單片機由美國Microchip公司設計生產,與MCS-51 系列對應的產品有PIC16C系列和PIC17C系列8位單片機,廣泛應用於消費電子產品、汽車電子及工業控制等領域,就產量和市場份額而言在世界單片機領域排名屬於前列。 第1章 概 述 PIC系列單片機有如下特點: (1) 完全哈佛結構。指令和數據空間及傳輸路徑完全分開,提高了數據吞吐率。程序和數據匯流排採用不同的寬度。數據匯流排為8位,指令匯流排根據單片機檔次不同分為12、14、 16位,指令均以單位元組形式表示。 (2) 流水線結構。取指令和執行指令採用流水線形式,執行一條指令時,同時允許取出下一條指令,從而實現了單周期指令。 第1章 概 述 (3) 寄存器組結構。RAM及寄存器,包括I/O口、定時器和程序計數器等都以寄存器方式工作和定址,只需要一個指令周期就可以完成訪問和操作。通常另闢堆棧RAM空間,不佔用片內數據存儲單元。 (4) 精簡指令系統。採用RISC(精簡指令集計算機)結構,與傳統的採用CISC(復雜指令集計算機)結構的單片機相比,其指令數量少,易學易記。此外,精簡指令系統還具有較高的代碼壓縮能力,有利於提高程序執行速度。 第1章 概 述 (5) 種類齊全。不單純追求功能堆積,從實際出發,以多種型號滿足不同層次、不同用途的需求。在規模上既有84 腳封裝,多達66根I/O口線的型號,也有8腳封裝,6根I/O口線的型號。功能較全的高檔次單片機產品還配置了A/D(模/ 數轉換)、CCP(捕捉/比較)或採用PWM(脈寬調制)的D/A轉換單元。 PIC系列單片機功能全、種類多,便於選擇使用,開發者可以根據不同的用途和要求設計出性價比較高的單片機控制裝置。 第1章 概 述 2) �6�1MSP430單片機 MSP430系列單片機是美國德州儀器(TI)公司1996年開始推向市場的一種16位單片機,採用精簡指令集,是一種超低功耗的混合型單片機。MSP430系列單片機的主要特點是,具有極低的功耗、豐富的片內外設和方便靈活的開發手段。 MSP430單片機的主要優點描述如下: (1) 運算處理能力強。MSP430系列是16位單片機,採用了RISC結構,具有豐富的定址方式和簡潔的內核指令以及大量的模擬指令,在8 MHz時鍾晶振的驅動下指令周期僅為125 ns。 第1章 概 述 (2) 超低功耗設計。採用1.8~3.6 V工作電壓,在1 MHz 的時鍾條件下運行時,晶元取用電流在200~400 μA左右。在時鍾關斷模式運行時,最低維持電流只有0.1 μA。具有獨特的時鍾系統設計,它有兩個時鍾,用以產生CPU和各功能單元所需的時鍾,可以在指令控制下接通和關斷時鍾,實現對總體功耗的控制。MSP430系列單片機有5種不同的工作模式。在等待方式下,電流消耗為0.7 μA。在節電方式下,最低可達0.1 μA。當系統處於省電的備用狀態時,用中斷請求將它喚醒的時間只需6 μs。 第1章 概 述 (3) 豐富的片上外圍模塊。集成了較豐富的片內外設,其中包括看門狗(WDT)、模擬比較器A、硬體乘法器、液晶驅動器、10/12位ADC、I 2 C匯流排和直接數據存取(DMA)等。 (4) 方便高效的開發環境。MSP430單片機有OPT、 FLASH和ROM 3種類型,目前主要以FLASH型為主。片內有JTAG(Joint Test Action Group,聯合測試行動小組)調試介面,通過PC機和JTAG調試器獲取片內信息,從而使設計者在調試開發時,無需模擬器和編程器。開發工具簡便,價格也相對低廉,可以實現在線編程。開發語言有匯編語言和C 語言。 第1章 概 述 (5) 運行環境。MSP430系列單片機產品均為工業級,運行環境溫度為-40�6�1~+85℃,適合工業環境下使用。 3) 單片機品種及主流單片機概況單片機品種繁多,各具特色。其中Intel公司推出的MCS-51 系列單片機及與其兼容的Philips、Atmel、Winbond等公司的產品應用非常廣泛。目前單片機入門教材大多以MCS-51系列單片機作為學習基礎,所以被普遍接受,堪稱主流。而 Microchip公司的PIC精簡指令集單片機產品也有著強勁的發展勢頭。就產量而言,在可供二次開發的單片機產品中PIC 單片機居全球之首。 第1章 概 述 1.2.2 常用單片機的應用領域單片機的特點是集成度高、功能強、可靠性高、體積小、功耗低、使用方便及價格低廉。單片機的應用幾乎是無處不在,已經滲透到我們生活中的各個領域。目前單片機已經在工業控制、儀器儀表、家用電器、辦公自動化、醫用設備、信息和通信產品、航空航天、專用設備的智能化管理等領域中得到了廣泛的應用,其應用形式體現如下。 第1章 概 述 1. 在工業控制中的應用工業自動化控制是最早採用單片機控制的領域之一,在測控系統、過程式控制制、機電一體化設備中主要利用單片機實現邏輯控制、數據採集、運算處理、數據通信等用途。單獨使用單片機可以實現一些小規模的控制功能,作為底層檢測、控制單元與上位計算機結合可以組成大規模工業自動化控制系統。特別在機電一體化技術中,單片機的結構特點使其更容易發揮其集機械、微電子和計算機技術於一體的優勢。 第1章 概 述 2. 在智能儀器中的應用內部含有單片機的儀器統稱為智能儀器,也稱為微機化儀器。這類儀器大多採用單片機進行信息處理、控制及通信,與非智能化儀器相比,功能得到了強化,增加了諸如數據存儲、故障診斷、聯網集控等功能。以單片機作為核心組成智能儀表已經是自動化儀表發展的一種趨勢。 第1章 概 述 3. 在家用電器中的應用單片機功能完善、體積小、價格廉、易於嵌入,非常適用於對家用電器的控制。嵌入單片機的家用電器實現了智能化,是傳統型家用電器的更新換代,現已廣泛應用於洗衣機、空調、電視機、視盤機、微波爐、電冰箱、電飯煲以及各種視聽設備等。 第1章 概 述 4. 在信息和通信產品中的應用信息和通信產品的自動化和智能化程度很高,其中許多功能的完成都離不開單片機的參與。這里最具代表性和應用最廣的產品就是移動通信設備,例如手機內的控制晶元就屬於專用型單片機。另外在計算機外部設備中,如鍵盤、列印機中也離不開單片機。新型單片機普遍具備通信介面,可以方便地與計算機進行數據通信,為計算機和網路設備之間提供連接服務創造了條件。 第1章 概 述 5. 在辦公自動化設備中的應用現代辦公自動化設備中大多數嵌入了單片機控制核心。如列印機、復印機、傳真機、繪圖機、考勤機及電話等。通過單片機控制不但可以完成設備的基本功能,還可以實現與計算機之間的數據通信。 6. 在商業營銷設備中的應用在商業營銷系統中單片機已廣泛應用於電子秤、收款機、條形碼閱讀器、IC卡刷卡機、計程車計價器以及倉儲安全監測系統、商場保安系統、空氣調節系統、冷凍保險系統等。 第1章 概 述 7. 在醫用設備領域中的應用單片機在醫療設施及醫用設備中的用途亦相當廣泛,例如在醫用呼吸機、各種分析儀、醫療監護儀、超聲診斷設備及病床呼叫系統中都得到了實際應用。 8. 在汽車電子產品中的應用現代汽車的集中顯示系統、動力監測控制系統、自動駕駛系統、通信系統和運行監視器等裝置中都離不開單片機。特別是採用現場匯流排的汽車控制系統中,以單片機擔當核心的節點通過協調、高效的數據傳送不僅完成了復雜的控制功能,而且簡化了系統結構。 第1章 概 述 1.3 單片機的發展趨勢目前,單片機正朝著高性能和多品種方向發展,將會進一步實現低功耗、小體積、大容量、高性能、低價格和外圍電路內裝化等要求。單片機的發展將主要以滿足在嵌入式應用前提下與控制對象的最佳結合,突顯其智能化控制能力。並在此基礎上尋求應用系統在晶元上的最大化解決方式,即形成了SoC化趨勢。在微電子技術、IC設計、 EDA工具發展的推動下,基於SoC的單片機應用系統將會得到較快的發展。 第1章 概 述本章小結本章簡要介紹了關於單片機及單片機系統的基本概念、結構特點和發展歷程,並且對單片機的應用開發方式及應用環境進行了簡介。通過對常用單片機系列、型號和各生產廠家的產品特點的介紹,使我們對單片機的種類及性能有一個初步的了解,便於在今後的應用中能夠選擇合適的單片機類型,滿足具體用途的需要。另外,本章還從開拓視野的角度列舉了單片機在各個領域的應用,以及單片機今後的發展趨勢。
自己研究吧。。我看得暈掉了- -、、、