項目二:位流水燈的單片機控制_第1頁
項目二:位流水燈的單片機控制_第2頁
項目二:位流水燈的單片機控制_第3頁
項目二:位流水燈的單片機控制_第4頁
項目二:位流水燈的單片機控制_第5頁
已閱讀5頁,還剩20頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

項目二:8位流水燈的單片機控制項目目標項目任務(wù)項目分析項目預(yù)備知識項目實施知識點鏈接

項目目標

通過單片機控制8個發(fā)光二極管的順序點亮,學會使用MCS-51單片機芯片的P1口進行輸出控制,進一步學習匯編程序的分析方法,并能熟練運用RR、RL等基本指令。項目任務(wù)

要求應(yīng)用AT89C51芯片,控制8個發(fā)光二極管的有序亮滅,呈現(xiàn)流水燈的效果。設(shè)計單片機控制電路并編程實現(xiàn)此功能。

項目分析

利用單片機P1口連接8個發(fā)光二極管,利用各引腳輸出電位的變化,控制發(fā)光二極管的亮滅。P1口各引腳的電位變化可以通過指令來控制,為了清楚地分辨發(fā)光二極管的點亮和熄滅,在P1口輸出信號由一種狀態(tài)向另一種狀態(tài)變化時,編寫延時程序?qū)崿F(xiàn)一定的時間間隔。項目預(yù)備知識:循環(huán)移位指令

RLA將累加器A中的數(shù)據(jù)依次左移一位RRA將累加器A中的數(shù)據(jù)依次右移一位RLCA將累加器A中的數(shù)據(jù)連同進位標志位CY一起依次左移一位RRCA將累加器A中的數(shù)據(jù)連同進位標志位CY一起依次右移一位RLA

RRARLCARRCAA.7 A.0A.7 A.0A.7 A.0CYCYA.7 A.0后兩條指令,影響P標志和CY。循環(huán)移位指令(4條)例:若A=5CH,CY=1,執(zhí)行RLCA后,對RLC、RRC指令,在CY=0時 RLC相當于乘以2 RRC相當于除以2結(jié)果:A=B9H,CY=0,P=1010111001101110010CLRA將累加器A中的數(shù)據(jù)清零CPLA將累加器A中的數(shù)據(jù)取反

項目預(yù)備知識:清0與取反指令取反:CPLA;/A→A例:若A=5CH,執(zhí)行CPLA結(jié)果:A=A3H清0:CLRA ;0→A在項目一和項目二中,為了能清晰的分辨出蜂鳴器的鳴叫和發(fā)光二極管的變化,我們進行了延時程序的編寫。CPU執(zhí)行完延時程序耗費的時間即是我們所要延時的時間,通??梢岳脮r鐘頻率、指令周期結(jié)合寄存器中的數(shù)據(jù)進行延時時間的計算。延時程序如下:

DELAY:MOVR7,#10;1μS

D0:MOVR6,#100;1μSD1:MOVR5,#200;1μSD2:DJNZR5,D2;2μSDJNZR6,D1;2μSDJNZR7,D0;2μSRET項目預(yù)備知識:軟件延時程序的時間計算

采用12MHz的晶振,則一個機器周期是1μS,“MOVR7,#10”是一條單周期指令,執(zhí)行1次需要1μS(關(guān)于指令的執(zhí)行周期可以查附錄二)?!癉JNZR5,D2”是雙機器周期指令,執(zhí)行1次需要2×1=2μS。計算第1層循環(huán)(D2)的時間:

200×2μS=400μS第2層循環(huán)(D1)的時間:(1+400+2)×100=40300μS第3層循環(huán)(D0)的時間:(1+40300+2)×10=403030μS≈0.4S(一)設(shè)計思路在AT89C51單片機芯片及基本外圍電路組成的單片機最小系統(tǒng)基礎(chǔ)上,利用P1口的8個引腳控制8個發(fā)光二極管。由于發(fā)光二極管具有普通二極管的共性----單向?qū)щ娦?,因此只要在其兩極間加上合適的正向電壓,發(fā)光二極管即可點亮;將電壓撤除或加反向電壓,發(fā)光二極管即熄滅。根據(jù)發(fā)光二極管的特性,結(jié)合單片機P1口的輸出信號,即可實現(xiàn)流水燈的控制效果。項目實施一、硬件電路設(shè)計(二)電路設(shè)計

1、P1口結(jié)構(gòu)及流水燈電路

左圖是P1口中某一位的位結(jié)構(gòu)電路圖。P1口為8位準雙向口,每一位均可獨立定義為輸入或輸出口,當作為輸出口時,1寫入鎖存器,,T2截止,內(nèi)部上拉電阻將電位拉至"1",此時該口輸出為1;當0寫入鎖存器,,T2導(dǎo)通,輸出則為0。作為輸入口時,鎖存器置1,T2截止,此時該位既可以把外部電路拉成低電平,也可由內(nèi)部上拉電阻拉成高電平,所以P1口稱為準雙向口。P1.0—P1.7:準雙向I/O口(內(nèi)置了上拉電阻)21DQCK/Q讀引腳=0讀鎖存器=0寫鎖存器內(nèi)部總線Vcc引腳P1.X內(nèi)部上拉電阻(1)P1.0—P1.7作為輸出口【輸出1】21DQCK/Q讀引腳=0讀鎖存器=0寫鎖存器內(nèi)部總線Vcc引腳P1.X內(nèi)部上拉電阻輸出數(shù)據(jù)=1時110截止=121DQCK/Q讀引腳=0讀鎖存器=0寫鎖存器內(nèi)部總線Vcc引腳P1.X內(nèi)部上拉電阻輸出數(shù)據(jù)=0時001=0導(dǎo)通(2)P1.0—P1.7作為輸出口【輸出0】21DQCK/Q讀引腳=1讀鎖存器=0寫鎖存器內(nèi)部總線Vcc引腳P1.X內(nèi)部上拉電阻輸入數(shù)據(jù)時,要先對其寫“1”110截止(3)P1.0—P1.7作為輸入口發(fā)光柏二極慣管的振連接絡(luò)方法搭:若拾將它芒們的笑陰極燈連接窮在一溜起,框陽極移信號器受控冷制,拐即構(gòu)哨成共鮮陰極蓮接法啄,如簽圖a所示堡;若薯將它席們的士陽極月連接窄在一婚起,鉤陰極捉信號克受控鹽制,湖則構(gòu)明成共賢陽極親接法討,如重圖b所示釋。由鮮于P1口引靠腳輸減出高免電位勾時電抱壓大障約是5V,為因保證比發(fā)光季二極船管的述可靠完工作記,必郵須在綢發(fā)光夏二極撒管和主單片痛機輸說出引咐腳間坊連接宏一只僅限流壇電阻施。本項臣目選狀用硅銅型普牢通發(fā)扎光二掛極管亂,限說流電更阻取22鞠0Ω。P1口控咬制流驅(qū)水燈沈(8個發(fā)倍光二肢極管純)電掌路綜合廊以上效的分刪析,餡得到臂下圖熟所示矛電路并原理粉圖。(三貴)材文料表從原宜理圖媽可以浴得到肝實現(xiàn)耳本項嗎目所盒需的捏元器救件。粗元器鴉件的堵選擇暮應(yīng)該爭合理望,以運滿足傭功能發(fā)要求栽為原井則,冒否則卸會造襪成資萄源的矩浪費擊。序號元件名稱元件型號元件數(shù)量備注1單片機芯片AT89C511片DIP封裝

2發(fā)光二極管Φ51只普通型3晶振1只12MHz4電容30pF2只瓷片電容22uF1只電解電容5電阻200Ω8只碳膜電阻10kΩ1只碳膜電阻6按鍵1只無自鎖1只帶自鎖740腳IC座1片安裝AT89C51芯片8導(dǎo)線若干二、濾控制告程序票的編軍寫(一丈)繪月制程雜序流棄程圖駁本控興制使惕用簡呈單程期序設(shè)改計中辦的順播序結(jié)多構(gòu)形排式實逮現(xiàn),機程序振結(jié)構(gòu)柄流程顏圖如嗚下圖住。(二敢)編那制匯黃編源卻程序標號操作碼操作數(shù)指令意義(注釋)ORG0000H;偽指令,指明程序從0000H單元開始存放LJMPMAIN2;控制程序跳轉(zhuǎn)到“MAIN2”處執(zhí)行ORG0200H;主程序從0200H單元開始MAIN2:MOVP1,#0FEH;將立即數(shù)FEH送累加器A,L0亮LCALLDELAY;調(diào)用DELAY(延時)程序MOVP1,#0FDH;L1亮LCALLDELAYMOVP1,#0F7H;L2亮LCALLDELAYMOVP1,#0F7H;L3亮LCALLDELAYMOVP1,#0EFH;L4亮LCALLDELAYMOVP1,#0DFH;L5亮LCALLDELAY標號操作碼操作數(shù)指令意義(注釋)MOVP1,#0BFH;L6亮LCALLDELAYMOVP1,#7FH;L7亮LCALLDELAY;將立即數(shù)FEH送累加器A,L0亮SJMP$;重復(fù)執(zhí)行本條指令(程序結(jié)束)ORG0F00H;延時程序從0F00H開始DELAY:MOVR7,#10;將立即數(shù)10送通用寄存器R7D0:MOVR6,#100;將立即數(shù)100送通用寄存器R6D1:MOVR5,#200;將立即數(shù)200送通用寄存器R5D2:DJNZR5,D2;根據(jù)R5減1后的內(nèi)容判斷程序執(zhí)行方向DJNZR6,D1;根據(jù)R6減1后的內(nèi)容判斷程序執(zhí)行方向DJNZR7,D0;根據(jù)R7減1后的內(nèi)容判斷程序執(zhí)行方向RET;子程序返回指令END;程序結(jié)束標記2、程萌序執(zhí)欄行過窄程OR鞭G浙0精00繡0HLJ憑MP吉MA顧IN泊2OR寨G正0廣20由0HMA旱IN需2:MO吳V汪P杰1,#0筑FE耀H;L0亮LC平AL表L藝D滔EL巾AYMO生V聽P畏1,#0液FD億H;L1亮LC書AL做L脖D礎(chǔ)EL耕AYMO拜V鄰P五1,#0冷FB釘H;L2亮LC晶AL籌L知D姜EL魄AYMO熟V笨P環(huán)1,#0勇F7暗H;L3亮LC毛AL彼L蘭D苗EL廳AYMO廣V攪P癥1,#0讓EF局H;L4亮LC純AL融L狹D錄EL濁AYMO宇V隸P這1,#0合DF詳H;L5亮LC初AL家L竄D謀EL陣AYMO存V朽P1,#0帽BF豬H;L6亮LC域AL債L深D熄EL梨AYMO吹V鋒P1,#7令FH;L7亮LC峽AL仰L地D障EL燙AYSJ蘭MP菊$;重灰復(fù)執(zhí)銹行本鄰條指鏟令OR鑰G低0F吃00經(jīng)HDE溪LA款Y:縫MO針V鐵R7惠,#查10D0獲:海M追OV河R拼6,工#1錯00D1鄉(xiāng)豐:蝴M忠OV哨R徑5,圣#2勿00D2義:來D市JN丈Z物R優(yōu)5,伐D2DJ肚NZ詠R非6,駛D1DJ晶NZ戀R7桶,D倦0RE蓋T;子醉程序礙返回曬指令EN襲D;程緒序結(jié)偶束標剩記在本住項目均中,摸利用P1口實戒現(xiàn)8個發(fā)載光二睡極管漲的流供水燈噸控制隊,主壩要利君用了辭送數(shù)惡指令潤,將諒要顯挨示的亮現(xiàn)象徑對應(yīng)迎的數(shù)扶據(jù)通赴過P1口送客出。辰在編敞寫控抖制程足序時政,應(yīng)頁首先鄙將每鴿個對鋒應(yīng)現(xiàn)盤象分掉析清校楚,東比如蒼:要掉讓L3亮,津其余盯發(fā)光震二極椒管滅帆,則P1口的騎數(shù)據(jù)摸應(yīng)為11剩11域01仇11牧B;要宣讓L7亮,駕則P1口的應(yīng)數(shù)據(jù)孕應(yīng)為01護11辭11再11皮B。然教后找銷到能卻實現(xiàn)蟻此操草作的傍指令轉(zhuǎn)即可牲。下哨面使及用我駐們在歷本項揮目中尤學習者的移雄位指占令編糟寫程沾序如陜下:OR托G廟00銀00果H凡O掙RG巧0F捧00態(tài)HLJ疼MP遼MA崖IN鞏2扭D釀EL熔AY歡:M置OV醉R7盾,且#1披0OR潛G扭02菊00泛H義D0皺:M姨OV江R6廣,悠#1右00MA刪IN侄2:MO壓V白A,#0巴FE廊H跡D遺1:綿MO按V戚R謀5,撥#面20感0XH:MO幅V拿P1,A弄D2襪:D圾JN銜Z暴R5

溫馨提示

  • 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)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論