版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、單片機(jī)原理及應(yīng)用主講教師: 王劍長江大學(xué)計算機(jī)學(xué)院有關(guān)本課程學(xué)習(xí)的幾點建議 本課程是一門實踐性、應(yīng)用性很強(qiáng)的學(xué)科僅僅聽懂還不夠,重在培養(yǎng)動手能力硬件/軟件同樣重要、不可偏廢 硬件是骨架,軟件是皮肉器臟及思想本課程的前期基礎(chǔ)課程是數(shù)字電路與微機(jī)原理這方面知識掌握得不夠好的請自己補上預(yù)習(xí)、聽課、復(fù)習(xí)、作業(yè)、實驗環(huán)環(huán)都重要用科學(xué)的方法學(xué)習(xí)作業(yè) 每人準(zhǔn)備一個作業(yè)本 作業(yè)和實驗報告可用其他課程用過而沒用完的本子,但不能用單頁紙,學(xué)期末作業(yè)本就是一本復(fù)習(xí)提綱。第1章 預(yù)備知識(數(shù)制與碼制) 不講第2章 單片機(jī)基礎(chǔ) 4第3章 指令系統(tǒng)及匯編語言程序設(shè)計 6第5章 輸入/輸出、中斷、定時與串行通信 8第4章
2、單片機(jī)系統(tǒng)的擴(kuò)展(并入第6章講)第6章 接口芯片與接口技術(shù) 1214插入:C51程序設(shè)計 2第7章 單片機(jī)應(yīng)用系統(tǒng)設(shè)計 34第8章 幾種典型的單片機(jī) 4課堂授課時間分配: (34學(xué)時)緒 論緒 論 在工業(yè)、農(nóng)業(yè)、軍事、保安、金融、儀器儀表、航空航天、醫(yī)療、通訊、辦公設(shè)備、娛樂休閑、健身、體育競賽、服務(wù)領(lǐng)域,大量單片機(jī)-嵌入式技術(shù)已經(jīng)無處不在。正迅速改變著人們傳統(tǒng)的生產(chǎn)和生活方式。 請稍微留心一下我們的周圍,看看身邊到底發(fā)生了什么變化?單片機(jī)技術(shù)的應(yīng)用遍布國民經(jīng)濟(jì)與人民生活的各個領(lǐng)域從一個簡單的測控應(yīng)用實例說起動作選擇按鈕紅外線傳感器89C2051單片機(jī)復(fù)位按鈕電源指示燈從一個簡單的測控應(yīng)用實例
3、說起任務(wù)一:控制一盞燈點亮任務(wù)二:紅燈周期性地點亮/熄滅信號檢測柔性開關(guān)集群燈控順序控制/多任務(wù)定時切換自動生產(chǎn)流水線任務(wù)三:紅外防盜報警實時控制簡單測控實例原理圖數(shù)字電路中由13片IC組成的數(shù)字鐘數(shù)字電路中由13片IC組成的數(shù)字鐘數(shù)字電路中由13片IC組成的數(shù)字鐘單片IC(單片機(jī))電子鐘單片機(jī)單片機(jī)與嵌入式技術(shù) 重要嗎?有用嗎?遙遠(yuǎn)嗎? 問題的答案是不言而喻的。第一講:單片機(jī)基礎(chǔ)本講重點: MCS-51的基本特性; 單片機(jī)的引腳與I/O口結(jié)構(gòu); 存儲器、堆棧與特殊功能寄存器.第一章 單片機(jī)基礎(chǔ) 單片機(jī)與嵌入式:單片微機(jī)(Single Chip Micro-computer)微控制器(Micr
4、o-Controller UnitMCU)嵌入式微控制器(Embedded Microcontroller) 單片機(jī)應(yīng)用領(lǐng)域:測控系統(tǒng)、智能儀表、智能接口、辦公自動化、光機(jī)電一體化設(shè)備、通訊設(shè)備、網(wǎng)絡(luò)設(shè)備、汽車電子、消費類電子產(chǎn)品、智能樓宇設(shè)備 單片機(jī)的多元化發(fā)展:Intel Motorola Philips Atmel Siemens NS LG Winbond Microchip EPSON NEC Cypress Dallas Oki Fairchild Fujitsu Hitachi SAMSUNG組成: CPU(進(jìn)行運算、控制) RAM(數(shù)據(jù)存儲器) I/O口(串口、并口等) ROM
5、(程序存儲器) PC機(jī): 上述部件以芯片形式安裝在主板上。 單片機(jī):上述部件被集成到單芯片中。通用PC包括:鍵盤、顯示器、鼠標(biāo)、硬/軟/光驅(qū)、音箱、打印機(jī)、掃描儀等外設(shè)。單片機(jī)則只是一片集成電路。(100、48、40、32、28、20、16、8條引腳)。單片機(jī)與計算機(jī)之異同(1)功能:PC機(jī): 數(shù)據(jù)運算、采集、處理、存儲、傳輸;單片機(jī):控制(或受控于)外設(shè)。通用計算機(jī)擅長于數(shù)據(jù)運算、采集、處理、存儲和傳輸;單片機(jī)的專長則是測控,往往嵌入某個儀器/設(shè)備/系統(tǒng)中,使其達(dá)到智能化的效果。單片機(jī)與計算機(jī)之異同(2)應(yīng)用特點:個人計算機(jī)(微機(jī)):體積大,功耗大,價格高,用途較固定,屬通用計算機(jī)。易于學(xué)習(xí)
6、掌握和使用,但用于控制時必須制作或購買專用的接口卡,并編制專門的應(yīng)用軟件。單片機(jī):體積小,功耗小,價格低,用途靈活,無處不在,屬專用計算機(jī)。是一種特殊器件,需經(jīng)過專門學(xué)習(xí)方能掌握應(yīng)用,應(yīng)用中要設(shè)計專業(yè)的硬件和軟件。單片機(jī)與計算機(jī)之異同(3)MCS-51單片機(jī)基本特性8 位的 CPU, 片內(nèi)有振蕩器和時鐘電路,工作頻率為 112MHz(Atmel 89Cxx為024MHz)片內(nèi)有 128/256字節(jié) RAM片內(nèi)有 0K/4K/8K字節(jié) 程序存儲器ROM可尋址片外 64K字節(jié) 數(shù)據(jù)存儲器RAM可尋址片外 64K字節(jié) 程序存儲器ROM片內(nèi) 21/26個 特殊功能寄存器(SFR)4個8位 的并行I/O
7、口(PIO)1個 全雙工串行口(SIO/UART)2/3個16位 定時器/計數(shù)器(TIMER/COUNTER)可處理 5/6個中斷源,兩級中斷優(yōu)先級內(nèi)置1個布爾處理器和1個布爾累加器(Cy)MCS-51指令集含 111條指令MCS-51系列單片機(jī)配置一覽表系列片內(nèi)存儲器(字節(jié))定時器計數(shù)器并行I/O串行I/O中斷源片內(nèi)ROM片內(nèi)RAM無有ROM有EPROMIntelMCS-51子系列803180C31805180C51(4K字節(jié))875187C51(4K字節(jié))128字節(jié)2x164x8位15IntelMCS-52子系列803280C32805280C52(8K字節(jié))875287C52(8K字節(jié))
8、256字節(jié)3x164x8位16注意:今后將會經(jīng)常提到ATMEL的AT89C2051/51/52等MCU!ATEML89C系列(常用型)1051(1K)/ 2051(2K)/ 4051(4K)(20條引腳DIP封裝)1282151589C51(4K)/ 89C52(8K)(40條引腳DIP封裝)128/2562/33215/6內(nèi)部結(jié)構(gòu)框圖單片機(jī)的引腳定義從一片集成電路的角度去認(rèn)識單片機(jī)認(rèn)識單片機(jī)的引腳MCS-51單片機(jī)40腳Vcc, GND 2XTAL1, XTAL2 2RESET 1EA/Vpp 1ALE/PROG 1PSEN 1P0.0P0.7 8 P1.0P1.7 8 P2.0P2.7 8
9、 P3.0P3.7 8單片機(jī)的引腳(電源端)Vcc, GND: 正電源端與接地端(+5V/3.3V/2.7V)不同的單片機(jī)可以允許不同的工作電壓,不同的單片機(jī)表現(xiàn)出的功耗也不同。單片機(jī)的引腳(晶振端)Vcc, GND: 正電源端與接地端(+5V/3.3V/2.7V)不同的單片機(jī)可以允許不同的工作電壓,不同的單片機(jī)表現(xiàn)出的功耗也不同。XTAL1, XTAL2: 片內(nèi)振蕩電路輸入/輸出端單片機(jī)的引腳(晶振端)Vcc, GND:正電源端與接地端 (+5V/3.3V/2.7V)XTAL1, XTAL2: 片內(nèi)振蕩電路輸入/輸出端1545pfx2112MHz(MCS-51) 024MHz(Atmel-8
10、9C)XTAL1XTAL2也可以由 XTAL1端接入外部時鐘,此時應(yīng)將 XTAL2接地:XTAL2XTAL1外部時鐘通常外接一個晶振兩個電容單片機(jī)的引腳(晶振端)Vcc, GND:正電源端與接地端(+5V/3.3V/2.7V)XTAL1, XTAL2: 片內(nèi)振蕩電路輸入、輸出端CPU總是按照一定的時鐘節(jié)拍與時序工作:振蕩周期/時鐘周期: Tc=晶振頻率fosc(或外加頻率)的倒數(shù)狀態(tài)周期:Ts=2個時鐘周期(Tc)(很少用到此概念)機(jī)器周期:Tm=6個狀態(tài)周期(Ts)=12個振蕩周期(Tc)指令周期: Ti:執(zhí)行一條指令所需的機(jī)器周期(Tm)數(shù)牢牢記?。?振蕩周期 = 晶振頻率fosc的倒數(shù);
11、 1個機(jī)器周期 = 12個振蕩周期; 1個指令周期 = 1、2、4個機(jī)器周期單片機(jī)的引腳(復(fù)位端)Vcc, GND: 電源端 (+5V/3.3V/2.7V)XTAL1, XTAL2: 片內(nèi)振蕩電路輸入、輸出端RESET: 復(fù)位端(正脈沖有效,寬度8 mS)復(fù)位使單片機(jī)進(jìn)入某種確定的初始狀態(tài): PC值歸零(0000H); 各個SFR被賦予初始值(見P.42): P0P3 = 0FFH,Acc = 0,B = 0,TH0=0,TL0=0,TH1=0,TL0=0,SP=7,PSW=0 退出處于節(jié)電工作方式的停頓狀態(tài)、退出一切程序進(jìn)程、退出程序的死循環(huán),從頭開始。單片機(jī)的引腳(復(fù)位端)Vcc, GND
12、: 電源端 (+5V/3.3V/2.7V)XTAL1, XTAL2: 片內(nèi)振蕩電路輸入、輸出端RESET: 復(fù)位端(正脈沖有效,寬度8 mS)PC與SFR復(fù)位狀態(tài)表寄存器復(fù)位狀態(tài)寄存器復(fù)位狀態(tài)PC0000HTCON00HA00HT2CON00HB00HTH000HPSW00HTL000HSP07HTH100HDPTR0000HTL100HP0P3FFHSCON00HIPXX000000BSBUFXXHIE0X000000BPCON0XXX0000BTMOD00H單片機(jī)的引腳(復(fù)位端)+5V10uF10KVccRSTGND上電復(fù)位10uF10KVccRSTGND手動&上電復(fù)位1KVcc, GND
13、: 電源端 (+5V/3.3V/2.7V)XTAL1, XTAL2: 片內(nèi)振蕩電路輸入、輸出端RESET: 復(fù)位端 (正脈沖有效,寬度8 mS)+5V單片機(jī)的引腳(EA端)Vcc, GND: 電源端 (+5V/3.3V/2.7V)XTAL1, XTAL2: 片內(nèi)振蕩電路輸入、輸出端RESET: 復(fù)位端 (正脈沖有效,寬度8 mS)EA/Vpp: 尋址外部ROM控制端/編程電源輸入端。 低有效,片內(nèi)無ROM時必須接地; 片內(nèi)有ROM時應(yīng)當(dāng)接高電平; 對片內(nèi)ROM編程時編程正電源加到此端。單片機(jī)的引腳(ALE端)Vcc, GND: 電源端 (+5V/3.3V/2.7V)XTAL1, XTAL2:
14、片內(nèi)振蕩電路輸入、輸出端RESET: 復(fù)位端 (正脈沖有效,寬度8 mS)EA/Vpp: 尋址外部ROM控制端/編程電源輸入端。ALE/PROG: 地址鎖存允許/編程脈沖輸入端。 P0口尋址外部低8位地址時接外部鎖存器 G端; ALE端平時會輸出周期正脈沖:f fosc/6 ; 對片內(nèi)ROM編程時編程脈沖由此端加入。 單片機(jī)的引腳(PSEN端)PSEN:尋址外部程序存儲器時選通外部EPROM的 讀控制端(OE)低有效。單片機(jī)鎖存器74LS373P0.0-P0.7ALEPSENP2.0-P2.48D8QOEA8-A12A0-A7D0-D7GEAOECEEPROM單片機(jī)的引腳(PSEN端)PSEN
15、:尋址外部程序存儲器時選通外部EPROM的 讀控制端(OE)低有效。單片機(jī)的I/O引腳結(jié)構(gòu)眾多功能各異的I/O引腳源于它結(jié)構(gòu)的不同單片機(jī)的引腳(P1口)P1.0P1.7: 準(zhǔn)雙向I/O口(內(nèi)置了上拉電阻) 輸出時一切照常,僅在作輸入口用時要先對其 寫“1”。21DQCK/Q讀引腳讀鎖存器寫鎖存器內(nèi)部總線Vcc引腳P1.X內(nèi)部上拉電阻21DQCK/Q讀引腳讀鎖存器寫鎖存器內(nèi)部總線Vcc引腳P1.X內(nèi)部上拉電阻輸出數(shù)據(jù) = 1 時110截止=1單片機(jī)的引腳(P1口)P1.0P1.7: 準(zhǔn)雙向I/O口(內(nèi)置了上拉電阻) 輸出時一切照常,僅在作輸入口用時要先對其 寫“1”。21DQCK/Q讀引腳讀鎖存
16、器寫鎖存器內(nèi)部總線Vcc引腳P1.X內(nèi)部上拉電阻輸出數(shù)據(jù) = 0 時001=0導(dǎo)通單片機(jī)的引腳(P1口)P1.0P1.7: 準(zhǔn)雙向I/O口(內(nèi)置了上拉電阻) 輸出時一切照常,僅在作輸入口用時要先對其 寫“1”。21DQCK/Q讀引腳 =1讀鎖存器寫鎖存器內(nèi)部總線Vcc引腳P1.X內(nèi)部上拉電阻輸入數(shù)據(jù)時,要先對其寫“1”110截止單片機(jī)的引腳(P1口)P1.0P1.7: 準(zhǔn)雙向I/O口(內(nèi)置了上拉電阻) 輸出時一切照常,僅在作輸入口用時要先對其 寫“1”。簡單測控實例原理圖P1.3作輸入端口光路通暢,R亮2K光路阻斷,R暗 400K R亮 250K JOB3: CLR P1.1 ;亮綠燈REDO
17、: SETB P1.3 ;P1.3作輸入口必先置1CHECK:JNB P1.3,CHECK ;檢測通道是否被阻斷?LOOP: ;有入侵者,報警!AJMP REDO ;再跳回去檢測任務(wù)三:紅外防盜報警P1.3口用于輸入狀態(tài)檢測的語句: R亮250K ,紅外線光路阻斷時,P1.3端高電平單片機(jī)的引腳(P0口)P0.0P0.7: 雙向I/O (內(nèi)置場效應(yīng)管上拉) 尋址外部程序存儲器時分時作為雙向8位數(shù)據(jù)口和輸出低8位地址復(fù)用口;不接外部程序存儲器時可作為8位準(zhǔn)雙向I/O口使用。21DQCK/Q讀引腳讀鎖存器寫鎖存器內(nèi)部總線地址/數(shù)據(jù)控制引腳P0.X34Vcc21DQCK/Q讀引腳 =1讀鎖存器寫鎖存
18、器內(nèi)部總線地址/數(shù)據(jù)控制引腳P0.X34控制=0 時,此腳作輸入口(事先必須對它寫“1”)00100截止截止=0Vcc單片機(jī)的引腳(P0口)P0.0P0.7: 雙向I/O (內(nèi)置場效應(yīng)管上拉) 尋址外部程序存儲器時分時作為雙向8位數(shù)據(jù)口和輸出低8位地址復(fù)用口;不接外部程序存儲器時可作為8位準(zhǔn)雙向I/O口使用。21DQCK/Q讀引腳 =0讀鎖存器寫鎖存器內(nèi)部總線地址/數(shù)據(jù)控制=1引腳P0.X34控制=1時,此腳作地址/數(shù)據(jù)復(fù)用口:(1)輸出地址/數(shù)據(jù) =0 時1011=0導(dǎo)通截止=0Vcc單片機(jī)的引腳(P0口)P0.0P0.7: 雙向I/O (內(nèi)置場效應(yīng)管上拉) 尋址外部程序存儲器時分時作為雙向
19、8位數(shù)據(jù)口和輸出低8位地址復(fù)用口;不接外部程序存儲器時可作為8位準(zhǔn)雙向I/O口使用。21DQCK/Q讀引腳 =0讀鎖存器寫鎖存器內(nèi)部總線地址/數(shù)據(jù)控制=1引腳P0.X34控制=1時,此腳作地址/數(shù)據(jù)復(fù)用口:(2)輸出地址/數(shù)據(jù) =1 時1100=1截止導(dǎo)通=1Vcc單片機(jī)的引腳(P0口)P0.0P0.7: 雙向I/O (內(nèi)置場效應(yīng)管上拉) 尋址外部程序存儲器時分時作為雙向8位數(shù)據(jù)口和輸出低8位地址復(fù)用口;不接外部程序存儲器時可作為8位準(zhǔn)雙向I/O口使用。21DQCK/Q讀引腳 =1讀鎖存器寫鎖存器內(nèi)部總線地址/數(shù)據(jù)控制=1引腳P0.X34控制=1時,此腳作地址/數(shù)據(jù)復(fù)用口: (3)輸入數(shù)據(jù)時,
20、輸入指令將使引腳與內(nèi)部總線直通Vcc單片機(jī)的引腳(P0口)P0.0P0.7: 雙向I/O (內(nèi)置場效應(yīng)管上拉) 尋址外部程序存儲器時分時作為雙向8位數(shù)據(jù)口和輸出低8位地址復(fù)用口;不接外部程序存儲器時可作為8位準(zhǔn)雙向I/O口使用。單片機(jī)的引腳(P2口)P2.0P2.7: 雙向I/O (內(nèi)置了上拉電阻) 尋址外部程序存儲器時輸出高8位地址;不接外部程序存儲器時可作為8位準(zhǔn)雙向I/O口使用。21DQCK/Q讀引腳讀鎖存器寫鎖存器內(nèi)部總線地址高8位控制引腳 P2.X3內(nèi)部上拉電阻Vcc21DQCK/Q讀引腳 =0讀鎖存器寫鎖存器內(nèi)部總線地址高8位控制 引腳P2.X控制=0時,此腳作通用輸出口: 輸出=
21、1時110截止3內(nèi)部上拉電阻11Vcc=1=0單片機(jī)的引腳(P2口)P2.0P2.7: 雙向I/O (內(nèi)置了上拉電阻) 尋址外部程序存儲器時輸出高8位地址;不接外部程序存儲器時可作為8位準(zhǔn)雙向I/O口使用。21DQCK/Q讀引腳 =0讀鎖存器寫鎖存器內(nèi)部總線地址高8位控制 引腳P2.X控制=0時,此腳作通用輸出口:輸出=0時001導(dǎo)通3內(nèi)部上拉電阻00Vcc=0=0單片機(jī)的引腳(P2口)P2.0P2.7: 雙向I/O (內(nèi)置了上拉電阻) 尋址外部程序存儲器時輸出高8位地址;不接外部程序存儲器時可作為8位準(zhǔn)雙向I/O口使用。21DQCK/Q讀引腳 =0讀鎖存器寫鎖存器內(nèi)部總線地址高8位控制=1
22、引腳P2.X控制=1 時,此腳作高8位地址A8A15輸出口:當(dāng)輸出 =1 時10截止3內(nèi)部上拉電阻1=1Vcc=1單片機(jī)的引腳(P2口)P2.0P2.7: 雙向I/O (內(nèi)置了上拉電阻) 尋址外部程序存儲器時輸出高8位地址;不接外部程序存儲器時可作為8位準(zhǔn)雙向I/O口使用。21DQCK/Q讀引腳 =0讀鎖存器寫鎖存器內(nèi)部總線地址高8位控制=1 引腳P2.X01導(dǎo)通3內(nèi)部上拉電阻0=0Vcc=0控制=1 時,此腳作高8位地址A8A15輸出口:當(dāng)輸出 =0 時單片機(jī)的引腳(P2口)P2.0P2.7: 雙向I/O (內(nèi)置了上拉電阻) 尋址外部程序存儲器時輸出高8位地址;不接外部程序存儲器時可作為8位
23、準(zhǔn)雙向I/O口使用。單片機(jī)的引腳(P3口)P3.0P3.7: 雙功能口(內(nèi)置了上拉電阻) 它具有特定的第二功能。在不使用它的第二功能時它就是普通的通用準(zhǔn)雙向I/O口。21DQCK/Q讀引腳讀鎖存器寫鎖存器內(nèi)部總線第二功能輸出引腳 P3.X3內(nèi)部上拉電阻Vcc第二功能輸入421DQCK/Q讀引腳讀鎖存器寫鎖存器內(nèi)部總線第二功能輸出(WR,RD,TxD)引腳 P3.X3內(nèi)部上拉電阻Vcc4第二功能輸出時,內(nèi)部自動 D=1111反相器單片機(jī)的引腳(P3口)P3.0P3.7: 雙功能口(內(nèi)置了上拉電阻) 它具有特定的第二功能。在不使用它的第二功能時它就是普通的通用準(zhǔn)雙向I/O口。21DQCK/Q讀引腳
24、讀鎖存器寫鎖存器內(nèi)部總線此端自動1引腳 P3.X3內(nèi)部上拉電阻Vcc 第二功能輸入(RxD,T0,T1,INT0,INT1)4第二功能輸入時,信號經(jīng)緩沖器4 直接進(jìn)入內(nèi)總線1110截止單片機(jī)的引腳(P3口)P3.0P3.7: 雙功能口(內(nèi)置了上拉電阻) 它具有特定的第二功能。在不使用它的第二功能時它就是普通的通用準(zhǔn)雙向I/O口。P3口第二功能表(P.26 表23)引 腳第 二 功 能 P3.0RxD: 串行口接收數(shù)據(jù)輸入端P3.1TxD: 串行口發(fā)送數(shù)據(jù)輸出端P3.2INT0: 外部中斷申請輸入端 0P3.3INT1: 外部中斷申請輸入端 1P3.4T0: 外部計數(shù)脈沖輸入端 0P3.5T1:
25、 外部計數(shù)脈沖輸入端 1P3.6WR: 寫外設(shè)控制信號輸出端P3.7RD: 讀外設(shè)控制信號輸出端51單片機(jī)的8個特殊引腳Vcc, GND: 電源端XTAL1, XTAL2: 片內(nèi)振蕩電路輸入、輸出端RESET: 復(fù)位端 正脈沖有效(寬度8 mS)EA/Vpp: 尋址外部ROM控制端。低有效 片內(nèi)有ROM時應(yīng)當(dāng)接高電平。ALE/PROG: 地址鎖存允許控制端。PSEN:選通外部ROM的讀(OE)控制端。 低有效 小結(jié)51單片機(jī)的4個8位的I/O口P0.0P0.7:8位數(shù)據(jù)口和輸出低8位地址復(fù)用口 (復(fù)用時是雙向口;不復(fù)用時也是準(zhǔn)雙向口)P1.0P1.7: 通用I/O口(準(zhǔn)雙向口)P2.0P2.7
26、: 輸出高8位地址(用于尋址時是輸出口;不尋址時是準(zhǔn)雙向口)P3.0P3.7: 具有特定的第二功能(準(zhǔn)雙向口)注意:在不外擴(kuò)ROM/RAM時,P0P3均可作通用I/O口使用,而且都是準(zhǔn)雙向I/O口(例如:AT89C51)! 小結(jié)P3口第二功能表 (P.26 表23)引 腳第 二 功 能 P3.0RxD: 串行口接收數(shù)據(jù)輸入端P3.1TxD: 串行口發(fā)送數(shù)據(jù)輸出端P3.2INT0: 外部中斷申請輸入端 0P3.3INT1: 外部中斷申請輸入端 1P3.4T0: 外部計數(shù)脈沖輸入端 0P3.5T1: 外部計數(shù)脈沖輸入端 1P3.6WR: 寫外設(shè)控制信號輸出端P3.7RD: 讀外設(shè)控制信號輸出端 小
27、結(jié)存儲器、堆棧、SFR數(shù)據(jù)存儲器RAM(Random Access Memory)程序存儲器ROM(Read Only Memory)閃速存儲器Flash MemoryEPROM(UV)Erazible Programmable ROMEEPROM/E2PROMElectrical Erasable Programmable ROM靜態(tài)存儲器 SRAMStatic RAM (動態(tài)存儲器 DRAMDynamic RAM)按字節(jié)尋址:每個字節(jié)(8個位)占一個地址按位尋址:有的存儲器每一個位就有一個地址單片機(jī)的存儲器幾個有關(guān)的概念:89C51單片機(jī)存儲器配置片內(nèi)RAM 128字節(jié)(00H7FH);
28、片內(nèi)RAM前32個單元是工作寄存器區(qū)(00H1FH) 片內(nèi)RAM有128個可按位尋址的位,占16個單元。 位地址編號為:00H7FH,分布在20H2FH單元片內(nèi)21個特殊功能寄存器(SFR)中:地址號能被 8整除的 SFR中的各位也可按位尋址(P.33-34)可尋址片外RAM 64K字節(jié) (0000HFFFFH)可尋址片外ROM 64K字節(jié) (0000HFFFFH)片內(nèi) Flash ROM 4K字節(jié) (000HFFFH)存儲器配置(片內(nèi)RAM)片內(nèi)RAM 128字節(jié)(00H7FH)00H20H2FH7FH1FH30H80HFFH52子系列才有的RAM區(qū)普通RAM區(qū)位尋址區(qū)工作寄存器區(qū)SFR分布
29、在80H-FFH其中92個位可位尋址80HFFH所有的RAM區(qū)(包括位尋址區(qū)、工作寄存器區(qū))都可以用于存放數(shù)據(jù),故也稱為數(shù)據(jù)緩存寄存器89C51 128字節(jié)片內(nèi)RAM前32個單元是工作寄存器區(qū) (00H1FH)00H20H2FH7FH1FH30H80HFFH52子系列才有的RAM區(qū)普通RAM區(qū)位尋址區(qū)工作寄存器區(qū)存儲器配置(片內(nèi)RAM)00H20H2FH7FH1FH30H80HFFH52子系列才有的RAM區(qū)普通RAM區(qū)位尋址區(qū)工作寄存器區(qū)R0R2R1R3R4R5R6R707H02H01H00H06H04H05H03H08H1FH工作寄存器區(qū)3工作寄存器區(qū)2工作寄存器區(qū)1工作寄存器區(qū)00FH10
30、H17H18H片內(nèi)RAM前32個單元是工作寄存器區(qū) (00H1FH)存儲器配置(片內(nèi)RAM)00H20H2FH7FH1FH30H80HFFH52子系列才有的RAM區(qū)普通RAM區(qū)位尋址區(qū)工作寄存器區(qū)片內(nèi)RAM中有128個可按位尋址的位。 位地址:00H7FH 分布在:20H2FH單元存儲器配置(片內(nèi)RAM)00H20H2FH7FH1FH30H80HFFH52子系列才有的RAM區(qū)普通RAM區(qū)位尋址區(qū)工作寄存器區(qū)27H22H21H20H26H24H25H23H28H2FH單元地址07 06 05 04 03 02 01 000F 0E 0D 0C 0B 0A 09 0817 16 15 14 13
31、12 11 101F 1E 1D 1C 1B 1A 19 1827 26 25 24 23 22 21 202F 2E 2D 2C 2B 2A 29 2837 36 35 34 33 32 31 303F 3E 3D 3C 3B 3A 39 3847 46 45 44 43 42 41 407F 7E 7D 7C 7B 7A 79 78位地址總共128個可按位尋址的位片內(nèi)RAM中有128個可按位尋址的位。 位地址:00H7FH 分布在:20H2FH單元存儲器配置(片內(nèi)RAM)可尋址片外RAM 64K字節(jié) (0000HFFFFH);可尋址片外ROM 64K字節(jié) (0000HFFFFH);片內(nèi) F
32、lash ROM 4K字節(jié) ( 000H FFFH);FFFFH0000H可尋址片外RAM 64K字節(jié)FFFFH0000H可尋址片外ROM 64K字節(jié)FFFH000H可尋址片內(nèi) Flash ROM4K 字節(jié)89C517FH00H片內(nèi) RAM 128字節(jié)FFH80H存儲器配置(片內(nèi)RAM)堆棧: 在片內(nèi)RAM中,常常要指定一個專門的區(qū)域來存放某些特別的數(shù)據(jù),它遵循順序存取和后進(jìn)先出(LIFO/FILO)的原則,這個RAM區(qū)叫堆棧。功用:1)子程序調(diào)用和中斷服務(wù)時CPU自動將當(dāng)前PC 值壓棧保存,返回時自動將PC值彈棧。2)保護(hù)現(xiàn)場/恢復(fù)現(xiàn)場3)數(shù)據(jù)傳輸00H20H2FH7FH1FH30H80HF
33、FH52子系列才有的RAM區(qū)普通RAM區(qū)位尋址區(qū)工作寄存器區(qū) SP棧頂下一個進(jìn)棧的數(shù)據(jù)將存在此數(shù)據(jù)進(jìn)棧已經(jīng)進(jìn)棧的數(shù)據(jù)存放在此初始 SP復(fù)位后 SP=07H,數(shù)據(jù)進(jìn)棧時:首先SP+1指向08H單元,第一個放進(jìn)堆棧的數(shù)據(jù)將放進(jìn)08H單元,然后SP再自動增 1,仍指著棧頂堆棧區(qū)由特殊功能寄存器堆棧指針SP管理 堆棧區(qū)可以安排在 RAM區(qū)任意位置,一般不安排在工作寄存器區(qū)和可按位尋址的RAM區(qū),通常放在RAM區(qū)的靠后的位置。從堆棧取出數(shù)據(jù)時:取出的數(shù)據(jù)是最近放進(jìn)去的一個數(shù)據(jù),也就是當(dāng)前棧頂?shù)臄?shù)據(jù)。然后SP再自動減1,仍指著棧頂00H20H2FH7FH1FH30H80HFFH52子系列才有的RAM區(qū)普通
34、RAM區(qū)位尋址區(qū)工作寄存器區(qū) SP棧頂當(dāng)前要出棧的數(shù)據(jù)數(shù)據(jù)出棧SP-1指向下一個將要出棧的數(shù)據(jù)初始 SP堆棧區(qū)由特殊功能寄存器堆棧指針SP管理 堆棧區(qū)可以安排在 RAM區(qū)任意位置,一般不安排在工作寄存器區(qū)和可按位尋址的RAM區(qū),通常放在RAM區(qū)的靠后的位置。從堆棧取出數(shù)據(jù)時:取出的數(shù)據(jù)是最近放進(jìn)去的一個數(shù)據(jù),也就是當(dāng)前棧頂?shù)臄?shù)據(jù)。然后SP再自動減1,仍指著棧頂00H20H2FH7FH1FH30H80HFFH52子系列才有的RAM區(qū)普通RAM區(qū)位尋址區(qū)工作寄存器區(qū)SP-1 指向新的棧頂,也就是下一個將要出棧的數(shù)據(jù)數(shù)據(jù)出棧初始 SP堆棧區(qū)由特殊功能寄存器堆棧指針SP管理 堆棧區(qū)可以安排在 RAM區(qū)
35、任意位置,一般不安排在工作寄存器區(qū)和可按位尋址的RAM區(qū),通常放在RAM區(qū)的靠后的位置。89C51特殊功能寄存器(SFR)特殊功能寄存器SFR(專用寄存器)專用于控制、選擇、管理、存放單片機(jī)內(nèi)部各部分的工作方式、條件、狀態(tài)、結(jié)果的寄存器。不同的SFR管理不同的硬件模塊,負(fù)責(zé)不同的功能各司其職換言之:要讓單片機(jī)實現(xiàn)預(yù)訂的功能,必須有相應(yīng)的硬件和軟件,而軟件中最重要的一項工作就是對SFR寫命令(要求)。程序計數(shù)器PC(Program Counter)PC 不是一個特殊功能寄存器SFR,但其作 用又十分重要和特殊!特點:它是16位的按機(jī)器周期自動增1計數(shù)器一切分支/跳轉(zhuǎn)/調(diào)用/中斷/復(fù)位 等操作的本
36、質(zhì)就是:改變 PC 值總指向下一條指令所在首地址(當(dāng)前PC值)特殊功能寄存器(PC)89C51有21個SFR(89C52有26個) P.3334 已知的P0、P1、P2、P3等四個8位I/O口分別由名為P0、P1、P2、P3四個SFR代表。堆棧指針寄存器 SP(Stack Pointer): 總是指向棧頂,壓棧時先 (SP)+1 然后數(shù)據(jù)進(jìn)棧;彈棧時數(shù)據(jù)先出棧 然后(SP)-1。累加器 ACC:一個被眾多指令用得最頻繁的特殊功能寄存器(如:運算、數(shù)據(jù)傳輸)。副累加器 B:一個經(jīng)常與 ACC 配合在一起使用的特殊功能寄存器(如:乘法、除法),此外,它也經(jīng)常當(dāng)作普通寄存器使用。特殊功能寄存器(P0
37、P3,SP,A,B)程序狀態(tài)字寄存器 PSW:CYACF0RS0OVPRS1PSW.7PSW.0CY(PSW.7)進(jìn)位/借位標(biāo)志位。若ACC在運算過程中發(fā)生了進(jìn)位或借位,則CY=1;否則=0。它也是布爾處理器的位累加器,可用于布爾操作。AC(PSW.6)半進(jìn)位/借位標(biāo)志位。若ACC在運算過程中,D3位向D4位發(fā)生了進(jìn)位或借位,則CY=1,否則=0。機(jī)器在執(zhí)行“DA A”指令時自動要判斷這一位,我們可以暫時不關(guān)心它。F0 (PSW.5)可由用戶定義的標(biāo)志位。PSW.6PSW.5特殊功能寄存器(PSW)程序狀態(tài)字寄存器 PSW(續(xù)):CYACF0RS0OVPRS1PSW.7PSW.0RS1(PSW.4)、RS0(PSW.3)工作寄存器組選擇位。RS1,RS0 = 0 1 則選擇了工作寄存器組 1 區(qū)R0R7分別代表08H 0FH單元。RS1,RS0 = 1 0 則選擇了工作寄存器組 2 區(qū) R0R7分別代表10H 17H單元。RS1,RS0 = 1 1 則選擇了工作寄存
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年山東省日照市中考英語真題卷含答案解析
- 2025年職業(yè)技能鑒定考試(無人機(jī)駕駛員-中級)歷年參考題庫及答案
- 2025年機(jī)關(guān)服務(wù)中心年度工作總結(jié)樣本
- 2026 年離婚協(xié)議書制式模板含補償金約定條款
- 食堂員工培訓(xùn)管理制度
- 學(xué)校食品安全責(zé)任體系管理制度
- 重慶市永川區(qū)2025-2026學(xué)年八年級上學(xué)期1月期末考試語文試題(含答案)
- 2026及未來5年中國變頻器檢測行業(yè)市場全景調(diào)查及未來趨勢研判報告
- 醫(yī)院醫(yī)療廢物處置設(shè)施安全教育培訓(xùn)制度
- 數(shù)據(jù)庫設(shè)計與優(yōu)化實操指南
- 民法典物業(yè)管理解讀課件
- 2025年中國汽輪機(jī)導(dǎo)葉片市場調(diào)查研究報告
- 中班幼兒戶外游戲活動實施現(xiàn)狀研究-以綿陽市Y幼兒園為例
- 特色休閑農(nóng)場設(shè)計規(guī)劃方案
- 采購部門月度匯報
- 新華書店管理辦法
- 檔案專業(yè)人員公司招聘筆試題庫及答案
- 工程竣工移交單(移交甲方、物業(yè))
- 來料檢驗控制程序(含表格)
- 2025年鈦合金閥項目可行性研究報告
評論
0/150
提交評論