




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、目錄第一章 課程設計目的. 2第二章 設計原理與分析. 2第三章 所選原件清單. 6第四章 課程設計程序7第五章 課程設計心得14 第六章 參考文獻. 14第一章 課程設計目的 1. 掌握stc89c52編程原理。a.掌握stc89c52可編程并行接口的工作原理及初始化方法,驗證各種工作方式的功能。b.掌握用stc89c52擴展PC機并行接口的方式。c.了解stc89c52工作在方式1時,利用應答信號控制數據傳輸的過程。2.了解鍵盤電路的工作原理。 矩陣鍵盤又稱為行列式鍵盤,它是用4條I/O線作為行線,4條I/O線作為列線組成的鍵盤。在行線和列線的每一個交叉點上,設置一個按鍵。這樣鍵盤中按鍵的
2、個數是4×4個。這種行列式鍵盤結構能夠有效地提高單片機系統(tǒng)中I/O口的利用率。3.掌握鍵盤接口電路的編程方法。 設計人機界面接口,要求在微機屏幕上動態(tài)地顯示當前實驗的內容和實驗的結果,包括stc89c52的工作方式,輸入的數據和輸出的結果 設計人機界面接口,要求在微機屏幕上,以菜單方式列出并行接口stc89c52原理實驗的內容,并根據實驗內容設置好工作方式選擇跳線開關,用戶可以通過鍵盤選擇實驗的內容。第二章 設計原理與分析2.1、實驗原理: 為了實現LED顯示器的數字顯示,可以采用靜態(tài)顯示法和動態(tài)顯示法。由于靜態(tài)顯示法需要數據鎖存器等硬件,接口要復雜些,又考慮到時鐘顯示只有6位,且系
3、統(tǒng)沒有其他復雜的處理任務,所以決定采用動態(tài)掃描法實現LED的顯示。 單片機采用易購的AT89S52系列,這種單片機具有足夠的空余硬件資源,可以實現其他的擴充功能。如果考慮使用電池供電,則可采用LV系列單片機。時鐘計時器電路系統(tǒng)的總體設計框圖如下所示stc89S52 P0單片機控制器 P2 P26位LED顯示器4*4鍵盤 列驅動蜂鳴器2.2、實驗電路:硬件設計時鐘計時器的硬件電路如圖所示。該電路采用AT89S52單片機最小化應用實際;采用共陽7段LED顯示器;P0口輸出段碼數據;P2.0P2.5口作列掃描輸出;P1.0、P1.1、P1.2、和P1.3口接4個按鍵開關,用于調時及功能設置;P1.7
4、端口接5v的小蜂鳴器,用于按鍵發(fā)音及定時提醒、整點到時提醒等;為了提供共陽LED數碼管的列掃描驅動電壓,用三極管9012做電源驅動輸出;采用12MHZ晶振,可提高秒計時的精確性。 圖3-1實驗電路圖軟件設計主程序本設計中計時采用定時器T0中斷完成,秒表使用定時器T1中斷完成。主程序循環(huán)調用顯示子程序和查鍵子程序,當端口有開關按下時,轉入相應功能程序。其主程序執(zhí)行流程如下圖顯示子程序時間顯示子程序每次顯示6個連續(xù)內存單元的十進制BCD碼數據,首地址在調用顯示程序時現指定。定時器T0中斷服務程序定時器T0用于時間計時。定時溢出中斷周期設為50ms,中斷進入后先進行定時中斷初值校正,當中斷里累計20
5、次時,對秒計數單元進行加1操作。時鐘計數單元地址分別在70H71H、76H77H、78H79H中,最大計時值為23時59分59秒。7AH單元內存放“熄滅符“數據(#0A),用于時間調整時的閃爍功能。在計數單元中,采用十進制BCD碼計數,滿10進位。流程圖如下 第三章 所選元件清單元件數量共陽四位數碼管最小型2S8550三極管81K電阻8150851最小系統(tǒng)1第四章 課程設計程序附 錄A;源程序#include<reg52.h>#define uchar unsigned char#define uint unsigned int#define RELOAD_H ( 65536-50
6、000)/256; #define RELOAD_L ( 65536-50000)%256;uchar thour,bhour,tmin,bmin,ts,bs,i,key;uint cntnum,cntflag,cnt1s,cnt1min,cnthour;bit flag1ms,flag2ms;uchar code disbuf= 0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xbf,0xff;uchar code discs= 0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f ;unsigned char
7、DisCode = 0x0b,0x0b,0x0a,0x0b,0x0b,0x0a,0x0b,0x0b;void timer0init() TMOD=0X01; TL0=RELOAD_L; TH0=RELOAD_H; EA=1; ET0=1; TR0=1; void timer()if(cnt1s=60) cnt1s=0; cnt1min+; if(cnt1min=60) cnt1min=0; cnthour+;if(cnthour=24) cnthour=0; void timer0isr() interrupt 1 TL0=RELOAD_L;TH0=RELOAD_H;cntnum+; /fla
8、g1ms=1; if(cntnum=2);flag2ms=1;if(cntnum=20) cntnum=0;cnt1s+; void main() i=0; cntnum=0;cnt1s=0; cnt1min=0;cnthour=0xc; timer0init(); while(1) timer();thour=cnthour/10; bhour=cnthour%10; tmin=cnt1min/10; bmin=cnt1min%10; ts=cnt1s/10; bs=cnt1s%10;DisCode0=thour; DisCode1=bhour;DisCode2=0x0a;DisCode3=
9、tmin;DisCode4=bmin;DisCode5=0x0a;DisCode6=ts; DisCode7=bs;P2=0xff; P0=0xff; /while(flag1ms=1) /flag1ms=0;if(i=8) ;i=0;P2=discsi; P0=disbufDisCodei; i+;/ while(flag2ms=1) flag2ms=0; P1=0xfe; key=P1; key=key&0xf0; key=P1; switch(key) case 0xee:cnt1min-;if(cnt1min=-1) cnt1min=59; break; case 0xde:c
10、nt1min+; break; case 0xbe:cnthour-; if(cnthour=-1) cnthour=23; break; case 0x7e: cnthour+; break; 附 錄B;作品實物圖片 第五章 課程設計心得 在此次設計中,我們得到以下體會:一、 在這次時鐘計時器設計的過程讓我進一步熟悉KEIL及Proteus的使用。 二、重新復習并進一步學習了單片機,明確了研究目標。 三、在后的設計中,既要想到電路器件的聯合使用,又要靈活變通,舉一反三。四、在焊接方面,我們了解到焊接某些器件時,要先消去電烙鐵上的靜電,防止靜電對芯片特別是放大器件造成傷害,焊接二極管、三極管等芯片時要快,防止持續(xù)高溫損壞芯片。我們在焊接時爭取一次性焊接成功,當焊接好時再去檢查時非常困難,所以要非常的仔細。第六章 參考文獻1 李泉溪單
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 逃學保證協(xié)議書
- 租大客車協(xié)議書
- 墊付培訓叉車證協(xié)議書
- 租賃公司協(xié)議書
- 肥料采購協(xié)議書
- 站點合租協(xié)議書
- 糧食代賣協(xié)議書
- 美體項目協(xié)議書
- 資料代做協(xié)議書
- 崇川區(qū)股權架構協(xié)議書
- 樂理考試題及答案2024
- 2025年春滬科版七年級數學下冊 第9章 分式 小結與復習
- 養(yǎng)老機構人力資源管理課件
- 污水處理廠排水管道施工流程
- 《斷魂槍》老舍課件
- 胖東來考察報告
- 中考數學總復習第四章第20課時解直角三角形課件
- 低空經濟產業(yè)園商業(yè)計劃書
- 2025中國鐵路濟南局集團招聘生60人高頻重點提升(共500題)附帶答案詳解
- 2024-2030年中國內河碼頭產業(yè)前景預測規(guī)劃研究報告
- 2025年上海市各區(qū)高三語文一模試題匯編之文言文二閱讀(含答案)
評論
0/150
提交評論