proteus下控制LED燈_第1頁
proteus下控制LED燈_第2頁
proteus下控制LED燈_第3頁
proteus下控制LED燈_第4頁
proteus下控制LED燈_第5頁
已閱讀5頁,還剩2頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、實驗課程: 單片機(jī)原理及應(yīng)用 一、 實驗?zāi)康膶W(xué)習(xí)匯編語言指令系統(tǒng)的編程與調(diào)試方法二、 實驗內(nèi)容1、參照教材圖A.21完成實驗二電路原理圖的繪制;2、根據(jù)圖A.22的程序流程圖編寫匯編語言程序; 3、利用ISIS的匯編工具查找并修正程序的語法錯誤和邏輯錯誤;4、觀察仿真結(jié)果,完成實驗報告。三、 實驗要求提交的實驗報告中應(yīng)包括:1、完成的電路圖(含繪圖過程簡述);2、編寫的匯編源程序(含程序簡要說明);3、使用的程序調(diào)試方法;4、實現(xiàn)的仿真效果(含運行截圖與文字說明);5、實驗小結(jié)(結(jié)論與體會)。提交實驗報告主題及存盤文件名格式(學(xué)號+姓名+實驗*),例如:2011041220張三實驗一。1、電路

2、原理圖圖1如圖1所示,從左往右、從上往下看,如圖,這是由晶體振蕩器和電容組構(gòu)成的并聯(lián)諧振回路,產(chǎn)生單片機(jī)的時鐘信號。如圖,當(dāng)單片機(jī)出現(xiàn)死機(jī)時,可以利用它來復(fù)位。這種叫上電復(fù)位,產(chǎn)生復(fù)位的條件為:在高電平狀態(tài)下,時間等于系統(tǒng)時鐘振蕩周期建立時間和兩個機(jī)器周期時間(一般小于10ms)。如圖,這是80c51芯片共有40個引腳,4只電源及晶振引腳Vcc,Vss,XTAL1,XTAL2。4只控制引腳(PSEN)注:用“()”括著的為低電平有效,下同,ALE,(EA),RST 。32只并行I/O引腳P0.0P0.7,P1.0P1.7,P2.0P2.7,P3.0P3.7。如圖,這是外部Rom允許訪問/編程電

3、源輸入,當(dāng)連接高電平時,cpu從片內(nèi)rom讀指令。如圖和,連接它們用于在80c51的控制下,實現(xiàn)相應(yīng)功能,這里是使led燈閃爍,并使開關(guān)能控制。2、匯編源程序 mov R5,#3lOOP1:MOV P2,#0 ACALL DELAY MOV P2,#0FFH ACALL DELAY DJNZ R5,LOOP1LOOP2:MOV P2,P1 SJMP LOOP2DELAY:MOV R0,#100DEL0:MOV R1,#50DEL1:MOV R2,#25DEL2:DJNZ R2,DEL2 DJNZ R1,DEL1 DJNZ R0,DEL0 RET END說明:首先設(shè)置循環(huán)變量為3(實現(xiàn)燈閃三次)

4、,LOOP1為第一個條件入口。給P2賦值0,然后調(diào)用DELAY,給P2賦值#0ffh,再調(diào)用DELAY。以此來實現(xiàn)三次循環(huán)。LOOP2為第二個條件入口,實現(xiàn)最終開關(guān)控制燈。DELAY在這里只是用于耗費時間,共0.1秒/單位。3、程序調(diào)試方法根據(jù)圖1及匯編源程序?qū)崿F(xiàn)8盞led燈先亮三下,然后根據(jù)圖控制燈的亮或滅。具體實現(xiàn)如下:安裝proteus軟件及keil UV4軟件,proteus可用于模擬電路圖連接,UV4可用于編譯匯編程序。匯編編譯成功后,在proteus描繪的的80c51芯片中右擊屬性,選擇匯編源程序生成的.hex文件,加載,確認(rèn),運行試試。4、仿真運行效果圖2分析:開始會閃爍三下(間

5、隔時間根據(jù)自己而定),然后根據(jù)開關(guān)控制燈的亮滅。如圖2,左下的開關(guān)1,4,5,7,8閉合,相應(yīng)地右下角1,4,5,7,8亮。5、實驗小結(jié)本次實驗了解自己編寫程序及了解匯編語言,話說如果不是四處尋找資料,我還真做不出來。感謝小伙伴和網(wǎng)友的貢獻(xiàn)。還有希望老師下次做實驗時給我們講解詳細(xì)一點或提供什么資料什么的。我覺得盲目的搜資料只是浪費時間。但有人又會認(rèn)為,老師給出資料,那同學(xué)不是不會自己思考嗎?我的答案是否定的,沒有人第一次就會的,所以我認(rèn)為還是有參考資料好。況且如果自己不想思考的話,那些忙于交作業(yè)的人只會搜答案,可想而知百度的強(qiáng)大。還不如你好我好大家好,給出參考資料。用心做的始終有收獲,不用心的始終還是不會學(xué)。附件:(這是在keil UV下用c語言編的)#include"REG51.H" void delay(int num) int i=0,j;for(;i<num;i+)for(j=0;j<1000;j+);void my_led1()int i;P2=0x00;delay(100);P2=0xff;delay

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論