




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、項(xiàng)目2-8位流水燈的單片機(jī)項(xiàng)目任務(wù)項(xiàng)目任務(wù) 要求應(yīng)用AT89C51芯片,控制8個(gè)發(fā)光二極管的有序亮滅,呈現(xiàn)流水燈的效果。設(shè)計(jì)單片機(jī)控制電路并編程實(shí)現(xiàn)此功能。項(xiàng)目分析項(xiàng)目分析 利用單片機(jī)P1口連接8個(gè)發(fā)光二極管,利用各引腳輸出電位的變化,控制發(fā)光二極管的亮滅。P1口各引腳的電位變化可以通過(guò)指令來(lái)控制,為了清楚地分辨發(fā)光二極管的點(diǎn)亮和熄滅,在P1口輸出信號(hào)由一種狀態(tài)向另一種狀態(tài)變化時(shí),編寫(xiě)延時(shí)程序?qū)崿F(xiàn)一定的時(shí)間間隔。項(xiàng)目實(shí)施項(xiàng)目實(shí)施一、硬件電路設(shè)計(jì) 二、控制程序的編寫(xiě) 三、程序仿真與調(diào)試一、硬件電路設(shè)計(jì)一、硬件電路設(shè)計(jì)(一)設(shè)計(jì)思路(一)設(shè)計(jì)思路 在AT89C51單片機(jī)芯片及基本外圍電路組成的單片
2、機(jī)最小系統(tǒng)基礎(chǔ)上,利用P1口的8個(gè)引腳控制8個(gè)發(fā)光二極管。由于發(fā)光二極管具有普通二極管的共性-單向?qū)щ娦?,因此只要在其兩極間加上合適的正向電壓,發(fā)光二極管即可點(diǎn)亮;將電壓撤除或加反向電壓,發(fā)光二極管即熄滅。根據(jù)發(fā)光二極管的特性,結(jié)合單片機(jī)P1口的輸出信號(hào),即可實(shí)現(xiàn)流水燈的控制效果。(二)電路設(shè)計(jì)(二)電路設(shè)計(jì)1、P1口結(jié)構(gòu) 左圖是P1口中某一位的位結(jié)構(gòu)電路圖。P1口為8位準(zhǔn)雙向口,每一位均可獨(dú)立定義為輸入或輸出口,當(dāng)作為輸出口時(shí),1寫(xiě)入鎖存器,T2截止,內(nèi)部上拉電阻將電位拉至1,此時(shí)該口輸出為1;當(dāng)0寫(xiě)入鎖存器, ,T2導(dǎo)通,輸出則為0。作為輸入口時(shí),鎖存器置1,T2截止,此時(shí)該位既可以把外部
3、電路拉成低電平,也可由內(nèi)部上拉電阻拉成高電平,所以P1口稱(chēng)為準(zhǔn)雙向口。2、發(fā)光二極管的連接 發(fā)光二極管的連接方法:若將它們的陰極連接在一起,陽(yáng)極信號(hào)受控制,即構(gòu)成共陰極接法,如圖a所示;若將它們的陽(yáng)極連接在一起,陰極信號(hào)受控制,則構(gòu)成共陽(yáng)極接法,如圖b所示。由于P1口引腳輸出高電位時(shí)電壓大約是5V,為保證發(fā)光二極管的可靠工作,必須在發(fā)光二極管和單片機(jī)輸出引腳間連接一只限流電阻。 本項(xiàng)目選用硅型普通發(fā)光二極管,限流電阻取220。 3、8只發(fā)光二極管的控制電路(三)材料表(三)材料表 從原理圖可以得到實(shí)現(xiàn)本項(xiàng)目所需的元器件。元器件的選擇應(yīng)該合理,以滿(mǎn)從原理圖可以得到實(shí)現(xiàn)本項(xiàng)目所需的元器件。元器件的
4、選擇應(yīng)該合理,以滿(mǎn)足功能要求為原則,否則會(huì)造成資源的浪費(fèi)。足功能要求為原則,否則會(huì)造成資源的浪費(fèi)。序號(hào) 元件名稱(chēng) 元件型號(hào) 元件數(shù)量 備注 1單片機(jī)芯片 AT89C511片DIP封裝 2發(fā)光二極管5 1只普通型3晶振1只12MHz4電容30pF 2只瓷片電容22uF 1只電解電容5電阻200 8只碳膜電阻10k 1只碳膜電阻6按鍵1只無(wú)自鎖1只帶自鎖740腳IC座 1片安裝AT89C51芯片8導(dǎo)線若干二、二、 控制程序的編寫(xiě)控制程序的編寫(xiě)(一)繪制程序流程(一)繪制程序流程圖圖 本控制使用簡(jiǎn)單程序設(shè)計(jì)中的順序結(jié)構(gòu)形式實(shí)現(xiàn),程序結(jié)構(gòu)流程圖如右圖。(二)程序編寫(xiě)(二)程序編寫(xiě) ORG 0000H
5、MOV P1,#0BFH LJMP MAIN LCALL YS ORG 0030H MOV P1,#7FHMAIN:MOV P1,#0FEH LCALL YS LCALL YS LJMP MAIN MOV P1,#0FDH ORG 0100H LCALL YS YSYS:MOV R7,#2 MOV P1,#0FBH L1:MOV R6,#0FFH LCALL YS L2:MOV R5,#0FFH MOV P1,#0F7H L3:DJNZ R5,L3 LCALL YS DJNZ R6,L2 MOV P1,#0EFH DJNZ R7,L1 LCALL YS RETRET MOV P1,#0DFH
6、END LCALL YS(三)匯編指令學(xué)習(xí)(三)匯編指令學(xué)習(xí)1、對(duì)累加器A的邏輯操作指令: 在MCS-51單片機(jī)的指令系統(tǒng)中,累加器A是一個(gè)最常用的8位寄存器,為了使用方便,特別設(shè)計(jì)了7條對(duì)累加器A進(jìn)行邏輯操作的指令,包括清零、取反、移位和高低半字節(jié)互換,且操作結(jié)果依然保存在累加器A中。 匯編指令 指令功能 CLR ACLR A 將累加器A中的數(shù)據(jù)清零 CPL ACPL A 將累加器A中的數(shù)據(jù)取反 RL ARL A 將累加器A中的數(shù)據(jù)依次循環(huán)左移一位 RR ARR A 將累加器A中的數(shù)據(jù)依次循環(huán)右移一位 RLC ARLC A 將累加器A中的數(shù)據(jù)連同進(jìn)位標(biāo)志位CY一起依次循環(huán)左移一位 RRC A
7、RRC A 將累加器A中的數(shù)據(jù)連同進(jìn)位標(biāo)志位CY一起依次循環(huán)右移一位 2、延時(shí)程序 在項(xiàng)目一和項(xiàng)目二中,為了能清晰的分辨出發(fā)光二極管的變化,我們進(jìn)行了延時(shí)程序的編寫(xiě)。 1 1)延時(shí)功能的實(shí)現(xiàn)方法)延時(shí)功能的實(shí)現(xiàn)方法(1)利用RC的充放電時(shí)間來(lái)延時(shí)的硬件電路(2)利用單片機(jī)內(nèi)的定時(shí)器來(lái)實(shí)現(xiàn)(T0、T1是可編程的)(3)編程實(shí)現(xiàn)軟件延時(shí) a、它是利用執(zhí)行一組指令所花的時(shí)間和多次重復(fù)執(zhí)行這組指令的次數(shù)乘積來(lái)實(shí)現(xiàn),而循環(huán)次數(shù)的確定,則需要根據(jù)延時(shí)的時(shí)間進(jìn)行計(jì)算,因此,延時(shí)時(shí)間確定關(guān)鍵在于確定循環(huán)計(jì)數(shù)器的設(shè)置值 b、常用指令 MOV Rn,#dataMOV Rn,#data ;1Tm NOP NOP ;
8、1Tm DJNZ Rn,relDJNZ Rn,rel ;2Tm RET RET ;2Tm2)通用延時(shí)程序結(jié)構(gòu) YS:MOV R7,#C1 ;1Tm D1:MOV R6,#C2 ;1Tm D2:MOV R5,#C3 ;1TmLOOP:DJNZ R5,LOOP ;2Tm*C3 DJNZ R6,D2 ;2Tm DJNZ R7,D1 ;2Tm RET ;2Tm延時(shí)時(shí)間:T=1Tm+1Tm+(1Tm+2Tm*C3+2Tm)*C2+2Tm*C1+2TmT的長(zhǎng)短關(guān)鍵在于設(shè)置C3、C2、C1的值*C2*C13)例題:延時(shí)100ms子程序, 設(shè)fosc=6MHZ(Tm=2us)(1)設(shè)C3=250,則內(nèi)循環(huán)時(shí)間
9、 2Tm*250=2*2*250=1000us(2)外循環(huán)要求執(zhí)行時(shí)間為100 ms 所以:1Tm+(1Tm+1000us+2Tm)*C2+2Tm=100ms C2=99.7100(3)程序 YSYS:MOV R2,#100:MOV R2,#100 D1:MOV R3,#250 D1:MOV R3,#250LOOP:DJNZ R3,LOOPLOOP:DJNZ R3,LOOP DJNZ R2,D1 DJNZ R2,D1 RET RET 3、程序的編寫(xiě)技巧: 在本項(xiàng)目中,利用P1口實(shí)現(xiàn)8個(gè)發(fā)光二極管的流水燈控制,主要利用了送數(shù)指令,將要顯示的現(xiàn)象對(duì)應(yīng)的數(shù)據(jù)通過(guò)P1口送出。在編寫(xiě)控制程序時(shí),應(yīng)首先將
10、每個(gè)對(duì)應(yīng)現(xiàn)象分析清楚,比如:要讓L3亮,其余發(fā)光二極管滅,則P1口的數(shù)據(jù)應(yīng)為11110111B;要讓L7亮,則P1口的數(shù)據(jù)應(yīng)為01111111B。然后找到能實(shí)現(xiàn)此操作的指令即可。下面使用我們?cè)诒卷?xiàng)目中學(xué)習(xí)的移位指令編寫(xiě)程序如下: ORG 0000H ORG 0F00H ORG 0000H ORG 0F00H LJMP MAIN2 LJMP MAIN2 DELAYDELAY:MOV R7 ,#10:MOV R7 ,#10 ORG 0200H D0:MOV R6 ,#100 ORG 0200H D0:MOV R6 ,#100 MAIN2 MAIN2:MOV AMOV A,#0FEH D1:MOV
11、R5, #200#0FEH D1:MOV R5, #200 XH XH:MOV P1MOV P1,A D2:DJNZ R5,D2A D2:DJNZ R5,D2 LCALL DELAY DJNZ R6,D1 LCALL DELAY DJNZ R6,D1 RL ARL A DJNZ R7,D0 DJNZ R7,D0 LJMP XH RET LJMP XH RET END END 分析后可知,本段程序與項(xiàng)目中給出的參考程序功能相似,但是指令數(shù)量較少,所占存儲(chǔ)器空間較小。根據(jù)發(fā)光二極管的點(diǎn)亮次序,通過(guò)分析每次給P1口所送數(shù)據(jù),發(fā)現(xiàn)不斷變換的是數(shù)據(jù)中“0”的位置。若點(diǎn)亮次序是從L0L7,則“0”是自低位
12、(右)向高位(左)移動(dòng)的,符合指令“RL A”的功能。同時(shí)還可以總結(jié)出,若應(yīng)用“RR A”指令,則8個(gè)發(fā)光二極管的點(diǎn)亮次序是從L7L0。應(yīng)用了移位指令后,程序更簡(jiǎn)潔易懂了,因此在今后的學(xué)習(xí)中,應(yīng)注意類(lèi)似情況的處理。三、程序仿真與調(diào)試:三、程序仿真與調(diào)試: 1、運(yùn)行Keil軟件。 2、利用Keil進(jìn)行文件編譯。 3、利用Keil進(jìn)行軟件仿真。 4、程序的下載及運(yùn)行。 5、修改源程序進(jìn)行調(diào)試。 注:此部分可實(shí)際利用Keil 軟件教學(xué)。 1、運(yùn)行Keil軟件。 運(yùn)行Keil軟件,將本項(xiàng)目中的匯編源程序以文件名MAIN2.ASM保存,添加到工程文件并進(jìn)行軟件仿真的設(shè)置。 2、利用Keil進(jìn)行文件編譯。
13、 將已經(jīng)存儲(chǔ)完成的文件進(jìn)行編譯,若編譯中檢測(cè)到錯(cuò)誤的符號(hào),會(huì)將錯(cuò)誤信息顯示在“Build”卡項(xiàng)中,用鼠標(biāo)雙擊錯(cuò)誤提示,即可以在對(duì)應(yīng)位置進(jìn)行修改。 3、利用Keil進(jìn)行軟件仿真。編譯成功的程序在寫(xiě)入芯片前,可以先進(jìn)行計(jì)算機(jī)軟件仿真,通過(guò)觀察分析存儲(chǔ)器中相關(guān)數(shù)據(jù)的變化,分析源程序是否正確。4、程序的下載及運(yùn)行。 利用編程器將匯編完成的文件下載到所用的芯片中,安裝到焊接好的電路板上,通電后運(yùn)行程序,觀察8個(gè)發(fā)光二極管的亮滅變化,理解送數(shù)指令的意義(如左圖所示)。 5、修改源程序,將送數(shù)指令改為移位指令,重復(fù)以上步驟,觀察8個(gè)發(fā)光二極管的控制現(xiàn)象,理解RL、RR指令的功能。知識(shí)點(diǎn)鏈接知識(shí)點(diǎn)鏈接項(xiàng)目測(cè)試項(xiàng)目測(cè)試一、填空題: 1、同樣的工作電壓,( )發(fā)光二極管的亮度較高。 (A) 高亮型 (B)普通型 2、已知(A)=27H,執(zhí)行指令“RL A”后,累加器A中的內(nèi)容 是( )。 (A) 28H (B) 93H (C)4FH 3、本項(xiàng)目中要實(shí)現(xiàn)8個(gè)發(fā)光二極管初始時(shí)兩端點(diǎn)亮的效果, 初值應(yīng)為( )。 (A) 77H (B) E7H (C) EEH (D) 7EH 4、
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 相機(jī)質(zhì)保合同范本
- 路橋收費(fèi)機(jī)機(jī)箱行業(yè)市場(chǎng)發(fā)展及發(fā)展趨勢(shì)與投資戰(zhàn)略研究報(bào)告
- 快速看懂血常規(guī)報(bào)告單
- 七下生物知識(shí)點(diǎn)歸納
- 2025年洗衣機(jī)控制板項(xiàng)目可行性研究報(bào)告
- 2024-2030年中國(guó)MOCVD機(jī)臺(tái)行業(yè)市場(chǎng)調(diào)查研究及投資前景展望報(bào)告
- 年產(chǎn)5萬(wàn)輛電動(dòng)車(chē)生產(chǎn)項(xiàng)目可行性研究報(bào)告建議書(shū)
- 課件學(xué)前班安全公開(kāi)課教案第10課《蔬菜寶寶營(yíng)養(yǎng)多》課件
- 店面質(zhì)押合同范本
- 2025年中國(guó)鹽酸林可霉素注射液行業(yè)競(jìng)爭(zhēng)格局分析及投資規(guī)劃研究報(bào)告
- 一年級(jí)下冊(cè)綜合實(shí)踐活動(dòng)教案2
- 生物-山東省濰坊市、臨沂市2024-2025學(xué)年度2025屆高三上學(xué)期期末質(zhì)量檢測(cè)試題和答案
- 2025年小學(xué)督導(dǎo)工作計(jì)劃
- 2024-2025學(xué)年部編版歷史九年級(jí)上冊(cè)期末復(fù)習(xí)練習(xí)題(含答案)
- 2025年月度工作日歷含農(nóng)歷節(jié)假日電子表格版
- 《商務(wù)數(shù)據(jù)分析》課件-商務(wù)數(shù)據(jù)的分析
- 安全隱患規(guī)范依據(jù)查詢(xún)手冊(cè)
- 部編版六年級(jí)下冊(cè)道德與法治全冊(cè)教案教學(xué)設(shè)計(jì)
- 最新六年級(jí)英語(yǔ)下冊(cè)《全套教材分析解讀》外研版課件
- 高質(zhì)量SCI論文入門(mén)必備從選題到發(fā)表全套課件
- Counting Stars 歌詞
評(píng)論
0/150
提交評(píng)論