版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、<p><b> 單片機(jī)</b></p><p><b> 課</b></p><p><b> 程</b></p><p><b> 設(shè)</b></p><p><b> 計(jì) </b></p>
2、<p> 標(biāo) 題: 流水燈 </p><p> 姓 名: </p><p><b> 學(xué) 號(hào): </b></p><p> 班 級(jí): </p><p> 指導(dǎo)老師: </p><
3、p> 2011年 月 日</p><p><b> 目錄</b></p><p> 一、設(shè)計(jì)題目:流水燈2</p><p> 二、設(shè)計(jì)任務(wù)、功能描述3</p><p> 三、 硬件原理分析3</p><p> 1、整體布局圖4</p><
4、p> 四、 軟件設(shè)計(jì)分析5</p><p> 1、地址空間及端口分配5</p><p> 2、總體架構(gòu)說明5</p><p> 3、各子程序功能及出入口地址5</p><p> (1)各子程序功能:5</p><p><b> 4、程序流程圖6</b></p&g
5、t;<p> 一、設(shè)計(jì)題目:流水燈</p><p> 設(shè)計(jì)的流水燈能夠根據(jù)程序?qū)崿F(xiàn)相應(yīng)的動(dòng)作,同時(shí)能夠通過按鈕實(shí)現(xiàn)控制。</p><p><b> 設(shè)計(jì)任務(wù)、功能描述</b></p><p> 整體設(shè)計(jì)任務(wù):本次流水燈設(shè)計(jì)首要的工作是結(jié)合以往所學(xué)的單片機(jī)程序編寫理論和編寫規(guī)則來編寫流水燈的軟件部分,編寫時(shí)要結(jié)合所配的AT8
6、9S51芯片的管腳功能和其他硬件電路,該部分運(yùn)用keil單片機(jī)軟件來完成。在編寫完軟件并檢測(cè)完正確后再編譯成.asm載入用Isis仿真軟件布好的仿真硬件中運(yùn)行檢測(cè)程序是否正確,并調(diào)試。待這一切工作做好后再利用已焊接好的小系統(tǒng)板硬件電路來實(shí)踐實(shí)現(xiàn)軟件功能與硬件的結(jié)合。此步驟要用STC-ISP單片機(jī)燒寫軟件來實(shí)現(xiàn)。</p><p><b> 在硬件設(shè)計(jì)上:</b></p><
7、;p> ?。?)整個(gè)電路分為兩個(gè)部分,單片機(jī)最小應(yīng)用系統(tǒng)ISP編程下載線。</p><p> ?。?)所有電路中的電源和地線編程器部分連在一起,單片機(jī)最小應(yīng)用系統(tǒng)部分連在一起。</p><p> ?。?)連接器兩邊一定要對(duì)應(yīng)</p><p> 三、 硬件原理分析</p><p><b> 電路設(shè)計(jì)分析</b>
8、;</p><p> 電路原理設(shè)計(jì)是基于小系統(tǒng)包括電源電路、、、、輸出控制電路。電源部分是用交流電來提供的5v電壓,晶體振蕩器采用的是12MHz的石英晶體振蕩器。</p><p> 總體硬件設(shè)計(jì)框圖如下:</p><p><b> 整體布局圖</b></p><p><b> ?。娐凡糠郑?lt;/b&
9、gt;</p><p> 電源部分) (</p><p> 數(shù)據(jù)輸入端口)
10、 </p><p><b> 四、 軟件設(shè)計(jì)分析</b></p><p> 1、地址空間及端口分配</p><p><b> 2、總體架構(gòu)說明</b></p><p> 該程序設(shè)計(jì)思路如下:</p><p> ?。?)、在程序頭將設(shè)計(jì)中的一些固定空間進(jìn)
11、行分配并注釋。</p><p> ?。?)、開始主程序進(jìn)行程序掃描,先掃描拆字子程序,將分配好的時(shí)分秒等高地位的數(shù)字調(diào)入到顯示子程序中?!?gt;顯示子程序通過分配的空間對(duì)應(yīng)口將拆字子程序的內(nèi)容在四位數(shù)碼管上顯示相應(yīng)的時(shí)分。</p><p> ?。?)、子程序部分。在主程序的調(diào)用下依據(jù)不同的子程序工能而編寫子程序,有多級(jí)嵌套。這些子程序包括顯示子程序、拆字子程序、延時(shí)子程序、走時(shí)間子程序
12、、調(diào)時(shí)間子程序。</p><p> 3、各子程序功能及出入口地址</p><p> (1)各子程序功能:</p><p> 顯示子程序:將拆分好的高低位時(shí)分拆分碼放入相對(duì)應(yīng)的數(shù)碼管,調(diào)用tab選通相應(yīng)的四位數(shù)碼顯示時(shí)分當(dāng)前數(shù)字。</p><p> 延時(shí)子程序:該子程序是為了實(shí)現(xiàn)八個(gè)七段數(shù)碼管顯示的順序顯示選通時(shí)間,2ms的顯示時(shí)間頻率
13、是的顯示效果穩(wěn)定,同時(shí)作為按鍵開關(guān)掃描判斷去抖</p><p> 走時(shí)間子程序:該程序功能是使得秒程序走動(dòng),走到59后進(jìn)位分,后變00從新開始計(jì)時(shí),分走到59后進(jìn)位時(shí),分從新開始00計(jì)時(shí),時(shí)走到23,分走到59,秒走到59后進(jìn)入從新日期周期計(jì)時(shí)。 </p><p><b> 4、程序流程圖</b></p><p><b> 程序
14、清單</b></p><p> ORG 0000H</p><p> LJMP STARA</p><p> ORG 0030H </p><p> ORG 0 ;程序從0地址開始</p><p> START
15、: MOV DPTR,#TAB ;將DPTR指向編碼表位置</p><p> LOOP: CLR A ;清空ACC</p><p> MOVC A,@A+DPTR ;根據(jù)ACC的內(nèi)容取出編碼表里的編碼</p><p> CJNE A,#0FFH,S
16、HOW ;若ACC的內(nèi)容不等于0FFH,則跳至SHOW處執(zhí)行</p><p> AJMP START ;跳到START處執(zhí)行</p><p> SHOW: MOV P2,A ;讓P2口輸出ACC的內(nèi)容</p><p> ACALL DELAY
17、 ;調(diào)用延時(shí)子程序</p><p> INC DPTR ;將DPTR寄存器的內(nèi)容加1</p><p> AJMP LOOP ;跳到LOOP處執(zhí)行</p><p> ;延時(shí)子程序============</p><p> DELAY: MOV R5
18、,#2 ;R5寄存器加載2次</p><p> D0: MOV R7,#250 ;R7寄存器加載250次數(shù)</p><p> D1: MOV R6,#250 ;R6寄存器加載250次數(shù)</p><p> D2: DJNZ R6
19、,D2 ;D2循環(huán)執(zhí)行R6次</p><p> DJNZ R7,D1 ;D1循環(huán)執(zhí)行R7次</p><p> DJNZ R5,D0 ;D0循環(huán)執(zhí)行R5次</p><p> RET 返回主程序</p
20、><p> TAB: ;流水燈花樣可以任意編寫</p><p> DB 10010101B</p><p> DB 01101010B</p><p> DB 10100101B</p><p> DB
21、 01010101B</p><p> DB 10001010B</p><p> DB 01101000B</p><p> DB 10110101B</p><p> DB 01000010B</p><p> DB 100000
22、00B</p><p> DB 01000000B</p><p> DB 00100000B</p><p> DB 00010000B</p><p> DB 00001000B</p><p> DB 00000100B</p&
23、gt;<p> DB 00000010B</p><p> DB 00000001B</p><p> DB 00000000B</p><p> DB 11111111B</p><p> DB 11111111B</p><p
24、> DB 11111111B</p><p> DB 11111111B</p><p> DB 11111111B </p><p> DB 00000001B</p><p> DB 00000010B</p><p> D
25、B 00000100B</p><p> DB 00001000B</p><p> DB 00010000B</p><p> DB 00100000B</p><p> DB 01000000B</p><p> DB 1
26、0000000B </p><p> DB 11011101B</p><p> DB 11101011B</p><p> DB 11101101B</p><p> DB 11101011B</p><p> DB 11011011B&
27、lt;/p><p> DB 10111111B</p><p> DB 01111011B</p><p> DB 10111011B</p><p> DB 11011111B</p><p> DB 11101011B</p>
28、<p> DB 10110101B</p><p> DB 11011011B</p><p> DB 01101101B</p><p> DB 0FFH</p><p> END ;主程
29、序結(jié)束</p><p><b> 五、總結(jié)與心得體會(huì)</b></p><p> 經(jīng)過兩個(gè)星期的努力,終于完成了此次單片機(jī)課程設(shè)計(jì)。這次的課程設(shè)計(jì)完成的比較困難,由于前期的學(xué)習(xí)時(shí),尚未戴眼鏡,所以老師說的基本都沒聽懂,再加上學(xué)的不是很扎實(shí),導(dǎo)致這次的困難重重。開始的電路焊接就是一頭霧水不知道從哪兒下手,但是在認(rèn)真聽完老師上的理論課后,經(jīng)過一段時(shí)間的醞釀,才有了一點(diǎn)頭
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 單片機(jī)課程設(shè)計(jì)---流水燈
- 單片機(jī)課程設(shè)計(jì)報(bào)告-- 流水燈
- 單片機(jī)課程設(shè)計(jì)---led流水燈
- 單片機(jī)課程設(shè)計(jì)--廣告流水燈設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)報(bào)告--音樂流水燈
- 單片機(jī)課程設(shè)計(jì)--花樣流水燈設(shè)計(jì)
- 可控流水燈單片機(jī)課程設(shè)計(jì)報(bào)告
- 單片機(jī)課程設(shè)計(jì)led流水燈設(shè)計(jì)報(bào)告
- 課程設(shè)計(jì)-- 基于單片機(jī)的雙向流水燈
- 課程設(shè)計(jì)-- 基于單片機(jī)的雙向流水燈
- 課程設(shè)計(jì)-基于單片機(jī)的led流水燈設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)--基于單片機(jī)的led流水燈系統(tǒng)設(shè)計(jì)
- 單片機(jī)原理與應(yīng)用課程設(shè)計(jì)---流水燈的設(shè)計(jì)
- 課程設(shè)計(jì)-- 基于單片機(jī)的雙向流水燈.doc
- 課程設(shè)計(jì)(論文)基于單片機(jī)的心形流水燈設(shè)計(jì)
- 基于單片機(jī)的流水燈設(shè)計(jì)
- 單片機(jī)實(shí)驗(yàn)流水燈報(bào)告
- 信息與通信學(xué)院課程設(shè)計(jì)--- 基于51單片機(jī)的流水燈
- 凌陽單片機(jī)流水燈
- 基于單片機(jī)的音樂流水燈
評(píng)論
0/150
提交評(píng)論