單片機(jī)技術(shù)與項(xiàng)目訓(xùn)練 課件 第1章 單片機(jī)初步認(rèn)識(shí)_第1頁(yè)
單片機(jī)技術(shù)與項(xiàng)目訓(xùn)練 課件 第1章 單片機(jī)初步認(rèn)識(shí)_第2頁(yè)
單片機(jī)技術(shù)與項(xiàng)目訓(xùn)練 課件 第1章 單片機(jī)初步認(rèn)識(shí)_第3頁(yè)
單片機(jī)技術(shù)與項(xiàng)目訓(xùn)練 課件 第1章 單片機(jī)初步認(rèn)識(shí)_第4頁(yè)
單片機(jī)技術(shù)與項(xiàng)目訓(xùn)練 課件 第1章 單片機(jī)初步認(rèn)識(shí)_第5頁(yè)
已閱讀5頁(yè),還剩41頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

單片機(jī)初步認(rèn)識(shí)第1章單片機(jī)自誕生以來(lái)至今已經(jīng)有五十多年的歷史。從最初的4位微處理器發(fā)展到現(xiàn)在8位、16位和32位單片機(jī)。單片機(jī)的應(yīng)用范圍也逐漸擴(kuò)大,幾乎涵蓋了人們?nèi)粘Ia(chǎn)生活當(dāng)中各個(gè)領(lǐng)域,從家用電器到通信設(shè)備,從交通工具、醫(yī)療儀器到商用支付和娛樂(lè)產(chǎn)品,隨處可見(jiàn)單片機(jī)的身影。單片機(jī)的應(yīng)用如此之廣,我們應(yīng)該如何學(xué)習(xí)了解它呢?本章將從單片機(jī)發(fā)展歷史、內(nèi)部組成和工作原理,以及存儲(chǔ)器的結(jié)構(gòu)、單片機(jī)引腳、時(shí)鐘和復(fù)位電路進(jìn)行介紹,讓大家對(duì)單片機(jī)有一個(gè)初步的認(rèn)識(shí)。引言目錄單片機(jī)概述1單片機(jī)的內(nèi)部結(jié)構(gòu)2本章小結(jié)4單片機(jī)的引腳及其功能3本章習(xí)題5行業(yè)PPT模板/hangye/1.1單片機(jī)概述1.1.1單片機(jī)簡(jiǎn)介單片微型計(jì)算機(jī)(SingleChipMicrocomputer,SCM)簡(jiǎn)稱單片機(jī),也叫微控制器(MicroControllerUnit,MCU),它不是一臺(tái)機(jī)器,而是一塊集成電路芯片。它是采用超大規(guī)模集成電路制造工藝,把中央處理器(CPU)、隨機(jī)存儲(chǔ)器(RAM)、只讀存儲(chǔ)器(ROM)、中斷系統(tǒng)、定時(shí)/計(jì)數(shù)器、通信接口和普通I/O口等集成到一塊硅片(晶體芯片)上構(gòu)成的一個(gè)微型的、完整的計(jì)算機(jī)系統(tǒng)。與計(jì)算機(jī)相比,單片機(jī)只缺少了鍵盤(pán)、鼠標(biāo)等I/O設(shè)備。經(jīng)典51AVRPICSTM32STCTIMSP4301.1.1單片機(jī)簡(jiǎn)介單片機(jī)的特點(diǎn)(1)高集成度,體積小,高可靠性。(2)控制功能強(qiáng)。(3)低電壓,低功耗,便于生產(chǎn)便攜式產(chǎn)品。(4)易擴(kuò)展。(5)高性價(jià)比。單片機(jī)應(yīng)用領(lǐng)域:廣泛應(yīng)用于工業(yè)控制、儀器儀表、家用電器、醫(yī)用設(shè)備、航空航天、汽車電子、工業(yè)機(jī)器人、電子玩具等領(lǐng)域1.1.2單片機(jī)的發(fā)展歷史單片機(jī)的發(fā)展經(jīng)歷了探索、完善、MCU化(過(guò)渡)、百花齊放4個(gè)階段。1.芯片化探索階段(1976—1978年)20世紀(jì)70年代,美國(guó)仙童半導(dǎo)體公司首先推出了第一款8位單片機(jī)F-8;隨后,Intel公司推出了影響面更大、應(yīng)用更廣的MCS-48系列單片機(jī)。MCS-48系列單片機(jī)的推出標(biāo)志著在工業(yè)控制領(lǐng)域,進(jìn)入智能化嵌入式應(yīng)用的芯片形態(tài)計(jì)算機(jī)的探索階段。這個(gè)階段的單片機(jī)的特點(diǎn)是片內(nèi)集成有8位的CPU,1KB或2KB的ROM,64B或128B的RAM;只有并行接口,無(wú)串行接口;有1個(gè)8位的定時(shí)/計(jì)數(shù)器,有2個(gè)中斷源;片外尋址范圍為4KB,芯片引腳為40個(gè)。1.1.2單片機(jī)的發(fā)展歷史2.結(jié)構(gòu)體系的完善階段(1978—1982年)在MCS-48系列單片機(jī)探索成功的基礎(chǔ)上Intel公司很快推出了完善的、典型的MCS-5l系列單片機(jī)。MCS-51系列單片機(jī)的推出標(biāo)志著SCM體系結(jié)構(gòu)的完善,成為SCM的經(jīng)典體系結(jié)構(gòu)。MCS-51系列單片機(jī)的特點(diǎn)是片內(nèi)包括8位的CPU,4KB或8KB的ROM,128B或256B的RAM,4個(gè)8位的并行口、1個(gè)全雙工串口,2個(gè)或3個(gè)16位的定時(shí)/計(jì)數(shù)器,5~7個(gè)中斷源;片外尋址范圍可達(dá)64KB,芯片引腳為40個(gè)。代表產(chǎn)品有英特爾公司的MCS-51系列,Motorola公司的MC6805系列,TI公司的TMS7000系列,Zilog公司的Z8系列等。1.1.1單片機(jī)簡(jiǎn)介3.從SCM向MCU過(guò)渡的階段(1982—1990年)1982年,Intel公司推出了16位的MCS-96單片機(jī),將一些用于測(cè)控系統(tǒng)的模數(shù)轉(zhuǎn)換器(ADC)、程序運(yùn)行監(jiān)視器(WDT)、脈寬調(diào)制器(PWM)、高速I/O口納入片中。與此同時(shí),Intel公司將MCS-51系列單片機(jī)的內(nèi)核結(jié)構(gòu)開(kāi)放,允許其他公司采用此內(nèi)核結(jié)構(gòu)進(jìn)行單片機(jī)的設(shè)計(jì),這些單片機(jī)統(tǒng)稱為8051單片機(jī)(之后由于CMOS工藝的改進(jìn),稱為80C51)。隨著單片機(jī)內(nèi)、外圍功能電路的增強(qiáng),強(qiáng)化了智能控制器特征,MCU就成為單片機(jī)較為準(zhǔn)確的表達(dá)名詞。1.1.1單片機(jī)簡(jiǎn)介4.MCU的百花齊放階段(1990—至今)1990年,Intel公司推出了i960系列的32位單片機(jī),引起計(jì)算機(jī)界的轟動(dòng),成為單片機(jī)發(fā)展史上又一個(gè)重要的里程碑。2000年,Cygnal公司推出了C8051F系列單片機(jī),采用單周期指令運(yùn)行方式,其單周期指令的運(yùn)行速度相比于8051提高了12倍。C8051F采用與MCS-51完全兼容的CIP51內(nèi)核,將模擬和數(shù)字電路混合集成設(shè)計(jì),包含ADC、DAC電路,成為最早的SoC(SystemonChip,片上系統(tǒng))的典型代表。C8051F的推出也標(biāo)志著單片機(jī)邁進(jìn)了SoC時(shí)代。單片機(jī)發(fā)展到這一階段,表明其已成為工業(yè)控制領(lǐng)域普遍采用的智能化控制工具,小到玩具,大到車載、艦船電子系統(tǒng),遍及計(jì)量測(cè)試、工業(yè)過(guò)程控制、機(jī)械電子、金融電子、商用電子、辦公自動(dòng)化、工業(yè)機(jī)器人、軍事和航空航天等領(lǐng)域。1.1.3單片機(jī)的發(fā)展趨勢(shì)1.CMOS化CMOS電路的特點(diǎn)是低功耗、高密度、低速度、低價(jià)格。2.低功耗單片機(jī)的電流已達(dá)微安級(jí),甚至在1μA以下,如STM8L101系列單片機(jī)的最小工作電流為0.3μA。3.低電壓幾乎所有的單片機(jī)都有WAIT、STOP等省電運(yùn)行方式,允許使用的電壓范圍越來(lái)越大,低電壓供電的單片機(jī)電源下限已可達(dá)1V以下,如TMS430L092的工作電壓位0.9~1.5V(工作頻率為1MHz時(shí))。4.低噪聲與高可靠性增強(qiáng)單片機(jī)的抗電磁干擾能力,使產(chǎn)品能適應(yīng)惡劣的工作環(huán)境,滿足電磁兼容性方面更高標(biāo)準(zhǔn)的要求。5.大容量目前,單片機(jī)內(nèi)的ROM最大可達(dá)512KB,RAM最大可達(dá)8KB。1.1.3單片機(jī)的發(fā)展趨勢(shì)6.高性能主要是改進(jìn)CPU的性能,提高指令運(yùn)算速度和系統(tǒng)控制的可靠性。現(xiàn)在,指令運(yùn)算速度最高已達(dá)100MIPS(MillionInstructionPerSeconds,兆指令每秒),并加強(qiáng)了位處理功能、中斷和定時(shí)控制功能。這類單片機(jī)的運(yùn)算速度比標(biāo)準(zhǔn)的單片機(jī)高出10倍以上。7.外圍電路內(nèi)裝隨著單片機(jī)集成度的不斷提高,有可能把眾多的外圍功能部件集成在片內(nèi)。除了一般必須具有的CPU、ROM、RAM、定時(shí)/計(jì)數(shù)器等,片內(nèi)集成的部件還有ADC、DMA控制器、以太網(wǎng)控制器等。8.串行擴(kuò)展技術(shù)在很長(zhǎng)一段時(shí)間里,通用型單片機(jī)通過(guò)三總線結(jié)構(gòu)擴(kuò)展外圍器件成為單片機(jī)應(yīng)用的主流結(jié)構(gòu)。I2C、SPI、USB、CAN等串行總線的引入,可以使單片機(jī)的引腳設(shè)計(jì)得更少,單片機(jī)系統(tǒng)結(jié)構(gòu)更加簡(jiǎn)化及規(guī)范化。9.指令集開(kāi)源隨著開(kāi)源技術(shù)的不斷發(fā)展,CPU的內(nèi)核指令集也逐漸走向開(kāi)源化,比較知名的就是RISC-V。它基于精簡(jiǎn)指令集計(jì)算原理建立了開(kāi)放指令集架構(gòu)(ISA),V表示第五代,由美國(guó)加利福尼亞大學(xué)伯克利分校于2010年開(kāi)始啟動(dòng)。RISC-V是完全開(kāi)源的,它采用BSD(BerkeleySoftwareDistribution)開(kāi)源協(xié)議,任何公司都可以采用該結(jié)構(gòu)進(jìn)行設(shè)計(jì)。1.1.4主流的單片機(jī)產(chǎn)品1.AT89S與AVR單片機(jī)Atmel公司生產(chǎn)的具有FlashROM的增強(qiáng)型51系列單片機(jī)目前在市場(chǎng)上仍然十分流行,其中AT89S系列十分活躍,AT89S系列是8位Flash單片機(jī),與8051系列單片機(jī)兼容,采用靜態(tài)時(shí)鐘模式。AT90系列單片機(jī)是Atmel在20世紀(jì)90年代推出的單片機(jī),是增強(qiáng)精簡(jiǎn)指令集(RISC)結(jié)構(gòu)、全靜態(tài)工作方式、內(nèi)載在線可編程Flash的單片機(jī),也叫AVR單片機(jī),與PIC類似,其顯著的特點(diǎn)為高性能、高速度、低功耗。2.PIC單片機(jī)MicroChip單片機(jī)的主要產(chǎn)品是PIC16F系列、18F系列的8位單片機(jī),其突出的特點(diǎn)是體積小、功耗低、精簡(jiǎn)指令集(RISC)、運(yùn)行速度高,抗干擾性好、可靠性高、有較強(qiáng)的模擬接口、代碼保密性好、價(jià)格低、大部分芯片有其兼容的Flash程序存儲(chǔ)器,適用于用量大、價(jià)格敏感的產(chǎn)品。3.STC單片機(jī)STC單片機(jī)是深圳市宏晶科技有限公司設(shè)計(jì)的51內(nèi)核單片機(jī),目前在國(guó)內(nèi)8位單片機(jī)市場(chǎng)的占有率很高。STC單片機(jī)指令為復(fù)雜指令集,其優(yōu)點(diǎn)是加密性強(qiáng),很難解密或破解,超強(qiáng)抗干擾能力,超低功耗,價(jià)格低,適用各種領(lǐng)域的設(shè)備控制。由于它的下載程序簡(jiǎn)單,在學(xué)校的教學(xué)中使用非常廣泛,基本上取代了Atmel公司的AT89/90系列單片機(jī)。1.1.4主流的單片機(jī)產(chǎn)品4.恩智浦單片機(jī)恩智浦單片機(jī)有兩個(gè)系列,一個(gè)是原飛利浦的51LPC系列,它是基于80C51內(nèi)核的單片機(jī),嵌入了掉電檢測(cè)、模擬及片內(nèi)RC振蕩器等功能,使51LPC在高集成度、低成本、低功耗的應(yīng)用設(shè)計(jì)中可以滿足多方面的性能要求。另一個(gè)系列是飛思卡爾單片機(jī),于2015年并入恩智浦。飛思卡爾單片機(jī)源于摩托羅拉半導(dǎo)體,主要應(yīng)用在汽車、網(wǎng)絡(luò)、工業(yè)、消費(fèi)電子領(lǐng)域,尤其在汽車電子領(lǐng)域占有較大的市場(chǎng)份額。單片機(jī)從8位到32位都有。5.德州儀器單片機(jī)德州儀器提供了TMS370和MSP430兩大系列通用單片機(jī)。TMS370系列單片機(jī)是8位CMOS單片機(jī),具有多種存儲(chǔ)模式、多種外圍接口模式,適用于復(fù)雜的實(shí)時(shí)控制場(chǎng)合;MSP430系列單片機(jī)是一種超低功耗、功能集成度較高的16位單片機(jī),特別適用于要求低功耗的場(chǎng)合。6.STM單片機(jī)STM單片機(jī)是意法半導(dǎo)體推出的系列單片機(jī),擁有眾多品種,從穩(wěn)健的低功耗8位單片機(jī)STM8系列到基于各種ARMCortex-M0和M0+、Cortex-M3、Cortex-M4、Cortex-M7內(nèi)核的32位閃存微控制器STM32系列,為嵌入式產(chǎn)品開(kāi)發(fā)人員提供了豐富的MCU選擇資源。1.1.4主流的單片機(jī)產(chǎn)品7.英飛凌單片機(jī)英飛凌的前身是西門(mén)子集團(tuán)的半導(dǎo)體部門(mén)。英飛凌8位單片機(jī)能實(shí)現(xiàn)高性能的電機(jī)驅(qū)動(dòng)控制,在嚴(yán)酷環(huán)境下(高溫、EMI、振動(dòng))具有極高的可靠性。英飛凌8位單片機(jī)主要有XC800系列、XC886系列、XC888系列、XC82x系列、XC83x系列等。英飛凌的MCU用在汽車、工業(yè)類上面的居多,消費(fèi)類的較少。8.瑞薩單片機(jī)恩智浦單片機(jī)有兩個(gè)系列,一個(gè)是原飛利浦的51LPC系列,它是基于80C51內(nèi)核的單片機(jī),嵌入了掉電檢測(cè)、模擬及片內(nèi)RC振蕩器等功能,使51LPC在高集成度、低成本、低功耗的應(yīng)用設(shè)計(jì)中可以滿足多方面的性能要求。另一個(gè)系列是飛思卡爾單片機(jī),于2015年并入恩智浦。飛思卡爾單片機(jī)源于摩托羅拉半導(dǎo)體,主要應(yīng)用在汽車、網(wǎng)絡(luò)、工業(yè)、消費(fèi)電子領(lǐng)域,尤其在汽車電子領(lǐng)域占有較大的市場(chǎng)份額。單片機(jī)從8位到32位都有。9.其他國(guó)內(nèi)的單片機(jī)國(guó)內(nèi)的8位單片機(jī)多數(shù)是采用MCS-51內(nèi)核設(shè)計(jì)的,部分采用RISC結(jié)構(gòu)。設(shè)計(jì)廠家眾多,如我國(guó)臺(tái)灣地區(qū)的合泰半導(dǎo)體(Holtek)、新唐科技(Nuvoton)、義隆電子(Emc)、松翰科技(Sonix)、凌陽(yáng)科技(Sunplus)等,我國(guó)大陸地區(qū)的中穎電子、兆易創(chuàng)新、華潤(rùn)微電子、沁恒微電子、樂(lè)鑫科技、芯??萍肌⑷A大半導(dǎo)體等。1.2單片機(jī)的內(nèi)部結(jié)構(gòu)1.2.1單片機(jī)內(nèi)部組成MCS-51單片機(jī)由CPU(進(jìn)行運(yùn)算、控制)、RAM(數(shù)據(jù)存儲(chǔ)器)、ROM(程序存儲(chǔ)器)、I/O口(串口、并口)、定時(shí)/計(jì)數(shù)器、內(nèi)部總線和中斷系統(tǒng)等組成。組成框圖如下所示。1.2.1單片機(jī)內(nèi)部組成

8051單片機(jī)的內(nèi)部資源包括:(1)一個(gè)8位CPU。(2)128Byte(字節(jié),簡(jiǎn)寫(xiě)B(tài))內(nèi)部RAM數(shù)據(jù)存儲(chǔ)器,21個(gè)專用寄存器。(3)4KB內(nèi)部掩膜ROM程序存儲(chǔ)器。(4)2個(gè)16位可編程定時(shí)器/計(jì)數(shù)器。(5)32個(gè)(4×8位)雙向可獨(dú)立尋址的I/O口。(6)1個(gè)全雙工UART(異步串行通信口)。(7)5個(gè)中斷源、兩級(jí)中斷優(yōu)先級(jí)的中斷控制器。(8)時(shí)鐘電路,外接晶振和電容可產(chǎn)生3.5MHz~12MHz的時(shí)鐘頻率。(9)可尋址64KB外部數(shù)據(jù)存儲(chǔ)器和64KB外部程序存儲(chǔ)器空間的控制電路。(10)布爾代數(shù)處理器,具有位尋址能力。單片機(jī)內(nèi)部結(jié)構(gòu)細(xì)化框圖8051單片機(jī)的內(nèi)部結(jié)構(gòu)圖CPU1.中央處理器(CPU)CPU是單片機(jī)的核心部件。它由運(yùn)算器和控制器等部件組成。(1)運(yùn)算器運(yùn)算器由8位算術(shù)邏輯運(yùn)算單元ALU(ArithmeticLogicUnit)、8位累加器A(Accumulator)、8位寄存器B、程序狀態(tài)字寄存器PSW(ProgramStatusWord)、8位暫存寄存器TMP1和TMP2等組成。(2)控制器接受來(lái)自程序存儲(chǔ)器的指令,并對(duì)指令進(jìn)行譯碼,發(fā)出指令功能所需的各種控制命令,控制各部分協(xié)調(diào)工作??刂破靼ǎ撼绦蛴?jì)數(shù)器PC(ProgramCounter)、指令寄存器IR(InstructionRegister)、指令譯碼器ID(InstructionDecoder)、堆棧指針SP、數(shù)據(jù)指針DPTR、定時(shí)控制邏輯和振蕩器OSC等電路。指令執(zhí)行過(guò)程:CPU根據(jù)PC中的地址從程序存儲(chǔ)器(ROM)中讀取指令代碼送入IR,經(jīng)ID譯碼后,定時(shí)和控制邏輯電路在OSC的配合下對(duì)譯碼后的信號(hào)進(jìn)行分時(shí),發(fā)出相應(yīng)的控制信號(hào),完成指定的操作。1.2.1單片機(jī)內(nèi)部組成2.片內(nèi)數(shù)據(jù)存儲(chǔ)器片內(nèi)數(shù)據(jù)存儲(chǔ)器包括片內(nèi)RAM和特殊功能寄存器SFR。片內(nèi)RAM為單片機(jī)內(nèi)部數(shù)據(jù)存儲(chǔ)器,主要用于存儲(chǔ)運(yùn)算的中間結(jié)果;SFR主要用于控制、管理和存儲(chǔ)單片機(jī)的工作方式、狀態(tài)結(jié)果。3.片內(nèi)程序存儲(chǔ)器片內(nèi)程序存儲(chǔ)器(ROM)為單片機(jī)內(nèi)部程序存儲(chǔ)器。主要用于存放程序、原始數(shù)據(jù)和表格等信息。4.并行I/O口P0~P3口是4個(gè)8位并行I/O口,單片機(jī)在與外部存儲(chǔ)器及I/O端口設(shè)備交換信息時(shí),必須由P0~P3口完成。這些端口既可作為輸入,又可作為輸出。但通常P0口作為8位數(shù)據(jù)總線/低8位地址總線復(fù)用口,P2口常用作高8位地址總線,而P3口的各個(gè)管腳多以第二功能輸入或第二功能輸出形式出現(xiàn)。因此,在一般情況下P1口的8個(gè)管腳作為通用I/O口。1.2.1單片機(jī)內(nèi)部組成5.定時(shí)器/計(jì)數(shù)器定時(shí)器/計(jì)數(shù)器用于定時(shí)和對(duì)外部事件進(jìn)行計(jì)數(shù),以實(shí)現(xiàn)定時(shí)或計(jì)數(shù)功能。當(dāng)它對(duì)具有固定時(shí)間間隔的單片機(jī)內(nèi)部時(shí)鐘電路提供的機(jī)器周期信號(hào)進(jìn)行計(jì)數(shù)時(shí),它是定時(shí)器;當(dāng)它對(duì)外部事件數(shù)字化處理后所產(chǎn)生的脈沖進(jìn)行計(jì)數(shù)時(shí),它是計(jì)數(shù)器。6.中斷系統(tǒng)8051單片機(jī)有5個(gè)中斷源,即2個(gè)外部中斷源、2個(gè)定時(shí)器/計(jì)數(shù)器中斷源和1個(gè)串行中斷源,全部中斷源可設(shè)定為高低2個(gè)優(yōu)先級(jí)。中斷處理系統(tǒng)靈活、方便,使單片機(jī)處理問(wèn)題的靈活性和實(shí)時(shí)性大大提高。7.串行口8051單片機(jī)有1個(gè)全雙工異步通信的串行口,用以實(shí)現(xiàn)單片機(jī)和其他設(shè)備之間的串行數(shù)據(jù)傳送,既可以異步通信,也可同步移位傳送數(shù)據(jù)。8.時(shí)鐘電路CPU執(zhí)行指令的一系列動(dòng)作都是在時(shí)序電路的控制下一拍一拍有序進(jìn)行的,時(shí)鐘電路用于產(chǎn)生單片機(jī)中最基本的時(shí)間單位。8051內(nèi)置時(shí)鐘處理電路,可外接3.5MHz~12MHz的晶振。1.2.1單片機(jī)內(nèi)部組成8051單片機(jī)把數(shù)據(jù)存儲(chǔ)器和程序存儲(chǔ)器嚴(yán)格區(qū)分開(kāi),各自占用不同的存儲(chǔ)空間。程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器的結(jié)構(gòu)分別如圖所示。從物理地址空間看,8051單片機(jī)有4個(gè)存儲(chǔ)器地址空間,即片內(nèi)程序存儲(chǔ)器和片外程序存儲(chǔ)器,以及片內(nèi)數(shù)據(jù)存儲(chǔ)器和片外數(shù)據(jù)存儲(chǔ)器。從邏輯上劃分,8051單片機(jī)有3個(gè)存儲(chǔ)器地址空間,即內(nèi)外統(tǒng)一編址的64KB的程序存儲(chǔ)器地址空間、片內(nèi)256B的數(shù)據(jù)存儲(chǔ)器地址空間、片外數(shù)據(jù)存儲(chǔ)器64KB地址空間。1.2.2存儲(chǔ)器結(jié)構(gòu)1.2.2存儲(chǔ)器結(jié)構(gòu)1.程序存儲(chǔ)器標(biāo)準(zhǔn)的8051單片機(jī)程序存儲(chǔ)器地址范圍是0000H~FFFFH,共64KB的空間,用指令MOVC進(jìn)行訪問(wèn)。ROM的0000H單元是特殊的地址單元,它是系統(tǒng)程序的起始地址。用戶程序的第一條指令應(yīng)放置在0000H單元中。低4KB程序可存儲(chǔ)在片內(nèi)ROM中,也可存儲(chǔ)在片外ROM中。片外ROM的低4KB地址與片內(nèi)ROM重疊,執(zhí)行選擇由/EA引腳來(lái)控制,如所示。EA=0(低電平),從片外ROM中的0000H單元開(kāi)始執(zhí)行程序;EA=1(高電平),從片內(nèi)ROM的0000H單元開(kāi)始執(zhí)行程序,當(dāng)(PC)>0FFFH(4KB)時(shí),自動(dòng)轉(zhuǎn)到片外ROM中執(zhí)行程序。1.2.2存儲(chǔ)器結(jié)構(gòu)除0000H單元外,其他的0003H、000BH、0013H、001BH和0023H特殊單元分別對(duì)應(yīng)5個(gè)中斷源的中斷子程序的入口地址。0003H~000AH:外部中斷0(INT0)的中斷地址區(qū)。000BH~0012H:定時(shí)/計(jì)數(shù)器0(T0)的中斷地址區(qū)。0013H~001AH:外部中斷1(INT1)的中斷地址區(qū)。001BH~0022H:定時(shí)/計(jì)數(shù)器1(T1)的中斷地址區(qū)。0023H~002AH:串口(TI,RI)中斷地址區(qū)。1.2.2存儲(chǔ)器結(jié)構(gòu)2.?dāng)?shù)據(jù)存儲(chǔ)器(1)片內(nèi)數(shù)據(jù)存儲(chǔ)器片內(nèi)數(shù)據(jù)存儲(chǔ)器的大小為256B,地址范圍是00H~FFH;用指令MOV進(jìn)行訪問(wèn)。它又分為兩部分:低128B(00H~7FH)為真正的片內(nèi)數(shù)據(jù)存儲(chǔ)器RAM區(qū),高128B(80H~FFH)為SFR區(qū)。低128B包括3部分:00H~1FH,共32B,由4個(gè)通用工作寄存器區(qū)組成;20H~2FH為位尋址區(qū),包含128個(gè)可尋址位;30H~7FH為數(shù)據(jù)緩沖區(qū),如圖所示。1.2.2存儲(chǔ)器結(jié)構(gòu)①工作寄存器區(qū)00H~1FH是工作寄存器區(qū),按地址由低到高分為4組,即0組、1組、2組、3組,具體分布如表所示。每組有8個(gè)8位寄存器,地址由低到高依次命名為R0~R7,即R0的地址為00H、R1地址為01H、依次類推,R7的地址為07H。當(dāng)前工作寄存器只能選用一個(gè)組,由PSW中的RS0和RS1位確定。復(fù)位初始化值RS0=0、RS1=0,即使用的是0組,為默認(rèn)工作寄存器組地址范圍工作寄存器組別18H~1FH3組(R0~R7)工作寄存器組10H~17H2組(R0~R7)工作寄存器組08H~0FH1組(R0~R7)工作寄存器組00H~07H0組(R0~R7),默認(rèn)工作寄存器組1.2.2存儲(chǔ)器結(jié)構(gòu)②位尋址區(qū)工作寄存器區(qū)上面的16個(gè)單元(20H~2FH)構(gòu)成固定的位尋址區(qū)。每個(gè)單元有8位,16個(gè)單元共128位,每位都有一個(gè)位地址,如表所示。該區(qū)域有位操作指令,可進(jìn)行位尋址、位操作。若程序中沒(méi)有位操作,則該區(qū)的地址單元可作它用。字節(jié)地址(地址單元)位地址MSBLSBD7D6D5D4D3D2D1D02FH7F7E7D7C7B7A79782EH77767574737271702DH6F6E6D6C6B6A69682CH67666564636261602BH5F5E5D5C5B5A59582AH575655545352515029H4F4E4D4C4B4A494828H474645444342414027H3F3E3D3C3B3A393826H373635343332313025H2F2E2D2C2B2A292824H272625242322212023H1F1E1D1C1B1A191822H171615141312111021H0F0E0D0C0B0A090820H07060504030201001.2.2存儲(chǔ)器結(jié)構(gòu)③數(shù)據(jù)緩沖區(qū)在片內(nèi)數(shù)據(jù)存儲(chǔ)器RAM中,30~7FH單元一般可作數(shù)據(jù)緩沖區(qū)用,用于存放各種數(shù)據(jù)和中間結(jié)果。但要注意:沒(méi)有使用的工作寄存器區(qū)中的地址單元和位尋址區(qū)中的地址單元都可用作數(shù)據(jù)緩沖區(qū)用。④堆棧區(qū)堆棧區(qū)是在片內(nèi)數(shù)據(jù)存儲(chǔ)器RAM中開(kāi)辟的一片特殊數(shù)據(jù)存儲(chǔ)區(qū),是CPU用于暫時(shí)存放數(shù)據(jù)的特殊“倉(cāng)庫(kù)”。用堆棧指針指向堆棧棧頂?shù)刂贰6褩5淖畹偷刂方袟5住6褩^(qū)的特殊性在于棧底可根據(jù)片內(nèi)數(shù)據(jù)存儲(chǔ)器的使用情況由指令設(shè)定,堆棧存取數(shù)據(jù)遵守“先進(jìn)后出”的原則.復(fù)位后棧底為07H,即(SP)=07。(2)片外數(shù)據(jù)存儲(chǔ)器若片內(nèi)RAM不夠用,則可擴(kuò)展片外數(shù)據(jù)存儲(chǔ)器RAM,最大范圍為0000H~FFFFH,共64KB。片外RAM有部分地址(00H~FFH)與內(nèi)RAM是重疊的。在單片機(jī)的匯編語(yǔ)言中,片內(nèi)、外RAM以不同的指令操作碼進(jìn)行區(qū)分,即片內(nèi)RAM傳送指令用MOV表示,片外RAM傳送指令用MOVX表示。1.2.3SFR(特殊功能寄存器)SFR也稱專用寄存器,用來(lái)存放相應(yīng)功能部件的控制命令、狀態(tài)或數(shù)據(jù)的區(qū)域。8051單片機(jī)內(nèi)的端口鎖存器、程序狀態(tài)字PSW、定時(shí)/計(jì)數(shù)器、累加器、堆棧指針、數(shù)據(jù)指針,以及其他控制寄存器等都是SFR。它們離散地分布在片內(nèi)RAM的高128B(80H~FFH)中,共21個(gè)(字節(jié))。SFR的分布情況如表所示。其中有些既可字節(jié)尋址又可位尋址,有些只可字節(jié)尋址。凡是地址能被8整除(地址末位為0或8)的SFR既可字節(jié)尋址又可位尋址;否則,只字節(jié)尋址。可位尋址的SFR的每一位都有位地址,有的還有位名稱。對(duì)累加器ACC和PSW,還可對(duì)其位編號(hào)進(jìn)行操作。例如,ACC.7是位編號(hào),代表累加器ACC的最高位,其位地址是E7H;PSW.0是位編號(hào),代表PSW的最低位,其位地址是D0H,位定義名為P,編程時(shí)三者都可使用。SFR符號(hào)名稱MSB位地址與位名稱LSB字節(jié)地址D7D6D5D4D3D2D1D0P0:P0口P0.7P0.6P0.5P0.4P0.3P0.2P0.1P0.080H87H86H85H84H83H82H81H80HSP:堆棧指針

81HDPL:數(shù)據(jù)指針低字節(jié)

82HDPH:數(shù)據(jù)指針低字節(jié)

83HPCON:電源控制SMOD∕∕∕GF1GF0PDIDL87HTCON:定時(shí)/計(jì)數(shù)器控制TF1TR1TF0TR0IE1IT1IE0IT088H8FH8EH8DH8CH8BH8AH89H88HTMOD:定時(shí)/計(jì)數(shù)器方式控制GATEM1M0GATEM1M089HTL0:定時(shí)/計(jì)數(shù)器0低字節(jié)

8AHTL1:定時(shí)/計(jì)數(shù)器1低字節(jié)

8BHTH0:定時(shí)/計(jì)數(shù)器0高字節(jié)

8CHTH1:定時(shí)/計(jì)數(shù)器1高字節(jié)

8DH1.2.3SFR(特殊功能寄存器)SFR符號(hào)名稱MSB位地址與位名稱LSB字節(jié)地址D7D6D5D4D3D2D1D0P1:P1口P1.7P1.6P1.5P1.4P1.3P1.2P1.1P1.090H97H96H95H94H93H92H91H90HSCON:串口控制SM0SM1SM2RENTB8RB8TIRI98H9FH9EH9DH9CH9BH9AH99H98HSBUF:串口數(shù)據(jù)緩沖器

99HP2:口P2P2.7P2.6P2.5P2.4P2.3P2.2P2.1P2.0A0HA7HA6HA5HA4HA3HA2HA1HA0HIE:中斷允許控制器EA∕ET2ESET1EX1ET0EX0A8HAFHAEHADHACHABHAAHA9HA8HP3:P3口P3.7P3.6P3.5P3.4P3.3P3.2P3.1P3.0B0HB7HB6HB5HB4HB3HB2HB1HB0HIP:中斷優(yōu)先級(jí)控制∕∕PT2PSPT1PX1PT0PX0B8H∕∕BDHBCHBBHBAHB9HB8HPSW:程序狀態(tài)字CyACF0RS1RS0OVF1PD0HD7HD6HD5HD4HD3HD2HD1HD0HACC:累加器ACC.7ACC.6ACC.5ACC.4ACC.3ACC.2ACC.1ACC.0E0HE7HE6HE5HE4HE3HE2HE1HE0HB:寄存器B.7B.6B.5B.4B.3B.2B.1B.0F0HF7HF6HF5HF4HF3HF2HF1HF0HMCS-51單片機(jī)內(nèi)部寄存器的地址并不是連續(xù)編排的,而是中間留有一部分空余的地址未使用。這主要是為了確??晌粚ぶ返腟FR的字節(jié)地址與其最低位地址保持一致,如P0口的字節(jié)地址為80H,其最低位P0.0的地址也是80H。這樣,位地址的編排就規(guī)律了很多,也便于人們查找和記憶。1.2.3SFR(特殊功能寄存器)主要的SFR介紹(1)累加器ACC(Accumulator):助記符(意義:幫助記憶的符號(hào))為A,是一個(gè)最為常用的SFR。許多指令的操作數(shù)都取自它,許多運(yùn)算的結(jié)果也存放在其中。(2)B寄存器(BRegister):在乘除法指令中使,也可作為一般寄存器使用。(3)PSW:8位的標(biāo)志寄存器,用來(lái)存放指令執(zhí)行后的有關(guān)狀態(tài),其各位定義如下表所示。RS1RS0工作寄存器的組號(hào)R0~R7地址00000H~07H01108H~0FH10210H~17H11318H~1FHPSW.7PSW.6PSW.5PSW.4PSW.3PSW.2PSW.1PSW.0CACF0RS1RS0OV-PRS1和RS0:工作寄存器組選擇位。如下表所示,它們用于設(shè)定當(dāng)前使用的工作寄存器的組號(hào)。復(fù)位后RS1和RS0初始化為0,即選擇的是0組,這時(shí)R0~R7的地址分別為1.2.3SFR(特殊功能寄存器)(4)堆棧指針(SP,StackPointer)堆棧是在片內(nèi)數(shù)據(jù)存儲(chǔ)器RAM中開(kāi)辟的一片特殊數(shù)據(jù)存儲(chǔ)區(qū)。系統(tǒng)復(fù)位后,SP的初始值為07H,使得堆棧存放數(shù)據(jù)的地址由08H開(kāi)始。由于08H~1FH單元分屬于工作寄存器區(qū)的組1~組3。若程序設(shè)計(jì)中這些組全要用到,則要把SP的值設(shè)置為1FH或更大的值。(5)數(shù)據(jù)指針(DPTR,DataPointer)。DPTR是一個(gè)16位的SFR,由兩個(gè)8位寄存器DPH(高8位)和DPL(低8位)組成。它既可作為一個(gè)16位寄存器DPTR來(lái)處理,又可作為兩個(gè)獨(dú)立的8位寄存器DPH和DPL來(lái)處理。DPTR主要用來(lái)存放16位地址。SFR數(shù)量較多,但他們總是和一些功能部件有關(guān)。各功能部件對(duì)應(yīng)的SFR如下:①CPU:ACC、B、PSW。②存儲(chǔ)器:SP、DPTR。③I/O口:P0、P1、P2、P3。④中斷系統(tǒng):IP、IE。⑤定時(shí)/計(jì)數(shù)器:TMOD、TCON、TH0、TL0、TH1、TL1。⑥串口:SCON、SBUF。⑦電源:PCON。1.3單片機(jī)的引腳及其功能8051單片機(jī)最常見(jiàn)的封裝是標(biāo)準(zhǔn)型DIP(雙列直插)40腳。凡封裝相同的51系列單片機(jī),其引腳定義和功能均與8051基本兼容,使用時(shí)絕大部分器件可以互換。圖(a)、(b)所示分別為標(biāo)準(zhǔn)型DIP40腳封裝的邏輯功能圖與實(shí)際引腳排列圖。MCS-51單片機(jī)引腳的功能描述如表1-7所示。引腳分為端口線、電源線和控制線三類。1.3.1引腳功能1.3.1引腳功能1.電源線GND:接地引腳。VCC:正電源引腳,接+5V電源。2.I/O口線單片機(jī)共有4組I/O口,分別為P0~P3,每組有8個(gè)端口,因此,單片機(jī)共有32個(gè)I/O口,每個(gè)I/O口都可以單獨(dú)控制,其具體功能如表1-6所示。不同組的I/O口的用法稍有不同。P1口只可以作為普通I/O口;P0口既可以作為普通I/O口,又可以作為低8位地址線和數(shù)據(jù)線;P2口既可以作為普通I/O口,又可以作為高8位地址線;P3口身兼兩種功能,既可以作為普通I/O口,又具有外部中斷、外部脈沖計(jì)數(shù)、串口功能。1.3.1引腳功能3.控制線(1)RST/Vpd引腳。RST/Vpd引腳是復(fù)位信號(hào)/備用電源線引腳。當(dāng)8051單片機(jī)通電時(shí),在RST引腳上出現(xiàn)24個(gè)時(shí)鐘周期以上的高電平,系統(tǒng)即初始復(fù)位。(2)ALE/PROG引腳。ALE/PROG引腳是地址鎖存允許/編程引腳。當(dāng)訪問(wèn)外部程序存儲(chǔ)器時(shí),ALE引腳的輸出用于鎖存地址的低位字節(jié),以便P0口實(shí)現(xiàn)地址/數(shù)據(jù)復(fù)用。當(dāng)不訪問(wèn)外部程序存儲(chǔ)器時(shí),ALE引腳將輸出一個(gè)1/6時(shí)鐘頻率的正脈沖信號(hào)。其第二功能是對(duì)EPROM型芯片進(jìn)行編程和校驗(yàn)時(shí),此引腳傳送52ms寬的負(fù)脈沖選通信號(hào),PC的16位地址數(shù)據(jù)將出現(xiàn)在P0和P2口上,外部程序存儲(chǔ)器把指令碼放到P0口上,由CPU讀入并執(zhí)行。(3)EA/VPP引腳。是允許訪問(wèn)片外程序存儲(chǔ)器/編程電源引腳。對(duì)于片內(nèi)無(wú)程序存儲(chǔ)器的MCS-51單片機(jī)(如8031),引腳必須接地;對(duì)于片內(nèi)有程序存儲(chǔ)器的MCS-51單片機(jī)(如8051),引腳必須接高電平。其第二功能是片內(nèi)EPROM編程/校驗(yàn)時(shí)的電源線,在編程時(shí),VPP引腳需要加上21V的編程電壓。(4)PSEN引腳。在執(zhí)行訪問(wèn)片外ROM的指令MOVC時(shí),8051單片機(jī)自動(dòng)在PSEN引腳產(chǎn)生一個(gè)負(fù)脈沖,用于對(duì)片外ROM的選通。在其他情況下,該引腳均為高電平封鎖狀態(tài)。1.3.2時(shí)鐘和復(fù)位1.時(shí)鐘單片機(jī)作為一個(gè)微型計(jì)算機(jī),由數(shù)字電路組成,其內(nèi)部各個(gè)模塊通過(guò)總線連接,必須有時(shí)鐘脈沖才能工作。單片機(jī)執(zhí)行指令的過(guò)程可分為取指令、分析指令和執(zhí)行指令3步,每步又由許多微操作組成,這些微操作必須在一個(gè)統(tǒng)一時(shí)鐘控制下才能被正確地順序執(zhí)行。(1)時(shí)鐘方式。單片機(jī)內(nèi)部有振蕩電路,XTAL1引腳為片內(nèi)振蕩電路的輸入端,XTAL2引腳為片內(nèi)振蕩電路的輸出端。8051單片機(jī)的時(shí)鐘有兩種方式,一種是片內(nèi)時(shí)鐘振蕩方式(內(nèi)部時(shí)鐘方式),但需要在XTAL1和XTAL2引腳外接石英晶體(頻率為3.5~12MHz)與振蕩電容,振蕩電容的容量一般取10~30pF,典型值為30pF,如圖(a)所示;另外一種是外部時(shí)鐘方式,即將XTAL1引腳接地,外部時(shí)鐘信號(hào)從XTAL2引腳輸入,如圖(b)所示。1.3.2時(shí)鐘和復(fù)位(2)單片機(jī)內(nèi)部的時(shí)間基準(zhǔn)。振蕩周期:為單片機(jī)提供時(shí)鐘信號(hào)的振蕩源的周期,也稱為時(shí)鐘周期或節(jié)拍(用P)表示。狀態(tài)周期:?jiǎn)纹瑱C(jī)執(zhí)行指令時(shí)從一種狀態(tài)轉(zhuǎn)換到另一種狀態(tài)所需的時(shí)間。一個(gè)狀態(tài)周期由兩個(gè)時(shí)鐘周期組成,又稱為由兩個(gè)節(jié)拍組成,每個(gè)節(jié)拍需要一個(gè)時(shí)鐘周期。即一個(gè)狀態(tài)周期有兩個(gè)節(jié)拍,前半周期相應(yīng)的節(jié)拍定義為P1,后半周期對(duì)應(yīng)的節(jié)拍定義為P2。單片機(jī)就是按照這樣的節(jié)拍有節(jié)奏地完成取指令、分析指令、執(zhí)行指令等一系列工作的。機(jī)器周期:?jiǎn)纹瑱C(jī)完成一項(xiàng)基本操作所需的時(shí)間。單片機(jī)在每個(gè)機(jī)器周期內(nèi)完成一項(xiàng)基本操作,如取指令、讀或?qū)憯?shù)據(jù)等。1個(gè)機(jī)器周期包括12個(gè)時(shí)鐘周期,分為6個(gè)狀態(tài),即S1~S6。每個(gè)狀態(tài)周期完成一項(xiàng)微操作,直至指令執(zhí)行完成。指令周期:CPU執(zhí)行一條指令所需的時(shí)間(一般用機(jī)器周期表示)。單片機(jī)有單機(jī)器、雙機(jī)器周期和四機(jī)器周期指令。四機(jī)器周期指令只有乘法和除法兩條指令,其余均為單機(jī)器周期或雙機(jī)器周期指令。1.3.2時(shí)鐘和復(fù)位各個(gè)周期時(shí)間的計(jì)算:當(dāng)單片機(jī)外接晶振為12MHz時(shí),即fosc=12MHz,則各個(gè)周期的計(jì)數(shù)如下:振蕩周期:Tosc=1/fosc=1/12μs狀態(tài)周期

溫馨提示

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

評(píng)論

0/150

提交評(píng)論