項(xiàng)目一 單片機(jī)最小工作系統(tǒng)構(gòu)建課件_第1頁
項(xiàng)目一 單片機(jī)最小工作系統(tǒng)構(gòu)建課件_第2頁
項(xiàng)目一 單片機(jī)最小工作系統(tǒng)構(gòu)建課件_第3頁
項(xiàng)目一 單片機(jī)最小工作系統(tǒng)構(gòu)建課件_第4頁
項(xiàng)目一 單片機(jī)最小工作系統(tǒng)構(gòu)建課件_第5頁
已閱讀5頁,還剩49頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

知識(shí)歸納練習(xí)題任務(wù)二、彩燈閃爍控制任務(wù)一、認(rèn)識(shí)單片機(jī)項(xiàng)目一單片機(jī)最小工作系統(tǒng)構(gòu)建

項(xiàng)目目標(biāo)導(dǎo)讀學(xué)習(xí)目標(biāo)技能目標(biāo)

掌握51系列單片機(jī)常用引腳及功能。

了解常用型號(hào)單片機(jī)的特點(diǎn)。掌握單片機(jī)的內(nèi)部結(jié)構(gòu)。熟悉單片機(jī)應(yīng)用系統(tǒng)的開發(fā)流程。熟練掌握單片機(jī)開發(fā)環(huán)境的使用。

能識(shí)別不同類型的單片機(jī)芯片。

熟練操作Keil軟件,進(jìn)行程序的編寫和調(diào)試。熟練操作Proteus軟件,會(huì)選擇元器件,繪制單片機(jī)硬件原理圖。能正確使用匯編指令編寫簡單程序。能根據(jù)任務(wù)要求構(gòu)建單片機(jī)最小工作系統(tǒng)。1.單片機(jī)概念的理解和引腳的應(yīng)用方法。2.單片機(jī)最小工作系統(tǒng)的組成。3.匯編指令的格式、編程方法。4.單片機(jī)應(yīng)用系統(tǒng)的開發(fā)流程。知識(shí)教學(xué)點(diǎn)

項(xiàng)目目標(biāo)導(dǎo)讀方法切入點(diǎn)

1.利用網(wǎng)上的資料、圖片和實(shí)際單片機(jī)應(yīng)用案例進(jìn)行演示,便于學(xué)生對(duì)單片機(jī)概念的理解。2.采用“項(xiàng)目引導(dǎo)、任務(wù)驅(qū)動(dòng)、教學(xué)做合一”的教學(xué)方式,通過實(shí)際項(xiàng)目的分析和實(shí)施,結(jié)合Keil和Proteus軟件的使用,了解單片機(jī)電子產(chǎn)品實(shí)際的開發(fā)流程。參考學(xué)時(shí):10學(xué)時(shí)~12學(xué)時(shí)

任務(wù)一認(rèn)識(shí)單片機(jī)任務(wù)分析要想了解單片機(jī)的控制作用,必須先認(rèn)識(shí)單片機(jī),熟悉單片機(jī)的基本結(jié)構(gòu)及功能,利用單片機(jī)集成開發(fā)環(huán)境,可以更加直觀地模擬仿真單片機(jī)的工作過程,現(xiàn)在就讓我們來認(rèn)識(shí)單片機(jī),學(xué)習(xí)單片機(jī)的相關(guān)概念。

任務(wù)一認(rèn)識(shí)單片機(jī)1、什么是單片機(jī)CPU輸入設(shè)備輸出設(shè)備軟件系統(tǒng)+微型計(jì)算機(jī)系統(tǒng)硬件系統(tǒng)輸入接口設(shè)備輸出接口設(shè)備運(yùn)算器控制器存儲(chǔ)器單片微型計(jì)算機(jī)是指集成在一個(gè)芯片上的微型計(jì)算機(jī),簡稱單片機(jī)——單片機(jī)實(shí)質(zhì)上就是一個(gè)芯片相關(guān)知識(shí):單片機(jī)基本知識(shí)任務(wù)一認(rèn)識(shí)單片機(jī)2、MCS-51系列單片機(jī)及其內(nèi)部結(jié)構(gòu)串行通信接口全雙工1個(gè)ROMTXDRXD中斷系統(tǒng)并行通信接口4×8bit定時(shí)/計(jì)數(shù)器RAM時(shí)鐘電路CPU總線控制圖1-2MCS-51單片機(jī)結(jié)構(gòu)框圖

任務(wù)一認(rèn)識(shí)單片機(jī)

近幾年在我國非常流行的單片機(jī)AT89C51,是在8051基礎(chǔ)上增強(qiáng)了許多特性,如由Flash(程序存儲(chǔ)器的內(nèi)容至少可以改寫1000次)存儲(chǔ)器取帶了原來的一次性寫入的ROM,其性能相對(duì)于8051已經(jīng)算是非常優(yōu)越了,但在市場化方面,AT89C51單片機(jī)受到了PIC單片機(jī)陣營的挑戰(zhàn),AT89C51最致命的缺陷在于不支持ISP功能。AT89S51就是在這樣的背景下取代89C51單片機(jī)的。Atmel公司目前已經(jīng)停產(chǎn)AT89C51單片機(jī),將用AT89S51單片機(jī)代替。AT89S51單片機(jī)在工藝上進(jìn)行了改進(jìn),采用0.35新工藝,成本降低,而且將功能提升,增強(qiáng)了競爭力。AT89SXX可以向下兼容AT89CXX等51系列芯片。表1-1是AT89系列單片機(jī)的主要分類及功能特性。本教材主要采用AT89S51/52芯片(由于Proteus軟件中不包含AT89S51/52芯片,因此仿真時(shí)仍采用AT89C51/52芯片)。

任務(wù)一認(rèn)識(shí)單片機(jī)系列典型芯片I/O口定時(shí)/計(jì)數(shù)器中斷源串行通信口片內(nèi)RAM片內(nèi)ROM新功能標(biāo)準(zhǔn)型AT89C5132個(gè)2x16位61128字節(jié)4KFlashMemoryAT89C523x16位8256字節(jié)8KFlashMemoryAT89C5532個(gè)3x16位81256字節(jié)20KFlashMemoryAT89S5132個(gè)2x16位61128字節(jié)4KFlashMemoryWatchdogTimerAT89S523x16位8256字節(jié)8KFlashMemory低檔型AT89C105115個(gè)2x16位6無64字節(jié)1KFlashMemoryAT89C205115個(gè)2x16位61128字節(jié)2KFlashMemoryAT89C405115個(gè)2x16位61128字節(jié)4KFlashMemory高檔型AT89C51RC32個(gè)3x16位81512字節(jié)32KFlashMemoryWatchdogTimerAT89C55WD32個(gè)3x16位81256字節(jié)20KFlashMemoryWatchdogTimerAT89S825232個(gè)3x16位91256字節(jié)8KFlashMemory2KEEPROMSPI、WatchdogTimerAT89S5332個(gè)3x16位91256字節(jié)12KFlashMemorySPI、WatchdogTimer表1-1AT89系列單片機(jī)的主要分類及功能特性任務(wù)一認(rèn)識(shí)單片機(jī)3、單片機(jī)應(yīng)用系統(tǒng)圖1-3單片機(jī)應(yīng)用系統(tǒng)所需軟硬件設(shè)備及連接形式

任務(wù)一認(rèn)識(shí)單片機(jī)單片機(jī)仿真器PC機(jī)(仿真軟件)并口目標(biāo)板仿真系統(tǒng)聯(lián)接:

任務(wù)一認(rèn)識(shí)單片機(jī)(1)匯編語言匯編語言是最早應(yīng)用于單片機(jī)開發(fā)與應(yīng)用的程序語言,是一種面向機(jī)器的低級(jí)語言。它以助記符形式表示每一條指令。51單片機(jī)的匯編指令系統(tǒng)包含111條指令,7種尋址方式;按照其功能可分為數(shù)據(jù)傳送類、算術(shù)運(yùn)算類、邏輯運(yùn)算類、控制轉(zhuǎn)移類和布爾運(yùn)算類五大類。匯編語言的優(yōu)點(diǎn)是執(zhí)行速度快、代碼短小精悍、且指令的執(zhí)行周期確定。(2)高級(jí)語言由于匯編語言其缺乏通用性和可讀性,并且可移植性差,因此在單片機(jī)開發(fā)過程中出現(xiàn)了高級(jí)語言,如C語言。單片機(jī)C語言既有匯編語言操作底層硬件的能力,又具有高級(jí)語言的許多優(yōu)點(diǎn),其中以Keil公司推出的C51最為流行。本書涉及到的項(xiàng)目案例程序均采用匯編語言設(shè)計(jì)。4、單片機(jī)編程語言任務(wù)一認(rèn)識(shí)單片機(jī)5、單片機(jī)集成開發(fā)環(huán)境

(1)KeiluVision2軟件KeiluVision2系列軟件是德國KeilSoftware公司推出的51系列兼容單片機(jī)開發(fā)軟件系統(tǒng)。軟件支持單片機(jī)C51程序設(shè)計(jì)語言,也可以直接進(jìn)行匯編語言的設(shè)計(jì)與編譯。KeiluVision2包含一個(gè)高級(jí)的編譯器、一個(gè)項(xiàng)目管理器和一個(gè)MAKE工具。(2)嵌入式系統(tǒng)仿真與開發(fā)平臺(tái)——Proteus軟件Proteus是英國Labcenter公司開發(fā)的EDA工具軟件,它集合了原理圖設(shè)計(jì)、電路分析與仿真、單片機(jī)代碼級(jí)調(diào)試與仿真、系統(tǒng)測試與功能驗(yàn)證以及PCB設(shè)計(jì)完整的電子設(shè)計(jì)過程。

任務(wù)一認(rèn)識(shí)單片機(jī)(3)Kile軟件和PROTEUS軟件的聯(lián)合仿真

KeilμVision2與Proteus的結(jié)合方式有兩種:

方法一:在μVision環(huán)境中編寫程序并將其編譯成“*.HEX”文件,而在Proteus環(huán)境下將“*.HEX”文件加載到單片機(jī)中,此種方式與單片機(jī)實(shí)際工程設(shè)計(jì)相類似;

方法二:把Proteus環(huán)境下的硬件作為虛擬的目標(biāo)板硬件,Proteus與KeilμVision2之間通過TCP/IP進(jìn)行通訊,此種方法類似于μVision環(huán)境下的目標(biāo)板仿真調(diào)試模式,在運(yùn)用此種方法進(jìn)行仿真前需要更改μVision與Proteus的相關(guān)設(shè)置。本教材所有項(xiàng)目案例均采用方法一。返回任務(wù)二彩燈閃爍控制任務(wù)分析在Proteus軟件中用AT89S51單片機(jī)來組成一個(gè)簡單的單片機(jī)應(yīng)用系統(tǒng),以單片機(jī)的I/O端口控制一個(gè)發(fā)光二極管(LED),通過在集成開發(fā)環(huán)境下編程和調(diào)試程序,實(shí)現(xiàn)發(fā)光二極管的亮/滅以及閃爍的控制效果。

圖1-5單片機(jī)控制LED燈電路

任務(wù)二彩燈閃爍控制1、單片機(jī)外部引腳及功能

(1)AT89S51單片機(jī)的外部引腳

AT89S51是一種低功耗、高性能CMOS8位微控制器,片內(nèi)含4kBISP(In-systemprogrammable)的可反復(fù)擦寫1000次的Flash只讀程序存儲(chǔ)器,器件采用Ateml公司的高密度、非易失性存儲(chǔ)技術(shù)生產(chǎn),它集既可在線編程(ISP)也可用傳統(tǒng)方法進(jìn)行編程的Flash程序存儲(chǔ)器及通用8位微處理器于單片芯片中,Ateml公司生產(chǎn)的AT89S51單片機(jī)功能強(qiáng)大、價(jià)位低,可以應(yīng)用于許多高性價(jià)比的應(yīng)用場合,可靈活應(yīng)用于各種控制領(lǐng)域。

相關(guān)知識(shí):單片機(jī)基本結(jié)構(gòu)任務(wù)二彩燈閃爍控制

(2)AT89S51單片機(jī)的主要性能

表1-3AT89S51單片機(jī)主要特性參數(shù)

·

兼容MCS-51指令系統(tǒng)·4kB可反復(fù)擦寫(>1000次)ISPFlashROM·32個(gè)雙向I/O口·工作電壓:4.0-5.5V·2個(gè)16位可編程定時(shí)/計(jì)數(shù)器·

時(shí)鐘頻率:0-33MHz·全雙工UART串行中斷口線·128x8bit內(nèi)部RAM·6個(gè)外部中斷源·低功耗空閑和省電模式·中斷喚醒省電模式·3級(jí)加密位·

看門狗(WDT)電路·

軟件設(shè)置空閑和省電功能·靈活的ISP字節(jié)和分頁編程·雙數(shù)據(jù)寄存器指針任務(wù)二彩燈閃爍控制

(3)AT89S51單片機(jī)的管腳功能說明

●P0口:P0口是一個(gè)8位漏極開路型雙向I/O口,也即地址/數(shù)據(jù)總線復(fù)用口。能驅(qū)動(dòng)8個(gè)TTL邏輯門電路。在訪問外部存儲(chǔ)器時(shí),P0口可用于分時(shí)傳送低8位地址總線和8位數(shù)據(jù)總線。在Flash編程時(shí),P0口接收指令字節(jié);而在程序校驗(yàn)時(shí),輸出指令字節(jié),校驗(yàn)時(shí),要求外接上拉電阻?!馪1口:P1是一個(gè)帶內(nèi)部上拉電阻的8位雙向I/O口,可驅(qū)動(dòng)4個(gè)TTL邏輯門電路。Flash編程和程序校驗(yàn)期間,P1接收低8位地址。表1-4為P1端口引腳的第二功能說明。

端口引腳第二功能P1.5MOSI(用于ISP編程)P1.6MISO(用于ISP編程)P1.7SCK(用于ISP編程)表1-4P1端口引腳的第二功能表任務(wù)二彩燈閃爍控制●P2口:P2是一個(gè)帶有內(nèi)部上拉電阻的8位雙向I/O口,在訪問外部存儲(chǔ)器時(shí),P2口可用于高8位地址總線。能驅(qū)動(dòng)4個(gè)LSTTL門。Flash編程或校驗(yàn)時(shí),P2亦接收高位地址和其它控制信號(hào)?!馪3口:P3口是一個(gè)帶有內(nèi)部上拉電阻的8位雙向I/0口,能驅(qū)動(dòng)4個(gè)LSTTL門。P3口除了作為一般的I/O端口外,更重要的用途是它的第二功能,表1-5P3端口各引腳與第二功能表

第一功能第二功能第二功能信號(hào)名稱P3.0RXD串行數(shù)據(jù)接收P3.1TXD串行數(shù)據(jù)發(fā)送P3.2外部中斷0申請P3.3外部中斷1申請P3.4T0定時(shí)器/計(jì)數(shù)器0的外部輸入P3.5T1定時(shí)器/計(jì)數(shù)器1的外部輸入P3.6外部RAM寫選通P3.7外部RAM讀選通任務(wù)二彩燈閃爍控制表1-6AT89S52單片機(jī)主要特性參數(shù)

·

兼容MCS-51指令系統(tǒng)·8kB可反復(fù)擦寫(>1000次)ISPFlashROM·32個(gè)雙向I/O口·工作電壓:

4.5-5.5V·3個(gè)16位可編程定時(shí)/計(jì)數(shù)器·

時(shí)鐘頻率:0-33MHz·全雙工UART串行中斷口線·256x8bit內(nèi)部RAM·2個(gè)外部中斷源·低功耗空閑和省電模式·中斷喚醒省電模式·3級(jí)加密位·

看門狗(WDT)電路·

軟件設(shè)置空閑和省電功能·靈活的ISP字節(jié)和分頁編程·雙數(shù)據(jù)寄存器指針任務(wù)二彩燈閃爍控制2、單片機(jī)最小工作系統(tǒng)

單片機(jī)最小系統(tǒng)包括電源、時(shí)鐘電路、復(fù)位電路、引腳這幾部分。其中時(shí)鐘電路為單片機(jī)工作提供基本時(shí)鐘,復(fù)位電路用于將單片機(jī)內(nèi)部各電路的狀態(tài)恢復(fù)到初始值。

圖1-8AT89S51單片機(jī)最小系統(tǒng)

任務(wù)二彩燈閃爍控制

(1)時(shí)鐘電路

表1-3AT89S51單片機(jī)主要特性參數(shù)

單片機(jī)的連接引腳XTAL1、XTAL2;連接方法內(nèi)部時(shí)鐘方式

外部時(shí)鐘方式

內(nèi)部機(jī)器頻率F=fosc/12C1和C2的一般取值20~30pF陶瓷電容任務(wù)二彩燈閃爍控制復(fù)位后,內(nèi)部各專用寄存器狀態(tài)如表1-7,其中*表示無關(guān)位。表1-7單片機(jī)復(fù)位狀態(tài)

專用寄存器復(fù)位狀態(tài)專用寄存器復(fù)位狀態(tài)PC0000HTMOD00HACC00HTCON00HB00HTH000HPSW00HTL000HSP07HTH100HDPTR0000HTL100HP0~P3FFHSCON00HIP***00000BSBUF不定IE0**00000BPCON0***0000B任務(wù)二彩燈閃爍控制3、單片機(jī)的存儲(chǔ)器結(jié)構(gòu)

單片機(jī)的存儲(chǔ)器包括兩大類:程序存儲(chǔ)器(ROM)和數(shù)據(jù)存儲(chǔ)器(RAM)。這里以8051單片機(jī)為代表來說明MCS-51系列單片機(jī)存儲(chǔ)器的結(jié)構(gòu)。8051單片機(jī)的存儲(chǔ)器主要有4個(gè)物理存儲(chǔ)空間,即內(nèi)部數(shù)據(jù)存儲(chǔ)器(IDATA區(qū))、外部數(shù)據(jù)存儲(chǔ)器(XDATA區(qū))、內(nèi)部程序存儲(chǔ)器和外部程序存儲(chǔ)器(程序存儲(chǔ)器合稱為CODE區(qū))。圖1-11單片機(jī)的存儲(chǔ)器結(jié)構(gòu)圖

內(nèi)部外部0000H0FFFH(4K)0000HFFFFH(64K)0000H0FFFH(4K)0000H0001H0002H(PC)0000H是程序執(zhí)行的起始單元,

在這三個(gè)單元存放一條

無條件轉(zhuǎn)移指令中斷5中斷4中斷3中斷2中斷10003H000BH0013H001BH0023H002BH外部中斷0定時(shí)器0中斷外部中斷1定時(shí)器1中斷串行口中斷8位...0FFFH0FFEHEA=1EA=0中斷入口地址任務(wù)二彩燈閃爍控制(a)ROM與關(guān)系(b)ROM中的特殊單元

圖1-12程序存儲(chǔ)器結(jié)構(gòu)圖(1)程序存儲(chǔ)器0000HFFFFH(64K)內(nèi)部外部(2)數(shù)據(jù)存儲(chǔ)器RAM存儲(chǔ)器00HFFH7FH80H(高128B)(低128B)RAM專用

寄存器00H07H08H0FH10H17H18H1FH0區(qū)R0R7R0R7R0R7R0R71區(qū)2區(qū)3區(qū)工作寄存器區(qū)可位尋址區(qū)20H2FH7F78070030H7FH數(shù)據(jù)緩沖區(qū)/堆棧區(qū)內(nèi)部RAM存儲(chǔ)器

11第3區(qū)18H~1FH

01第1區(qū)08H~0FHRS1RS0寄存器區(qū)片內(nèi)RAM地址

00第0區(qū)00H~07H

10第2區(qū)10H~17H工作寄存器區(qū)選擇位RS0、RS1PSW位地址

CYACF0RS1RS0OVF1P內(nèi)部RAM低128單元單元地址2FH2EH2DH2CH2BH2AH29H28H27H26H25H24H23H22H21H20H7F776F675F574F473F372F271F170F07

MSB

位地址

LSB7E766E665E564E463E362E261E160E067D756D655D554D453D352D251D150D057C746C645C544C443C342C241C140C047B736B635B534B433B332B231B130B037A726A625A524A423A322A221A120A027971696159514941393129211911090178706860585048403830282018100800表1-9片內(nèi)RAM位尋址區(qū)的位地址

任務(wù)二彩燈閃爍控制任務(wù)二彩燈閃爍控制SFR名稱符號(hào)MSB位地址/位定義LSB字節(jié)地址寄存器BBF7HF6HF5HF4HF3HF2HF1HF0HF0H寄存器AACCE7HE6HE5HE4HE3HE2HE1HE0HE0H程序狀態(tài)字PSWD7HD6HD5HD4HD3HD2HD1HD0HD0HCYACF0RS1RS0OVF1P中斷優(yōu)先級(jí)控制IPBFHBEHBDHBCHBBHBAHB9HB8HB8H///PSPT1PX1PT0PX0I/O端口3P3B7HB6HB5HB4HB3HB2HB1HB0HB0HP3.7P3.6P3.5P3.4P3.3P3.2P3.1P3.0中斷允許控制IEAFHAEHADHACHABHAAHA9HA8HA8HEA//ESET1EX1ET0EX0I/O端口2P2A7HA6HA5HA4HA3HA2HA1HA0HA0HP2.7P2.6P2.5P2.4P2.3P2.2P2.1P2.0串行數(shù)據(jù)緩沖SBUF(99H)串行控制SCON9FH9EH9DH9CH9BH9AH99H98H98HSM0SM1SM2RENTB8RB8TIRII/O端口1P197H96H95H94H93H92H91H90H90HP1.7P1.6P1.5P1.4P1.3P1.2P1.1P1.0表1-10MCS-51單片機(jī)專用寄存器地址表

內(nèi)部RAM高128單元任務(wù)二彩燈閃爍控制SFR名稱符號(hào)MSB位地址/位定義LSB字節(jié)地址T1(高字節(jié))TH1

(8DH)T0(高字節(jié))TH0

(8CH)T1(低字節(jié))TL1

(8BH)T0(低字節(jié))TL0

(8AH)定時(shí)/計(jì)數(shù)器方式選擇TMODGATEC/TM1M0GATC/TM1M0

(89H)定時(shí)/計(jì)數(shù)器控制TCON8FH8EH8DH8CH8BH8AH89H88H

88HTF1TR1TF0TR0IE1IT1IE0IT0電源控制及比特率選擇PCONSMO///////

(87H)數(shù)據(jù)指針高位字節(jié)DPH

(83H)數(shù)據(jù)指針低位字節(jié)DPL

(82H)堆棧指針SP

(81H)I/O端口0P087H86H85H84H83H82H81H80H

80HP0.7P0.6P0.5P0.4P0.3P0.2P0.1P0.0續(xù)表-表1-10MCS-51單片機(jī)專用寄存器地址表

注:字節(jié)地址欄中不帶括號(hào)的寄存器是可進(jìn)行位尋址的寄存器,而帶括號(hào)的是不能進(jìn)行位尋址的寄存器。

幾種常用的特殊功能寄存器(SFR)任務(wù)二彩燈閃爍控制程序計(jì)數(shù)器PCPC是一個(gè)16位的計(jì)數(shù)器,它的作用是控制程序的執(zhí)行順序。其內(nèi)容指明即將執(zhí)行的下一條指令的地址(程序存儲(chǔ)器地址),在物理上獨(dú)立,復(fù)位時(shí)PC=0000H。累加器ACC(Accumulator)

累加器A為8位寄存器,在編程操作中是最常用的專用寄存器,功能較多,可按位尋址。B寄存器

B寄存器是一個(gè)8位寄存器,即可作為一般寄存器使用,也可用于乘除運(yùn)算。做乘法運(yùn)算時(shí),B是乘數(shù)。乘法操作后,乘積的高8位存于B中。做除法運(yùn)算時(shí),B存放除數(shù)。除法操作后,余數(shù)存放在B中。任務(wù)二彩燈閃爍控制程序狀態(tài)字PSW(ProgramStatusWord)

P

—RS0RS1OV

F0

AC

CYCY——

進(jìn)位/借位標(biāo)志;位累加器。AC——輔助進(jìn)/借位標(biāo)志;用于十進(jìn)制調(diào)整。F0——

用戶定義標(biāo)志位;軟件置位/清零。OV——溢出標(biāo)志;硬件置位/清零。P——奇偶標(biāo)志;A中1的個(gè)數(shù)為奇數(shù)P=1;否則P=0。RS1、RS0——寄存器區(qū)選擇控制位。

00:

0區(qū)

R0~R7

01:

1區(qū)

R0~R7

10:2區(qū)R0~R7

11:

3區(qū)

R0~R7

任務(wù)二彩燈閃爍控制堆棧指針

指明棧頂元素的地址,8位,可軟件設(shè)置初值,復(fù)位時(shí)

SP=07H。

數(shù)據(jù)指針DPTR

@DPTR;指明訪問的數(shù)據(jù)存儲(chǔ)器的單元地址,16位,尋址范圍64KB。

DPTR=DPH+DPL,也可單獨(dú)使用。要進(jìn)行16位數(shù)據(jù)的傳送,只有下面指令是正確的:

MOVDPTR,#DATA16小貼士任務(wù)二彩燈閃爍控制1、確定設(shè)計(jì)方案

選用AT89C51單片機(jī)芯片、時(shí)鐘電路、復(fù)位電路、電源和一個(gè)發(fā)光二極管構(gòu)成最小系統(tǒng),完成對(duì)單個(gè)信號(hào)燈的控制。任務(wù)實(shí)施并行接口AT89C51單片機(jī)電源時(shí)鐘電路復(fù)位電路發(fā)光二極管LED顯示圖1-13最小工作系統(tǒng)方案設(shè)計(jì)框圖

任務(wù)二彩燈閃爍控制2、硬件電路設(shè)計(jì)

任務(wù)實(shí)施圖1-14單個(gè)LED信號(hào)燈控制電路原理圖電路所用仿真元器件:AT89C51:單片機(jī)RES:電阻CRYSTAL:晶振LED-RED:發(fā)光二極管CAP:電容CAP-ELEC:電解電容任務(wù)二彩燈閃爍控制3、源程序設(shè)計(jì)步驟1:;***單燈點(diǎn)亮控制程序**********;程序名:控制程序xm1_1.asm;程序功能:控制1個(gè)發(fā)光二極管點(diǎn)亮、熄滅顯示ORG0000H;程序從地址0000H開始存放LJMPSTARTORG0030HSTART:CLRP1.0;將P1.0清零,點(diǎn)亮一個(gè)發(fā)光二極管SJMP$;程序動(dòng)態(tài)暫停END;匯編程序結(jié)束任務(wù)實(shí)施將CLRP1.0這行指令改為SETBP1.0,可使發(fā)光二極管熄滅。

任務(wù)二彩燈閃爍控制步驟2:;*********單燈閃爍控制程序*****;程序名:控制程序xm1_2.asm;程序功能:控制單個(gè)發(fā)光二極管亮、滅閃爍

ORG0000HSTART:CLRP1.0;將P1.0清零“0”,點(diǎn)亮一個(gè)發(fā)光二極管ACALLDELAY;調(diào)用延時(shí)子程序,也可用指令LCALLSETBP1.0;將P1.0置“1”,熄滅一個(gè)發(fā)光二極管ACALLDELAY;調(diào)用延時(shí)子程序SJMPSTART;程序重新開始循環(huán),也可用指令LJMPDELAY:MOVR3,#250;延時(shí)子程序D2:MOVR4,#250D1:NOPDJNZR4,D1DJNZR3,D2RETEND圖1-15LED信號(hào)燈亮滅閃爍流程圖任務(wù)二彩燈閃爍控制4、軟、硬件調(diào)試與仿真任務(wù)實(shí)施圖1-19單個(gè)LED信號(hào)燈控制電路全速仿真圖片段任務(wù)二彩燈閃爍控制5、實(shí)物連接、制作任務(wù)實(shí)施圖1-24單個(gè)LED信號(hào)燈閃爍的電路板實(shí)物在萬能板上按照單片機(jī)控制LED電路圖元器件進(jìn)行焊接。任務(wù)二彩燈閃爍控制6、源程序說明

ORG0000HSTART:CLRP1.0;將P1.0清“0”,點(diǎn)亮發(fā)光二極管ACALLDELAY;調(diào)用延時(shí)子程序延時(shí),也可用指令LCALLSETBP1.0;將P1.0置“1”,熄滅發(fā)光二極管ACALLDELAY

;調(diào)用延時(shí)子程序延時(shí)SJMPSTART;跳轉(zhuǎn)到START處,循環(huán)執(zhí)行程序。也可用指令LJMP任務(wù)實(shí)施主程序:延時(shí)子程序:DELAY:MOVR3,#250;將立即數(shù)250送到R3工作寄存器D2:MOVR4,#250;將立即數(shù)250送到R4工作寄存器D1:NOP;消耗1個(gè)機(jī)器周期DJNZR4,D1;R4減1不為零轉(zhuǎn)移到標(biāo)號(hào)D1處DJNZR3,D2;R3減1不為零轉(zhuǎn)移到標(biāo)號(hào)D2處RET;子程序結(jié)束,返回到主程序任務(wù)二彩燈閃爍控制訓(xùn)練任務(wù)1:利用P1口輸出控制8個(gè)發(fā)光二極管,實(shí)現(xiàn)8個(gè)信號(hào)燈同時(shí)亮滅閃爍,設(shè)計(jì)方案如何修改?評(píng)價(jià)標(biāo)準(zhǔn):流程圖繪制、硬件電路原理圖修改、軟件程序修改、軟硬件聯(lián)調(diào)、實(shí)物連接。訓(xùn)練任務(wù)2:將P1口改為P0口輸出控制8個(gè)發(fā)光二極管,分別點(diǎn)亮和熄滅,電路如何連接?程序如何修改?評(píng)價(jià)標(biāo)準(zhǔn):硬件電路原理圖修改、軟件程序修改、軟硬件聯(lián)調(diào)、實(shí)物連接。

訓(xùn)練與測評(píng)任務(wù)二彩燈閃爍控制

在實(shí)際應(yīng)用中,經(jīng)常用開關(guān)控制信號(hào)燈。將開關(guān)連接到P1.7,LED發(fā)光二極管連接到P1.0??刂埔螅洪_關(guān)打開,發(fā)光二極管熄滅;開關(guān)閉合,發(fā)光二極管熄滅點(diǎn)亮。設(shè)計(jì)思路:首先通過輸入口P1.7將開關(guān)的狀態(tài)讀取到單片機(jī)內(nèi),經(jīng)過數(shù)據(jù)處理后,再由輸出口P1.0將結(jié)果輸出來控制發(fā)光二極管的點(diǎn)亮和熄滅。

技能提高任務(wù)二彩燈閃爍控制技能提高;*********開關(guān)控制信號(hào)燈程序******;程序名:控制程序xm1_3.asm;程序功能:用單個(gè)開關(guān)控制1個(gè)發(fā)光二極管點(diǎn)亮和熄滅ORG0000HSTART:MOVC,P1.7;讀取開關(guān)狀態(tài),保存在”C”中CPLC;將”C”值取反MOVP1.0,C;把”C”值輸出到P1.0,控制發(fā)光二極管亮、滅LJMPSTARTEND圖1-26單個(gè)開關(guān)控制發(fā)光二極管流程圖

任務(wù)二彩燈閃爍控制知識(shí)拓展:發(fā)給二極管的應(yīng)用發(fā)光二極管(LED)是一種把電能變成光能的半導(dǎo)體器件。當(dāng)給LED加上正向偏壓,有電流流過二極管,LED就會(huì)發(fā)光,與普通二極管一樣具有單向?qū)щ娦?,發(fā)光顏色有紅、黃、綠等單色發(fā)光二極管,另外還有一種能發(fā)紅色和綠色光的雙色二極管。LED可以由直流、交流、脈沖電源點(diǎn)亮,常用做指示,工作電流一般為幾毫安到幾十毫安,正向電壓一般在1.5V~2.5V之間,與單片機(jī)連接時(shí),一般要加限流電阻。LED的驅(qū)動(dòng),可分為低電平點(diǎn)亮和高電平點(diǎn)亮兩種。

LED技術(shù)特點(diǎn)是壽命長、能耗低、顯色性高、易維護(hù)、體積小、支流電驅(qū)動(dòng)、點(diǎn)亮速度快、無頻閃、眩光少、耐震性、散熱好、防暴(無高氣壓元件)。鑒于LED的技術(shù)特點(diǎn),目前主要應(yīng)用于以下幾大方面:(1)顯示屏和交通信號(hào)燈(2)汽車車燈(3)LED背光源(4)室內(nèi)裝飾燈和景觀照明燈(5)LED照明光源返回知識(shí)歸納返回項(xiàng)目一單片機(jī)最小系統(tǒng)構(gòu)建1.在學(xué)習(xí)項(xiàng)目的任務(wù)一中,主要掌握:常用型號(hào)單片機(jī)的特點(diǎn),尤其是AT89S51/52芯片的內(nèi)部結(jié)構(gòu)和特點(diǎn);單片機(jī)應(yīng)用系統(tǒng)實(shí)際項(xiàng)目開發(fā)的一般流程:總體設(shè)計(jì)→硬件設(shè)計(jì)→軟件設(shè)計(jì)→系統(tǒng)調(diào)試與維護(hù);單片機(jī)集成開發(fā)環(huán)境:μVision2軟件用來完成程序的編輯、編譯、運(yùn)行及調(diào)試。因?yàn)槲覀冇玫氖菂R編語言,在程序編輯存盤時(shí),要保存為ASM格式文件,最后編譯下載到芯片中的文件為HEX格式文件。μVision2常用的幾種程序運(yùn)行方式:全速運(yùn)行(GO)、單步運(yùn)行(Step)、跟蹤運(yùn)行(StepOver)、斷點(diǎn)運(yùn)行(Breakpoint)。Proteus軟件用來設(shè)計(jì)單片機(jī)硬件電路以及與KeilμVision2一起聯(lián)合仿真,要注意在設(shè)計(jì)電路時(shí),要進(jìn)行電源與接地的連接、復(fù)位引腳的連接、時(shí)鐘電路的連接、EA引腳的連接,所有單片機(jī)電路都要進(jìn)行這4個(gè)基本連接,才能正常工作。2.任務(wù)二通過單燈亮、滅及閃爍控制,掌握單片機(jī)最小工作系統(tǒng)的基本組成:CPU芯片、電源、晶振電路和復(fù)位電路以及單片機(jī)內(nèi)部存儲(chǔ)器的結(jié)構(gòu)。著重訓(xùn)練學(xué)生對(duì)單片機(jī)開發(fā)工具的熟練使用,并認(rèn)識(shí)簡單的匯編指令。項(xiàng)目小結(jié)返回項(xiàng)目一單片機(jī)最小系統(tǒng)構(gòu)建一、選擇題(1)?MCS-51單片機(jī)的CPU主要由

組成。A.運(yùn)算器、控制器

溫馨提示

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

評(píng)論

0/150

提交評(píng)論