發(fā)光二極管閃爍控制系統(tǒng)設(shè)計與制作.ppt

上傳人:za****8 文檔編號:16512255 上傳時間:2020-10-05 格式:PPT 頁數(shù):97 大?。?.91MB
收藏 版權(quán)申訴 舉報 下載
發(fā)光二極管閃爍控制系統(tǒng)設(shè)計與制作.ppt_第1頁
第1頁 / 共97頁
發(fā)光二極管閃爍控制系統(tǒng)設(shè)計與制作.ppt_第2頁
第2頁 / 共97頁
發(fā)光二極管閃爍控制系統(tǒng)設(shè)計與制作.ppt_第3頁
第3頁 / 共97頁

下載文檔到電腦,查找使用更方便

14.9 積分

下載資源

還剩頁未讀,繼續(xù)閱讀

資源描述:

《發(fā)光二極管閃爍控制系統(tǒng)設(shè)計與制作.ppt》由會員分享,可在線閱讀,更多相關(guān)《發(fā)光二極管閃爍控制系統(tǒng)設(shè)計與制作.ppt(97頁珍藏版)》請在裝配圖網(wǎng)上搜索。

1、2020/10/5,1,項目1 發(fā)光二極管閃爍控制系統(tǒng)設(shè)計與制作,1.1 認(rèn)識單片機,1.2 讓單片機動起來,1.3 從外到內(nèi)觀察單片機,1.4 認(rèn)識單片機的存儲器組織,2020/10/5,2,1.1.1 單片機是什么樣子 1.1.2 單片機的應(yīng)用領(lǐng)域 1.1.3 MCS-51系列單片機,1.1 認(rèn)識單片機,1.1.1 單片機是什么樣子,單片微型計算機簡稱單片機(Single Chip Microcomputer),又稱微控制器(Microcomputer Unit)。 它是將中央處理器(cpu),存儲器,輸入/輸出單元,多種I/O口和中斷系統(tǒng)、定時器/計數(shù)器等功能部件全部集成到一塊芯片上而構(gòu)

2、成的一個小而完善的計算機系統(tǒng)。 單片微型計算機是20世紀(jì)70年代初期發(fā)展起來的,它是微型計算機發(fā)展中的一個重要分支。不同生產(chǎn)廠家的不同型號的單片機,由于用途、功能等的不同,具體的結(jié)構(gòu)和性能也有較大的差異,但總的模塊結(jié)構(gòu)是一樣的。,2020/10/5,4,方形的單片機有兩種常見的封裝形式,即PLCC封裝 和TQFP封裝。,(a) PLCC 封裝,(b) TQFP封裝,2020/10/5,5,對于MCS-51系列單片機,最常見的封裝形式為 雙列直插式DIP封裝。,1.1.2 單片機的應(yīng)用領(lǐng)域,工業(yè)自動化 智能化儀表 各種機器人 民用消費類電子產(chǎn)品 汽車、航空、導(dǎo)航和武器裝備 數(shù)據(jù)處理和通信設(shè)備,1

3、.1.3MCS-51系列單片機,MCS-51系列單片機分為51和52兩個子系列,其中51子系列是基本型,而52子系列則是增強型,以芯片型號的最末位數(shù)字為標(biāo)志。 MCS-51系列單片機的分類如表1-1所示。,表1-1 MCS-51系列單片機的分類,2020/10/5,9,1.2.1 如何使用單片機 1.2.2 Keil Vision軟件的使用 1.2.3 Proteus軟件的使用 1.2.4 單片機最小系統(tǒng) 1.2.5 發(fā)光二極管閃爍控制系統(tǒng)設(shè)計與制作,1.2 讓單片機動起來,2020/10/5,10,單片機要工作需要構(gòu)成單片機應(yīng)用系統(tǒng)。 單片機應(yīng)用系統(tǒng)是指以單片機芯片為核心,再配以輸入、輸出、

4、顯示等外圍接口電路和軟件,能夠?qū)崿F(xiàn)一種或多種功能的應(yīng)用系統(tǒng)。 單片機應(yīng)用系統(tǒng)由硬件和軟件兩部分組成,二者相互依賴,缺一不可。 軟件部分是指編寫的應(yīng)用程序。完成匯編工作的開發(fā)環(huán)境目前常用的是Keil Vision軟件。 硬件部分就需要購置元件,進(jìn)行焊接。單片機仿真設(shè)計軟件Proteus克服了這種限制。,1.2.1 如何使用單片機,1.2.2Keil Vision軟件的使用,Keil C51軟件提供豐富的庫函數(shù)和功能強大的集成開發(fā)調(diào)試工具,全Windows界面。其基本使用方法如下:,雙擊桌面上的Keil Vision 2圖標(biāo),出現(xiàn)如圖1-1所 示的屏幕。幾秒后,出現(xiàn)編輯界面,如圖1-2所示的 編輯

5、界面及窗口分配。,圖1-1 啟動Keil c51時的屏幕,圖1-2 Keil Vision 2編輯界面及窗口分配,2020/10/5,13,2. 點擊Project菜單,選擇彈出的下拉式菜單中的New Project。接著彈出一個Windows文件對話窗口,如圖1-3所示。保存在:選擇已建立的lesson文件夾中。,圖1-3 項目窗口,3. 單擊保存,進(jìn)入器件選擇窗口。根據(jù)需要選擇相應(yīng)型號的器件,這里我們選擇常用的Atmel公司的AT89C51單片機。,4. 項目建好,就可以為工程添加程序。點擊“File”中的“New.”,新建一個空白文檔;這個空白文檔就是讓我們編寫單片機程序的場所。在這里你

6、可以進(jìn)行編輯、修改等操作。如圖1-4所示。,2020/10/5,15,注意:保存文件時文件名必須有擴展名,如c程序擴展名為.c,匯編程序擴展名為.asm或.am51。,圖1-4 新建文件,2020/10/5,16,5. 保存程序文件后,將其添加到工程中。具體做法為:鼠標(biāo)右擊 “Source Group 1”,在彈出的菜單中選 “Add file to Group Source Group1”, 彈出文件窗口,選擇剛剛 保存的文件,按ADD按鈕,關(guān)閉文件窗,程序文件已加到項目中 了。這時在Source Group1文件夾圖標(biāo)左邊出現(xiàn)了一個小+號, 說明文件組中有了文件,點擊它可以展開查看。如圖1

7、-5所示。,圖1-5 添加文件,2020/10/5,17,6. 向工程添加了源文件后,鼠標(biāo)右擊 “Target 1” ,在彈出的菜單中選“options for target Target 1”,在打開的對話框中,選擇“Output”選項卡,在這個選項卡中,“Creat HEX File”選項前要打勾,按“確定”退出,如圖1-6所示。,圖1-6 項目選項窗口,2020/10/5,18,7. 源程序編譯。從菜單的“Project”中執(zhí)行“Rebuild all target files”(或者按下圖紅圈中的按鈕),匯編、連接、創(chuàng)建Hex文件一氣呵成。,圖1-7 編譯程序,2020/10/5,19

8、,1.2.3Proteus軟件的使用,Proteus 是英國Labcenter公司開發(fā)的電路分析與實物仿真軟件。它運行于Windows操作系統(tǒng)上,可以仿真、分析(SPICE)各種模擬器件和集成電路,是目前最好的仿真單片機及外圍器件的工具。該軟件具有以下特點: 1) 實現(xiàn)了單片機仿真和SPICE電路仿真相結(jié)合。具有模擬電路仿真、數(shù)字電路仿真、單片機及其外圍電路組成的系統(tǒng)的仿真、RS232動態(tài)仿真、I2C調(diào)試器、SPI調(diào)試器、鍵盤和LCD系統(tǒng)仿真的功能;有各種虛擬儀器,如示波器、邏輯分析儀、信號發(fā)生器等。,2) 支持主流單片機系統(tǒng)的仿真。目前支持的單片機類型有:68000系列、8051系列、AVR

9、系列、PIC12系列、PIC16系列、PIC18系列、Z80系列、HC11系列以及各種外圍芯片。 3)提供軟件調(diào)試功能。在硬件仿真系統(tǒng)中具有全速、單步、設(shè)置斷點等調(diào)試功能,同時可以觀察各個變量、寄存器等的當(dāng)前狀態(tài),因此在該軟件仿真系統(tǒng)中,也必須具有這些功能;同時支持第三方的軟件編譯和調(diào)試環(huán)境,如Keil C51 uVision2等軟件。 4) 具有強大的原理圖繪制功能。 5) 具有PCB設(shè)計繪制功能。,2020/10/5,20,2020/10/5,21,下面主要介紹Proteus ISIS軟件的工作環(huán)境和一些基本操作。,1. 進(jìn)入Proteus ISIS 雙擊桌面上的ISIS 7 Profes

10、sional圖標(biāo)或者單擊屏幕左下方的“開始”“程序”“Proteus 7 Professional” “ISIS 7 Professional”,進(jìn)入Proteus ISIS集成環(huán)境。,2. 工作界面 Proteus ISIS的工作界面是一種標(biāo)準(zhǔn)的Windows界面,如圖1-8所示。包括:標(biāo)題欄、主菜單、標(biāo)準(zhǔn)工具欄、繪圖工具欄、對象選擇按鈕、預(yù)覽對象方位控制按鈕、仿真進(jìn)程控制按鈕、預(yù)覽窗口、對象選擇器窗口、圖形編輯窗口。,2020/10/5,22,圖1-8 Proteus ISIS的工作界面,2020/10/5,23,3基本操作,1) 元件拾取 用鼠標(biāo)左鍵單擊對象選擇按鈕的“P”按鈕,彈出“P

11、ick Devices”(元件拾取)對話框,如圖1-9所示。,圖1-9 元件拾取對話框,2020/10/5,24,元件拾取共有兩種辦法: 按類別查找和拾取元件 直接查找和拾取元件,2020/10/5,25,2) 編輯窗口視野控制 學(xué)會合理控制編輯區(qū)的視野是元件編輯和電路連接進(jìn)行前的首要工作。 編輯窗口的視野平移可用以下方法: 在原理圖編輯區(qū)的藍(lán)色方框內(nèi),把鼠標(biāo)指針放置在一個地方后,按下“F5”,則以鼠標(biāo)指針為中心顯示圖形。 當(dāng)圖形不能全部顯示出來時,按住“Shift”鍵,移動鼠標(biāo)指針到上、下、左、右邊界,則圖形自動平移。 快速顯示想要顯示的圖形部分時,把鼠標(biāo)指向左上預(yù)覽窗口中某處,并單擊鼠標(biāo)左

12、鍵,則編輯窗口內(nèi)圖形自動移動到指定位置。,2020/10/5,26,編輯窗口的視野縮放用以下方法: 先把鼠標(biāo)指針放置到原理圖編輯區(qū)內(nèi)的藍(lán)色框內(nèi),上下滾動 鼠標(biāo)滾輪即可縮放視野。如果沒有鼠標(biāo)滾輪,可使用圖標(biāo) 來放大和縮小編輯窗口內(nèi)的圖形。,放置鼠標(biāo)指到編輯窗口內(nèi)想要放大或縮小的地方,按“F6”(放 大)或“F7”(縮小)放大或縮小圖形,按“F8”顯示整個圖形。,2020/10/5,27,3) 元件位置的調(diào)整和參數(shù)的修改,在編輯區(qū)的元件上單擊鼠標(biāo)左鍵選中元件(為紅色),在選中的元件上再次單擊鼠標(biāo)右鍵則刪除該元件,而在元件以外的區(qū)域內(nèi)單擊右鍵則取消選擇。,改變元件參數(shù)(以修改電阻參數(shù)為例): 左鍵雙

13、擊原理圖編輯區(qū)的電阻R1,彈出“Edit Component” (元件屬性設(shè)置)對話框,把R1的Resistance(阻值)由10k改 為1k。Edit Component(元件屬性設(shè)置)對話框如圖1-10所示。,2020/10/5,28,圖1-10 元件屬性設(shè)置對話框,2020/10/5,29,4)線路連接。將鼠標(biāo)指針靠近元件的一端,當(dāng)鼠標(biāo)的鉛筆形狀變?yōu)榫G色時,表示可以連線了,單擊該點,再將鼠標(biāo)移至另一元件的一端,單擊,兩點間的線路就畫好了。如果要刪除一根連線,右鍵雙擊連線即可。 5)文件保存。鼠標(biāo)單擊“File”-“Save Design”菜單,出現(xiàn)文件保存對話框。選擇要保存的文件夾,輸入

14、文件名,后綴為.DSN。在設(shè)計過程中要養(yǎng)成不斷存盤的好習(xí)慣,以免突發(fā)事件而造成事倍功半的效果。下次打開時,可直接雙擊“1.DSN”文件,或先運行Proteus,再打開“1.DSN”文件。,2020/10/5,30,1.2.4 單片機最小系統(tǒng),單片機最小系統(tǒng),又稱為最小應(yīng)用系統(tǒng),是指用最小的元件組成的單片機可以工作的系統(tǒng)。對于MCS-51單片機來說,其內(nèi)部已經(jīng)包含了一定數(shù)量的數(shù)據(jù)存儲器和程序存儲器,在外部只需增加電源電路、時鐘電路和復(fù)位電路即可構(gòu)成單片機的最小系統(tǒng)。 電源電路:向單片機供電。 時鐘電路:單片機工作的時間基準(zhǔn),單片機的工作速度。 復(fù)位電路:確定單片機工作的起始狀態(tài),完成單片機的啟動

15、過程。,2020/10/5,31,1.2.5 發(fā)光二極管閃爍控制系統(tǒng)設(shè)計與制作,設(shè)計要求:通過按鍵控制單片機的三個I/O口P1.5、P1.6和P1.7,它們分別接發(fā)光二極管LED1、LED2和LED3,按鍵不按下三個發(fā)光二極管都不亮,按鍵按下使三個發(fā)光二極管同時亮、滅,時間間隔約10ms,構(gòu)成最簡單的發(fā)光二極管閃爍控制系統(tǒng)。,2020/10/5,32,硬件設(shè)計分析:該系統(tǒng)需要單片機最小系統(tǒng)、按鍵、三個發(fā)光二極管,硬件原理圖如圖1-11所示。 軟件設(shè)計分析:軟件主要就是編寫源程序代碼。結(jié)合原理圖,可以看到要使發(fā)光二極管點亮,需使單片機的I/O口的P1.5、P1.6和P1.7引腳輸入高電平,間隔約

16、10ms后輸出低電平,這樣發(fā)光二極管就可以不斷的閃爍。,2020/10/5,33,圖1-11 發(fā)光二極管閃爍控制系統(tǒng)原理圖,#include sbit LED1=P15; sbit LED2=P16; sbit LED3=P17; sbit KEY=P10; void Delay() unsigned int i,j; for(i=0;i50;i+) for(j=0;j1200;j+); ,void main() LED1=0; LED2=0; LED3=0; while(1) KEY=1; if (KEY=0) LED1=1; LED2=1; LED3=1; Delay(); LED1=0;

17、 LED2=0; LED3=0; Delay(); ,2020/10/5,34,2020/10/5,35,仿真效果圖與實物圖如下所示:,2020/10/5,36,1.3.1 單片機的信號引腳 1.3.2 單片機的內(nèi)部結(jié)構(gòu) 1.3.3 單片機的并行端口 1.3.4 單片機的時鐘與復(fù)位電路,1.3 從外到內(nèi)觀察單片機,2020/10/5,37,1.3.1 單片機的信號引腳,MCS-51單片機的封裝形式有兩種,一種是40只引腳的雙列直插式(DIP)封裝,另一種是44只引腳的方形PLCC封裝。MCS-51單片機最常用的40引腳的雙列直插封裝方式。,單片機信號引腳,1、I/O口線 4個8位并行 I/O

18、接口引腳 P0.0P0.7 、P1.0P1.7 、 P2.0P2.7和 P3.0P3.7,I/O口線功能 單片機I/O口線為多功能引腳,可自動切換用作數(shù)據(jù)總線、地址總線、控制總線和或I/O 接 口外部引腳。,80C51,(2) I/O引腳 P0.0P0.7(3932腳):P0口的8位雙向I/O口線。 P0口即可作地址/數(shù)據(jù)總線使用,又可作通用的I/O口使用。當(dāng)CPU訪問片外存儲器時,P0口分時先作低8位地址總線,后作雙向數(shù)據(jù)總線,此時,P0口就不能再作I/O口使用了。 P1.0P1.7(18腳):P1口的8位準(zhǔn)雙向I/O口線。 P1口作為通用的I/O口使用。 P2.0P2.7(2128腳):P

19、2口的8位準(zhǔn)雙向I/O口線。 P2口即可作為通用的I/O口使用,也可作為片外存儲器的高8位地址總線,與P0口配合,組成16位片外存儲器單元地址。 P3.0P3.7(1017腳):P3口的8位準(zhǔn)雙向I/O口線。 P3口除了作為通用的I/O口使用之外,每個引腳還具有第二功能,2020/10/5,39,2、控制線,( (1) ALE/PROG(-) (30腳):地址鎖存允許信號輸出/編程脈沖輸入引腳。當(dāng)CPU訪問片外存儲器時,ALE輸出信號控制鎖存P0口輸出的低8位地址,從而實現(xiàn)P0口數(shù)據(jù)與低位地址的分時復(fù)用。當(dāng)8051上電正常工作后,自動在ALE端輸出頻率為fosc/6的脈沖序列(fosc代表振蕩

20、器的頻率)。 該引腳的第二功能PROG是對8751內(nèi)部4KB EPROM編程寫入時,作為編程脈沖的輸入端。,2020/10/5,41,(2)VPP/EA(-)(31腳):外部程序存儲器地址允許輸入端/編程電壓輸入端。 當(dāng)EA(-)接高電平時,CPU執(zhí)行片內(nèi)ROM指令,但當(dāng)PC值超過0FFFH時,將自動轉(zhuǎn)去執(zhí)行片外ROM指令;當(dāng)EA(-)接低電平時,CPU只執(zhí)行片外ROM指令。對于8031,由于其無片內(nèi)ROM,故其EA(-)必須接低電平。 該引腳的第二功能VPP是對8751片內(nèi)EPROM編程寫入時,作為21V編程電壓的輸入端。 (3)PSEN(-)(29腳):片外ROM讀選通信號端。 在讀片外R

21、OM時,PSEN(-)有效,為低電平,以實現(xiàn)對片外ROM的讀操作。,2020/10/5,42,2. 控制引腳,(4)RST/VPD(9腳) :復(fù)位信號端和后備電源輸入端。 當(dāng)RST引腳保持兩個機器周期的高電平后,就可以使8051完成復(fù)位操作。該引腳的第二功能是VPD,即備用電源的輸入端,具有掉電保護功能。若在該引腳接+5V備用電源,在使用中若主電源VCC掉電,可保護片內(nèi)RAM中的信息不丟失。,復(fù)位電路: (1)上電復(fù)位 (2)外部信號復(fù)位,2020/10/5,43,3、電源及時鐘引線 (1)電源引腳 VCC(40腳):電源端,接+5V電源 VSS(20腳):接地端。 (2). 時鐘引腳 XTA

22、L1(19腳):當(dāng)使用芯片內(nèi)部時鐘, 接外部晶振和微調(diào)電容的一端。采用外部時鐘 電路時,此引腳應(yīng)接地。 XTAL2(18腳):當(dāng)使用芯片內(nèi)部時鐘時, 接外部晶振和微調(diào)電容的另一端。使用外部 時鐘時,此引腳應(yīng)接外部時鐘的輸入端。 。,2020/10/5,44,4. 定時器/計數(shù)器 MCS-51單片機內(nèi)部有兩個16位的定時器/計數(shù)器,既可以做定時功能,又可以做計數(shù)功能。MCS-52單片機內(nèi)部有3個16位的定時器/計數(shù)器,它增加了一個功能更加強大的16位定時器/計數(shù)器T2。 5. 中斷控制系統(tǒng) MCS-51單片機內(nèi)部具有5個中斷源的管理控制功能,這些中斷源可以分為2級中斷優(yōu)先級。 6. 串行通信接口

23、 MCS-51單片機內(nèi)部有1個全雙工的UART(通用串行收發(fā)器),可設(shè)置為多種工作模式。 7. 時鐘電路 MCS-51單片機內(nèi)部振蕩電路配合外部晶振或外部輸入的時鐘信號,可產(chǎn)生時鐘脈沖序列,控制CPU內(nèi)部邏輯電路運行。,1.3.2 單片機的內(nèi)部結(jié)構(gòu),MCS-51單片機內(nèi)部具有以下基本特征: 8 位的 CPU, 片內(nèi)有振蕩器和時鐘電路 片內(nèi)有 128B/256B 數(shù)據(jù)存儲器RAM 片內(nèi)有 0KB/4KB/8KB 程序存儲器ROM 可尋址片外 64KB 數(shù)據(jù)存儲器和片外64KB 程序存儲器 片內(nèi) 21個特殊功能寄存器(SFR) 4個8位的并行I/O口(P0-P3) 1個全雙工串行口(SIO/UAR

24、T) 2個16位定時器/計數(shù)器(TIMER/COUNTER) 可處理 5個中斷源,兩級中斷優(yōu)先級 內(nèi)置1個布爾處理器和1個布爾累加器,8051單片機的結(jié)構(gòu)框圖,1.MCS51 CPU,中央處理器簡稱CPU,是單片機的核心,是計算機的控制和指揮中心。它由運算器(ALU)和控制器兩部分組成。 CPU內(nèi)部結(jié)構(gòu): (1)運算器電路:算術(shù)邏輯單元ALU、累加器ACC、寄存器B、程序狀態(tài)字PSW和2個暫存器等。 算術(shù)邏輯運算單元ALU ( 8位 ): 運算器用于實現(xiàn)算術(shù)和邏輯運算。運算器以ALU為核心,基本的算術(shù)和邏輯運算均在其中操作,如加、減、乘、除、增量、減量、十進(jìn)制數(shù)調(diào)整、比較、邏輯與、或、異或、求

25、補循環(huán)移位和位處理。等操作。操作結(jié)果的狀態(tài)由程序狀態(tài)字保存。,2020/10/5,49,(2)控制器電路:程序計數(shù)器PC、PC+1寄存器、指令寄存器、指令譯碼器、定時與控制電路等,另外,DPTR、SP指針也包含在控制部分。 程序計數(shù)器PC PC是控制器中最基本的寄存器。它是16位的地址寄存器,用于存放將要從ROM中讀出的下一字節(jié)指令碼的地址,可尋址64KB的程序存儲器空間。PC的基本工作方式有: 自動加1。CPU從ROM中每讀一個字節(jié),自動執(zhí)行PC+1PC; 執(zhí)行轉(zhuǎn)移指令時,PC會根據(jù)要求修改地址; 執(zhí)行調(diào)用子程序或發(fā)生中斷時,CPU會自動將當(dāng)前PC值壓入堆棧,將子程序入口地址或中斷入口地址裝

26、入PC;子程序返回或中斷返回時,恢復(fù)原有被壓入堆棧的PC值,繼續(xù)執(zhí)行原順序程序指令。,1.3.3 單片機的并行端口,MCS-51單片機具有4個雙向的并行I/O端口,每個端口都是8位準(zhǔn)雙向口,共占32根引腳,表示為:P0P3,它們具有系統(tǒng)規(guī)定的字節(jié)地址,每個口都包含一個鎖存器、一個輸出驅(qū)動器和輸入緩沖器。每個口均有一個8位鎖存器,在上電復(fù)位后初態(tài)為全“1”,使P0P3口均處于輸入狀態(tài)。,1. P0口 P0口的字節(jié)地址80H,位地址8087H,口的各位口線具有完全相同但又相互獨立的邏輯電路。如圖1-27所示,它包括1個輸出鎖存器、2個三態(tài)緩沖器、一個輸出驅(qū)動電路和1個輸出控制端。 1)P0口作數(shù)據(jù)

27、/地址總線使用 在訪問外部存儲器時,P0口是一個真正的雙向數(shù)據(jù)總線端口,并分時復(fù)用作為數(shù)據(jù)總線和低8位地址總線。 2)P0口作通用I/O端口使用 P0口用作輸出端口時外部必須接上拉電阻才能正確輸出高電平; P0口用作輸入端口時,在進(jìn)行輸入操作前,應(yīng)該先向該端口的輸出鎖存器寫“1”。,2020/10/5,51,P0口:,一個數(shù)據(jù)輸出鎖存器和兩個三態(tài)數(shù)據(jù)輸入緩沖器。 一個多路轉(zhuǎn)接電路MUX在控制信號的作用下, MUX可以分別接通鎖存器輸出或地址/數(shù)據(jù)線。當(dāng)作為通用的I/O口使用時,內(nèi)部的控制信號為低電平,封鎖與門將輸出驅(qū)動電路的上拉場效應(yīng)管(FET)截止,同時使MUX接通鎖存器Q端的輸出通路。,2

28、020/10/5,53,P0口的位結(jié)構(gòu)圖,2. P1口 P1口的字節(jié)地址90H,位地址9097H,口的各位口線具有完全相同但又相互獨立的邏輯電路。P1口是一個有內(nèi)部上拉電阻的準(zhǔn)雙向口。P1口只能作為通用的I/O口使用,所以在電路結(jié)構(gòu)上和P0口不同主要表現(xiàn)為: 1) 它只傳送數(shù)據(jù),所以不需要多路轉(zhuǎn)接開關(guān)MUX。 2) 因為只用來傳送數(shù)據(jù),因此輸出電路中有上拉電阻,且上拉電阻和場效應(yīng)管共同組成了輸出驅(qū)動電路。 P1口作為輸出口使用時,外電路無需接上拉電阻。 P1口作為輸入口使用時,應(yīng)先向其鎖存器寫入“1”,使輸出驅(qū)動電路的場效應(yīng)管截止。,2020/10/5,54,2020/10/5,55,P1口的

29、位結(jié)構(gòu)圖,3. P2口 P2口的字節(jié)地址A0H,位地址A0A7H。P2口是8位準(zhǔn)雙向I/O口,具有兩種功能。一是作通用I/O口用,與P1口相同。二是P2口作地址總線使用。當(dāng)系統(tǒng)中接有外部存儲器時,P2口用于輸出高8位地址A15 A8,與P0口一起組成16位地址總線。,2020/10/5,56,2020/10/5,57,P2口的位結(jié)構(gòu)圖,2020/10/5,58,4. P3口 P3口的字節(jié)地址B0H,位地址B0B7H。P3口是一個多用途的端口,也是一個準(zhǔn)雙向口,作為第一功能使用時,其功能同P1口。當(dāng)作第二功能使用時,每一位功能定義如表1-2所示。,2020/10/5,59,P3口的位結(jié)構(gòu)圖,20

30、20/10/5,60,端口小結(jié):,(1)系統(tǒng)總線: 地址總線(16位):P0(地址低8位)、P2口(地址高8位) 數(shù)據(jù)總線(8位):P0口(地址/數(shù)據(jù)分時復(fù)用,借助ALE); 控制總線(6根):P3口的第二功能和9、29、30、31腳; (2)供用戶使用的端口:P1口、部分未作第二功能的P3口; (3)P0口作地址/數(shù)據(jù)時,是真正的雙向口,三態(tài),負(fù)載能力 為8個LSTTL電路; P1P3是準(zhǔn)雙向口,負(fù)載能力為4個LSTTL電路。 (4)P0P3在用作輸入之前必須先寫“1”,即: (P0)=FFH (P3)=FFH 。,2020/10/5,63,1. 單片機的時鐘電路,時鐘電路通常有兩種方式:內(nèi)

31、部時鐘方式和外部時鐘方式。,1)內(nèi)部時鐘方式:,目前,51系列單片機的晶振頻率fosc范圍為1.212MHz,其典型值為6MHz、11.0592MHz、12MHz等,內(nèi)部一個高增益反相放大器與片外石英晶體或陶瓷諧振器構(gòu)成了一個自激振蕩器。 晶體振蕩器的振蕩頻率決定單片機的時鐘頻率。,1.3.4 單片機的時鐘與復(fù)位電路,振蕩源OSCillation,2020/10/5,64,2)外部時鐘方式:外部振蕩器輸入時鐘信號。 外部時鐘方式就是把外部已有的時鐘信號引入單片機內(nèi)。這樣得到的時鐘信號通過內(nèi)部的時鐘電路,經(jīng)過分頻,得到相應(yīng)的時鐘信號,2. 時序定時單位,時鐘周期:振蕩頻率的倒數(shù)。 機器周期:完成

32、一個基本操作所需要的時間。 一個機器周期由12個時鐘周期組成。 指令周期:一條指令的執(zhí)行時間。 以機器周期為單位:可包含1個4個機器周期。,思考題: 設(shè)應(yīng)用單片機晶振頻率為12MHz, 問機器周期為多少?指令周期分別為多少?,fosc=12MHz MC=12/ fosc =12/12MHz =1s,3. 典型指令時序,MCS51采用定時控制方式,因此它有固定的機器周期。規(guī)定一個機器周期的寬度為6個狀態(tài)。由于一個狀態(tài)又包括兩個拍節(jié),因此一個機器周期總共有12個拍節(jié),分別記作S1P1、S1P2S6P2。,振蕩脈沖并不直接使用,由XTAL2端送往內(nèi)部時鐘電路(fosc): 經(jīng)過2分頻,向CPU提供2

33、相時鐘信號P1和P2 ( f拍節(jié)= 1/2 fosc) ; 再經(jīng)3分頻,產(chǎn)生ALE時序( fALE = 1/6 fosc) ; 經(jīng)過12分頻,成為機器周期信號( MC = 12 /fosc) ,如下圖所示。 需要指出的是,CPU的運算操作在P1期間,數(shù)據(jù)傳送在P2期間。,幾種典型指令的取指和執(zhí)行時序:,通常,每個機器周期,ALE兩次有效,第1次發(fā)生在S1P2和S2P1期間,第2次在S4P2和S5P1期間。,單周期指令的執(zhí)行 始于S1P2,這時操作碼被鎖存到指令寄存器內(nèi),讀出下字節(jié)(應(yīng)為下一個操作碼)是不予考慮的,且程序計數(shù)器PC并不增量。,訪問外部數(shù)據(jù)存貯器的指令MOVX的時序,它是一條單字節(jié)

34、雙周期指令。在第1機器周期S5開始時,送出外部數(shù)據(jù)存貯器的地址,隨后讀或?qū)憯?shù)據(jù)。讀寫期間在ALE端不輸出有效信號,在第2機器周期,即外部數(shù)據(jù)存貯器已被尋址和選通后,也不產(chǎn)生取指操作。,MCS51單片機時序,1,2,11,12,3,4,5,6,7,8,9,10,1,2,S1P2,S2P1,S4P2,S5P1,可通過測量ALE 確定CPU是否工 作,ALE有時鐘 的特點。,2020/10/5,70,4. 單片機的復(fù)位電路 復(fù)位是單片機的初始化操作,其目的為: 完成單片機的初始化,即把PC初始化為0000H,使單片機從0000H單元開始執(zhí)行程序; 當(dāng)由于程序運行出錯或操作錯誤使系統(tǒng)處于死鎖狀態(tài)時,可

35、通過復(fù)位重新啟動單片機。,2020/10/5,71,表 單片機復(fù)位后內(nèi)部各寄存器狀態(tài),2020/10/5,72,單片機對復(fù)位信號的要求:一是高電平有效信號,二是有效時間應(yīng)持續(xù)24個振蕩脈沖周期(二個機器周期)以 上。MCS-51單片機通常采用上電自動復(fù)位和按鍵手動復(fù)位兩種方式。,(a)上電復(fù)位 (b) 按鍵手動復(fù)位,2020/10/5,73,2020/10/5,73,1.4.1 初識單片機的存儲器 1.4.2 單片機的程序存儲器 1.4.3 單片機的數(shù)據(jù)存儲器 1.4.4 單片機的特殊功能寄存器,1.4 認(rèn)識單片機的存儲器組織,2020/10/5,74,1.4.1 51單片機存儲器結(jié)構(gòu)特點,1

36、、MCS-51單片機的存儲器結(jié)構(gòu),圖1-33 MCS-51單片機的存儲器結(jié)構(gòu)圖,2020/10/5,75,2. 內(nèi)部數(shù)據(jù)存儲器 內(nèi)部數(shù)據(jù)存儲器由128字節(jié)的RAM和RAM地址寄存器等構(gòu)成。對于51系列單片機,其內(nèi)部RAM為128字節(jié);對于52系列單片機,其內(nèi)部RAM為256字節(jié)。 3. 內(nèi)部程序存儲器 8051單片機內(nèi)部有4K字節(jié)的ROM單元,用于存放程序和程序中的常量數(shù)據(jù)。,2020/10/5,76,1.4.2 單片機的程序存儲器,8051單片機片內(nèi)有4KB的ROM存儲單元,簡稱內(nèi)部程序存儲器地址范圍(0000H0FFFH)??赏獠繑U展程序存儲器,地址范圍(1000HFFFFH)。程序執(zhí)行時

37、到底訪問哪個地址空間的程序存儲器,由/EA信號決定。,/EA=1時,選擇訪問內(nèi)部程序存儲器。,/EA=0時,選擇訪問外部程序存儲器。,對于8031單片機來說, 內(nèi)部無程序存儲器, 必須外接程序存儲器,所以在設(shè)計時/EA始終接低電平。,1.4.2 內(nèi)部程序存儲器,80C51內(nèi)有4KB ROM,其地址為0000H0FFFH(內(nèi)部ROM)。 其中0000H0002H是系統(tǒng)的啟動單元。 系統(tǒng)復(fù)位后(PC)0000H,開始取指令執(zhí)行程序。 如果不從0000H開始,應(yīng)存放一條無條件轉(zhuǎn)移指令,以便直接 轉(zhuǎn)去執(zhí)行指定的程序。 作用: (1)用來存放固化了的用戶程序,取指地址由程序計數(shù)器PC給出, PC具有自動

38、加1的功能; (2)固化一片數(shù)據(jù)區(qū),存放被查詢的表格和參數(shù)等。,0003H000AH外部中斷0(INT0)中斷地址區(qū) 000BH0012H 定時器/記數(shù)器0(T0)中斷地址區(qū) 0013H001AH外部中斷1(INT1)中斷地址區(qū) 001BH0022H定時器/計數(shù)器1(T1)中斷地址區(qū) 0023H002AH串行(RI/TI)中斷地址區(qū),中斷入口:0003H0023H,中斷服務(wù)程序存放方法: (1)從中斷地址區(qū)首地址開始,在中斷地址區(qū)中直接存放; (2)從中斷地址區(qū)首地址開始,存放一條無條件轉(zhuǎn)移指令, 以便中斷響應(yīng)后,通過中斷地址區(qū),再轉(zhuǎn)到中斷服務(wù) 程序的實際入口地址區(qū)去。,程序存儲器保留的單元:

39、,低128單元是單片機的真正RAM存儲器。,1.4.3 內(nèi)部數(shù)據(jù)存儲器低128單元,分為三個區(qū)域: 1 寄存器區(qū): 4組寄存器(寄存器陣列)。 即4個工作寄存器0區(qū)3區(qū)。每組 8個寄存單元(每單元8位),以 R0R7作寄存器名,暫存運算數(shù)據(jù) 和中間結(jié)果。 字節(jié)地址為00H1FH。 2 位尋址區(qū) : 字節(jié)地址為20H2FH,既可 作RAM,也可位操作。 共有16個RAM單元,共128 位,位地址為00H7FH。 3 用戶RAM區(qū): 32個單元,地址為30H7FH, 在一般應(yīng)用中常作堆棧區(qū)。,用PSW中的兩位PSW.4和PSW.3來切換工作寄存器區(qū),選用一個工作寄存器區(qū)進(jìn)行讀寫操作。,1.4.3

40、內(nèi)部數(shù)據(jù)存儲器高128單元,內(nèi)部RAM的高128單元 專用寄存器(SFR)區(qū) 地址為80HFFH (也稱特殊功能寄存器),其字節(jié)地址可被8整除。 專用寄存器: A、B、PSW、 DPTR、SP。 I/O接口寄存器: P0、P1、P2、P3、SBUF、TMOD、TCON、SCON ,有2套地址,字節(jié)地址:只21個有效(其中僅11個有位地址) 位地址:只83位有效,1、SFR(80HFFH)介紹:,(1) 程序計數(shù)器PC(16位): CPU總是按PC的指示讀取程序。PC是一個16位的計數(shù)器。其內(nèi)容為將要執(zhí)行的指令地址(即下一條指令地址),可自動加1。因此CPU執(zhí)行程序一般是順序方式。當(dāng)發(fā)生轉(zhuǎn)移、子

41、程序調(diào)用、中斷和復(fù)位等操作,PC被強制改寫,程序執(zhí)行順序也發(fā)生改變。 復(fù)位時,PC=0000H。,(2) 累加器Acc(8位): 需要ALU處理的數(shù)據(jù)和計算結(jié)果多數(shù)要經(jīng)過累加器A。,(3) 寄存器B (8位): 與A累加器配合執(zhí)行乘、除運算。也可用作通用寄存器。 (4) 程序狀態(tài)字PSW (8位):,存放ALU運算過程的標(biāo)志狀態(tài)。 (5) 數(shù)據(jù)指針DPTR (16位): 存放片外存儲器地址,作為片外存儲器的指針。可分成兩個8位寄存器DPH、DPL使用。,2. 專用寄存器的字節(jié)尋址,注意: 21個可字節(jié)尋址的專用寄存器是不連續(xù)地分散在內(nèi)部RAM高128單元之中,共83個可尋址位。盡管還剩余許多空

42、閑單元,但用戶并不能使用 在22個專用寄存器中,唯一一個不可尋址的PC。PC不占據(jù)RAM單元,它在物理上是獨立的,因此是不可尋址的寄存器。 對專用寄存器只能使用直接尋址方式,書寫時既可使用寄存器符號,也可使用寄存器單元地址。,MCS-51的寄存器在片內(nèi)RAM都有映像地址。使用時,既可用寄存器名,也可用對應(yīng)單元地址。,2.2.5 存儲器結(jié)構(gòu)特點,普林斯頓結(jié)構(gòu): 程序和數(shù)據(jù)共用一個存儲器邏輯空間,統(tǒng)一編址。,哈佛結(jié)構(gòu): 程序與數(shù)據(jù)分為兩個獨立存儲器邏輯空間,分開編址。,物理上4個存儲器地址空間: 片內(nèi)程序存儲器 片外程序存儲器 片內(nèi)數(shù)據(jù)存儲器 片外數(shù)據(jù)存儲器 邏輯上3個存儲器地址空間: 64KB

43、程序存儲器 256B 片內(nèi)數(shù)據(jù)存儲器 64KB 片外數(shù)據(jù)存儲器,存儲器小結(jié): MCS51的程序存儲器與數(shù)據(jù)存儲器是分開的(屬于哈佛結(jié)構(gòu)),地址空間重迭,最大可擴展到64KB。 1、程序存儲器ROM (1)8031內(nèi)部無程序存儲器 由于8031無片內(nèi)程序存儲器,需外接,因此, 端必須外接低電平。 (2)8051、8751內(nèi)部有4KB ROM/EPROM: =0,使用外部程序存儲器; =1,使用內(nèi)部程序存儲器4KB空間,當(dāng)PC的值超過4KB 范圍時,自動轉(zhuǎn)向外部程序存儲器。 2、數(shù)據(jù)存儲器RAM (1)內(nèi)部RAM中低128B,00H7FH; (2)外部RAM,可擴至64KB,0000HFFFFH。

44、,堆棧操作,向上生長型 (向地址增大的方向生成):MCS51系列 堆棧類型 向下生長型(向地址較低的方向生成):MCS96系列 堆棧指針SP (8位): MCS51系列的堆棧是按“先進(jìn)后出”原則存取數(shù)據(jù)的存儲區(qū)。 MCS51堆棧設(shè)在片內(nèi)RAM區(qū)。 數(shù)據(jù)入棧時:先SP自動加1,后寫入數(shù)據(jù),SP始終指向棧頂?shù)刂贰?“先加后壓” 數(shù)據(jù)出棧時:先讀出數(shù)據(jù),后SP自動減 1,SP始終指向棧頂?shù)刂贰?“先彈后減” 復(fù)位時 SP=07H。但在程序設(shè)計時應(yīng)將SP值初始化為30H以后, 以免占用寶貴的寄存器區(qū)和位地址區(qū)。,最小應(yīng)用系統(tǒng):,基本的單片機控制電路板,1、介紹單片機的編程結(jié)構(gòu)和內(nèi)部邏輯結(jié)構(gòu)及性能。 2、學(xué)習(xí)了單片機存儲器結(jié)構(gòu)特點、內(nèi)部數(shù)據(jù)存儲器 和程序存儲器的結(jié)構(gòu)和工作原理。 3、單片機的4個8位并行端口P0 、P1 、P2和P3各自的 口電路邏輯和功能。 4、單片機的時鐘電路和時序以及單片機的6種工作 方式。,小 結(jié),

展開閱讀全文
溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

相關(guān)資源

更多
正為您匹配相似的精品文檔
關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號:ICP2024067431-1 川公網(wǎng)安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng),我們立即給予刪除!