單晶片應用實習報告
班級:二技電一甲
姓名:林桀民
學號:AD89017
相關知識
MCS-51是Intel公司所設計的8051系列單晶片總名稱在MCS-51這個大家族裡較具知名度的編號有80518751&8031實際上這些不同編號的單晶片都使用相同的核心CPU與指令及只是在製造IC時給予不同的周邊設計分別賦予這些IC一個特別編號
主要功能:
MCS-51系列單晶片的主要功能列舉如下
專為控制應用所設計的8位CPU
有完整的單位元邏輯運算指令,具有布林運算能力
有32條(4個Port)雙向且每條都可以被單獨定址的I/O
內部有兩個16位Timer/Counter
有一個通訊用的全雙工UART(序列I/O)
可接受5箇中斷源且有2層優先權的中斷結構
內部有時脈震盪器(最高頻率可到12MHz)
內部有4K的程式記憶體(ROM),128byte資料儲存器(RAM)
可在外部擴充到64K程式記憶體(EPROM)
可在外部擴充到64K資料儲存器(RAM)
8051內部結構方塊圖
8051接腳圖與功能(40):
若系統讀取外部程式,接低電位/
EA/Vpp/Psen
高電位動作,系統重置,PC回到0000H
RESET(9腳)
序列通訊輸出/入(P3.0,P3.1)
RXD/TXD
外部中斷輸入(P3.2,P3.3)
INT0/1
計時計數器的輸入(P3.4,P3.5)
T0/T1
8位I/O埠,外接記憶體可做地址線
P2.0~P2.7
地址閂鎖致能訊號
ALE/Prog
外部資料的讀取/寫入(P3.7,P3.8)
RD/WR
8位I/O埠,
P1.0~P1.7
8位I/O埠,外接記憶體做資料地址線
P0.0~P0.7
時脈反相放大器輸出/入端,接石英振盪器
XTAL1/2(19/18腳)
電源(5V)/接地
Vcc(40腳)/Vss(20腳)
功能
接腳
8051基本電路圖:
基本電路中有振盪電路及開機重置電路
振盪電路:8051晶片內部有一個振盪器,可以當作CPU的時脈,再設計時脈源時,若使用晶片內部的振盪器,只要在18、19腳兩腳間接振盪頻率範圍3.5M~12MHZ的石英振盪晶體或陶質共振器,並各自接20PF~50PF的電容。
重置電路:任何微電腦系統均有硬體重置功能,硬體重置主要用來確保CPU在開機時從程式的預定起始地址開始執行及當系統當機時使系統能重新開始,8051的重至訊號輸入腳為第9腳,此輸入腳為高電位動作,且高電位至少要維持2個機械週期也就是24個振盪週期。開機時RST腳電位為高電位促使系統重置,利用電容充電效應使RST接腳電位降成低電位,8051完成重置動作固定到程式記憶體地址0000H開始執行。
8051記憶體介紹:
8051的記憶體包含程式記憶體(ROM)和資料儲存器(RAM)兩種,他們分別有不同的用途,程式記憶體的作用是在儲存所要執行的程式,而資料儲存器用來存放在程式執行過程中所產生的資料,由於8051讀取程式記憶體有專用控制線PSEN,所以程式記憶體和資料儲存器二者選址時完全獨立不相干。
程式記憶體(ROM)結構:
89C51的4K程式記憶體中,有下列幾個重要地址,若沒有用到,就作一般程式記憶體使用,單晶片系統程式儲存在程式記憶體(ROM),一般8051/52提供4~8KBytes程式記憶體。使用者將編輯好的程式,經過組譯(Assembler)、連結(Link)後,燒錄到單晶片的ROM。如果採用89C51晶片,可重複燒錄多次,每次燒錄可將前一次燒錄的程式自動清除。若採用8031晶片,由於本身沒有內建ROM,所以必須採外部擴充記憶體
TIMER0中斷服務程式地址
000BH
TIMER1中斷服務程式地址
001BH
UART序列通訊服務程式地址
0023H
功能
地址
INT1外部中斷服務程式地址
0013H
INT0外部中斷服務程式地址
0003H
RESET程式開始執行地址
0000H
程式記憶體配置圖
單晶片資料儲存器(RAM)結構:
8051的資料儲存器是隨機存取的,使用者隨時讀取或寫入資料,通常是用來當程式執行時存放資料的快取器。
SCON/SBUF
1byteX2
(98H/99H)
PSW/ACC
1byteX2
(D0H/E0H)
特殊快取器(SFR)
128byte
80H~FFH
功能
長度
地址
TCON/TMOD/TL/TH
6byte
(88H~8DH)
使用者直接定址可
設定SP建立堆疊區
80byte
30H~7FH
個別位資料定址
8bit×16
20H~2FH
R0~R7四個快取器庫
8byte×4
00H~1FH
資料儲存器(RAM)是單晶片在執行程式時,儲存處理資料的地方。一般8051/52提供128~256Bytes資料儲存器。其中又可將它們區分為下列幾項功能的快取器與記憶體區:
n[00~1FH]的32個位元組可分為四個快取器庫,分別為RB0、RB1、RB2、RB3。每個快取器庫有8個快取器,分別為R0、R1、R2、R3、R4、R5、R6、R7。
n[20~2FH]的16位(2BYTES)可做直接位定址,例如SETB20H.0、CLR20H.1。
n[30~7FH]80個位元組的記憶體區又稱為”使用者RAM”,可以直接定址存取資料,同時也可以由使用者透過設定SP,自定堆疊資料區。
n[80~FFH]的128個位元組資料,8031/8051晶片沒有提供。在8031/8052晶片可做間接定址資料區,或是可直接定址的狀態快取器(SFR)使用。其中包括P0、P1、P2、P3埠的對應快取器,以及稍候我們作UART通訊功能會用到的SCON序列控制快取器、與定時器/計數器控制快取器…。
熟悉這些記憶體的結構,對撰寫單晶片程式會有很大的幫助。讀者想自行撰寫或修改單板微電腦的系統監督程式,最好能下點工夫,將這些記憶體的功能與結構做充分的瞭解。
中斷向量地址:
由於這些內部程式記憶體的地址都與中斷有關,所以我們也稱這些地址為中斷向量,在撰寫程式時,若程式本身沒有利用到中斷的功能,則以下七個特別的地址可視為一般程式記憶體地址來處理,但是若程式中使用到某個中斷時,則該中斷對應的地址,就必須保留,因為,只要該中斷髮生時,接下來被執行的就是位於該地址的指令,下列這些地址是各種中斷服務程式的進入點。
功能
地址
中斷
序列埠中斷向量
0023H
UART
計時計數中斷TIMER2向量
002BH
TIMER2
計時計數中斷TIMER1向量
001BH
TIMER1
計時計數中斷TIMER0向量
000BH
TIMER0
外部中斷INT1向量
0013H
INT1
外部中斷INT0向量
0003H
INT0
系統重置啟始地址
0000H
RESET
單晶片指令集:
資料定址指令:累加器,快取器,直接,間接記憶體定址與I/O埠間的資料轉移。
算術運算指令:資料做加(ADD)、減(SUB)、乘(MUL)、除(DIV)運算,或加一(INC),減一(DEC)等運算。
邏輯運算指令:資料做AND(ANL)、OR(ORL)、XOR(XRL)運算,與RR、RL、RRC、RLC位旋轉功能。
布林代數運算指令:位資料的清除與設定,如SETB,CLR。或位資料的運算ANLC,bit...等。
程式流程控制:迴圈,呼叫子程式(CALL),中斷,條件判斷的跳躍。如JMP,JZ,CJNZ,DJNZ,RET...等指令。
範例應用:
名稱:
單開關控制燈號變化,以指撥開關以控制程式流向,造成燈號的變化
動作要求:
接於阜腳P2.7上之指撥開關撥至ON位置時,P2.7阜腳為低電壓,接於P0之8個LED燈不停的作霹靂燈之動作,直制止撥開關撥至OFF位置時,P2.7為高電位,LED燈號變成奇偶位置不停地互動亮滅。
電路圖:
程式:
ORG00H
START:JBP2.7,LOOP2;檢查P2.7,若為1則跳至LOOP2,否則往下執行
LOOP1:MOVDPTR#TABLE;設定表格之起始為止於DPTR
MOVR3,#07H;設定表格資料之地址組數於R3
MOVA,#00H;設定偏移量起始地址值0於A快取器
L1:JBP2.7,LOOP2;在LOOP1迴圈中,依據DPTR及A
MOVR0,A;依序由表格取出七個位元組資料送
MOVCA,@A+DPTR傳至P0作霹靂燈動作且檢查P2.7之變
MOVP0,A;化,以決定是否跳出LOOP1迴圈
MOVR5,#5
ACALLDELAY
MOVA,R0
INCA
DJNZR3,L1
AJMPLOOP1;無條件跳出LOOP1
LOOP2:MOVA,#55H;在L2迴圈中,不停的作奇偶燈互動換互亮滅的動作並檢查P2.7之變化,已決定是否跳出L2迴圈
L2:JNBP2.7,LOOP2
MOVP0,A
MOVR5,#5
ACALLDELAY
XRLA,#FFH
AJMPL2
DELAY:MOVR3,#38H;子程式,延遲時間=R5*20ms
D1:MOVR6,#F9H
DJNZR6,$
DJNZR7,D1
DJNVR5,DELAY
RET
TABLE:DB7EH,0BDH,0DBH,07EH;霹靂燈之表格資料
DB0DBH,0BDH,7EH
END
-
2023車間見習報告3000字(精選3篇)
2023車間見習報告3000字篇1一、實習目的通過對高爐鍊鐵環節尤其是原料的實地實習認識,使我對高爐鍊鐵的原料處理、高爐原料的成分構成、上料系統的設計、高爐原料皮帶執行與更換以及其它高爐原料系統相關設施的設計與佈置,有了一次全面的感性認識,加深了我們對酒...
-
2023廣交會實習報告範文(精選8篇)
2023廣交會實習報告範文篇120xx年4月學校安排我們到廣交會實習。作為學生,能有這樣的機會,讓我們去參加社會實踐,參與廣交會,本人覺得很榮幸。感謝學校給了我這樣一個難得的機會,去學習一些在書本上學不到的知識。本次的實習目的,是為了讓我們能夠擁有這樣的機會,去了...
-
建築學認識實習報告2023(精選3篇)
建築學認識實習報告2023篇11.前言本次認識實習的主要物件是錦裡古街。在實習中首先認識了錦裡的歷史文化,瞭解並記錄了該城市街區的相關技術經濟指標,如商業街的長度、寬度及兩邊建築高度等等。同時分析了建築外部環境設計風格和內部的功能組成,建築外立面設計,城...
-
有關居委會實習報告(精選4篇)
有關居委會實習報告篇1夢想是船,動力是帆,實踐在海洋,而在過去的兩個月裡,我正是乘著夢想之船,揚著動力之帆,在那課堂以外的知識海洋上探索,而這一探索就是在居委會實習的短短兩個月。實習的日子是短暫的,但卻是精彩的。這次我的實習地點是在X居委會。整個實習期間,我的...