版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
PAGE2PAGE2山東英才學(xué)院本科實(shí)訓(xùn)報(bào)告計(jì)算機(jī)學(xué)院實(shí)訓(xùn)報(bào)告題目:基于AT89C51單片機(jī)的電子秒表的設(shè)計(jì)與制作專業(yè):計(jì)算機(jī)科學(xué)與技術(shù)班級:姓名:學(xué)號(hào):組長:目錄1單片機(jī)版圖及模塊簡介 21.1LED點(diǎn)陣屏(8*8點(diǎn)陣) 21.2單片機(jī)以及LED數(shù)碼管顯示 31.3EEPROM模塊時(shí)鐘模塊 41.4串口通信 41.5電源模塊 51.6下載線接口、蜂鳴器、按鍵模塊 52本項(xiàng)目組的設(shè)計(jì) 62.1實(shí)驗(yàn)項(xiàng)目及要求 62.1.1項(xiàng)目原理及完成的功能 62.1.2模塊框圖 72.2電路圖的繪制 92.1.2元件的選取及元件功能簡介 92.2.2proteus電路圖及連線原因 112.3程序的編寫 122.3.1程序框圖(流程) 122.3.2keilc的使用步驟 133印刷板的焊接及流程 164調(diào)試及遭遇的問題解決方法 165總結(jié)體會(huì) 176附錄 176.1程序代碼 17內(nèi)容提要:本次實(shí)訓(xùn)通過電子秒表的設(shè)計(jì)與制作,學(xué)到了單片機(jī)最小系統(tǒng)的概念與設(shè)計(jì),對單片機(jī)中斷、定時(shí)等功能模塊有了進(jìn)一步的了解,并利用這個(gè)實(shí)力對單片機(jī)的編程方法有了一定程度的深入了解,并對51單片機(jī)有了深入的了解。關(guān)鍵字:單片機(jī)、定時(shí)、中斷、數(shù)碼管顯示單片機(jī)版圖及模塊簡介1.1LED點(diǎn)陣屏(8*8點(diǎn)陣)LED顯示屏是由LED發(fā)光二極管以點(diǎn)陣的形式組合而成的。以64個(gè)發(fā)光二極管排成8*8的矩陣形式,由于具有多個(gè)LED而只適用于動(dòng)態(tài)掃描方式,相當(dāng)于行列都是公共端,無共陰或共陽。 1.2單片機(jī)以及LED數(shù)碼管顯示89c51是一個(gè)40引腳的芯片,其中繼承了運(yùn)算器、控制器、存儲(chǔ)器,是一個(gè)高度集成的芯片,可將編寫編譯后的程序下載到芯片中去,實(shí)現(xiàn)某一功能。n個(gè)LED數(shù)碼管可以構(gòu)成n位LED顯示器,有n根位選線(即公共端)和8n跟段選線。LED顯示器有靜態(tài)顯示和動(dòng)態(tài)顯示兩種方式。該系統(tǒng)中采用8位的動(dòng)態(tài)數(shù)碼顯示,控制數(shù)碼顯示的數(shù)據(jù)由兩部分組成,一部分為筆段亮滅控制的信號(hào)輸入由“ABCDEFGH”端口輸入,而控制位顯示的控制信號(hào)由“S1S2S3S4S5S6S7S8”端口輸入,同時(shí)該動(dòng)態(tài)數(shù)碼顯示采用共陽數(shù)碼管;具體的電路原理圖如圖所示1.3EEPROM模塊時(shí)鐘模塊EEPROM是可擦可寫存儲(chǔ)器,可以對時(shí)鐘模塊的數(shù)據(jù)修改。時(shí)鐘模塊采用的是DS1302芯片,內(nèi)含一個(gè)實(shí)時(shí)時(shí)鐘/日歷邏輯,通過簡單的串行接口與單片機(jī)進(jìn)行通信,具有能計(jì)算2100年之前的秒、分、時(shí)、日、日期、星期、月和年的能力,還有閏年調(diào)整的能力,按秒刷新1.4串口通信在PC機(jī)內(nèi)接有EIA-TTL的電平轉(zhuǎn)換和RS-232C連接器,稱為COM口。由于單片機(jī)的串行發(fā)送線TXD和接收線RXD是TTL電平,而PC機(jī)的COM1和COM2等的RS-232C連接器是EIA電平,因此單片機(jī)需要加接MAX232芯片,通過串行電纜線和PC機(jī)相連。1.5電源模塊電源模塊為系統(tǒng)板上其它模塊提供+5V電源,電源輸入有兩種方式,一種為交直流電源從電源插座輸入,輸入的電壓要求,直流輸入應(yīng)大于7.5V,交流輸入應(yīng)大于5V,通過7805三端穩(wěn)壓器得到5V的直流電源供給系統(tǒng)其它模塊工作,另一種為從USB接口獲?。?V電源,只要用相應(yīng)配套的USB線從電腦主機(jī)獲?。?V直流電源,在電源模塊中加有保護(hù)電路,即電路中有短路,不會(huì)對7805三端穩(wěn)壓器及電腦主機(jī)電源有損害!1.6下載線接口、蜂鳴器、按鍵模塊該模塊完成源程序代碼下載到AT89S51或者是AT89S52芯片中,它需要和微機(jī)上的ISP下載器軟件配合使用來完成這樣的功能。具體的電路原理圖如圖所示:聲音的頻譜范圍約在幾十到幾千赫茲,若能利用程序來控制單片機(jī)某個(gè)口線的“高”電平或低電平,則在該口線上就能產(chǎn)生一定頻率的矩形波,接上喇叭就能發(fā)出一定頻率的聲音,若再利用延時(shí)程序控制“高”“低”電平的持續(xù)時(shí)間,就能改變輸出頻率,從而改變音調(diào),使喇叭發(fā)出不同的聲音。如圖開關(guān)控制信號(hào)由“K0K1K2K3”端口輸出,具體的電路原理圖如圖所示2本項(xiàng)目組的設(shè)計(jì)2.1實(shí)驗(yàn)項(xiàng)目及要求2.1.1項(xiàng)目原理及完成的功能系統(tǒng)功能分析:此次實(shí)訓(xùn)設(shè)計(jì)的電子秒表可以實(shí)現(xiàn)以下功能:用開關(guān)K0實(shí)現(xiàn)秒表的啟動(dòng),用開關(guān)K1實(shí)現(xiàn)秒表的數(shù)據(jù)保存,用開關(guān)K2實(shí)現(xiàn)秒表的數(shù)據(jù)的翻頁查看,用開關(guān)K3實(shí)現(xiàn)秒表的停止;將數(shù)據(jù)顯示在數(shù)碼管上,供使用者數(shù)取。2.系統(tǒng)分析與設(shè)計(jì)上述功能只要涉及到單片機(jī)定時(shí)器、鍵盤和LED的使用方法.此設(shè)計(jì)采用AT89C51單片機(jī)為核心控制元件,結(jié)合數(shù)碼管、三極管、發(fā)光二極管等器件構(gòu)成一個(gè)顯示值達(dá)99.99的電子秒表。利用了單片機(jī)的延時(shí)電路、按鍵復(fù)位電路、定時(shí)中斷等電路,實(shí)現(xiàn)了電子秒表的啟動(dòng)、保存、翻頁查看、停止的功能和數(shù)碼管的動(dòng)態(tài)顯示的功能。2.1.2模塊框圖本次實(shí)訓(xùn)電子秒表所使用到的模塊按鍵模塊K0:start啟動(dòng),K1:save保存數(shù)據(jù),K2:look查看數(shù)據(jù),K3:stop停止;將四個(gè)按鍵與P1.0、P1.1、P1.2和P1.3想接。通過掃描按鍵,讀取按鍵實(shí)現(xiàn)四個(gè)功能的控制。2.AT89C51單片機(jī)與數(shù)碼管的顯示模塊該部分由兩個(gè)四段的共陽極LED數(shù)碼管組成,用來顯示秒表的秒值,數(shù)碼管的使能端接到P2.4、P2.5、P2.6和P2.7上,其余8個(gè)引腳分別單片機(jī)P1口相連,根據(jù)單片機(jī)引腳與數(shù)碼管的連接關(guān)系,可以列出顯示不同數(shù)字的段選碼。從而準(zhǔn)確的輸出秒表的正確秒值和保存的數(shù)據(jù)秒值。3.時(shí)鐘模塊單片機(jī)必須在時(shí)鐘的驅(qū)動(dòng)下才能工作.在單片機(jī)內(nèi)部有一個(gè)時(shí)鐘振蕩電路,只需要外接一個(gè)振蕩源就能產(chǎn)生一定的時(shí)鐘信號(hào)送到單片機(jī)內(nèi)部的各個(gè)單元,外接晶體以及電容C1和C2構(gòu)成并聯(lián)諧振電路接在放大器的反饋回路中,決定單片機(jī)的工作速度。一般選用石英晶體振蕩器。此電路在加電大約延遲10ms后振蕩器起振,在XTAL2引腳產(chǎn)生幅度為3V左右的正弦波時(shí)鐘信號(hào),其振蕩頻率主要由石英晶振的頻率確定。電路中兩個(gè)電容C1,C2的作用有兩個(gè):一是幫助振蕩器起振;二是對振蕩器的頻率進(jìn)行微調(diào)。電容的大小會(huì)影響振蕩器頻率的高低、振蕩器的穩(wěn)定性、起振的快速性和溫度的穩(wěn)定性,晶體頻率可在1.2MHz~12MHz之間任選,電容C1和C2的典型值在20pF~100pF之間選擇。C1,C2的典型值為30PF。4.復(fù)位模塊89S52的復(fù)位輸入引腳RST為89S52提供了初始化的手段,可以使程序從指定處開始執(zhí)行,在89S52的時(shí)鐘電路工作后,只要RST引腳上出現(xiàn)超過兩個(gè)機(jī)器周期以上的高電平時(shí),即可產(chǎn)生復(fù)位的操作。只要RST保持高電平,則單片機(jī)循環(huán)復(fù)位。只有當(dāng)RST由高電平變低電平以后,89S52才從0000H地址開始執(zhí)行程序。本系統(tǒng)采用按鍵復(fù)位方式的復(fù)位電路。如圖2.2電路圖的繪制2.1.2元件的選取及元件功能簡介AT89C51(如下圖)89c51是一個(gè)40引腳的芯片,其中繼承了運(yùn)算器、控制器、存儲(chǔ)器,是一個(gè)高度集成的芯片,可將編寫編譯后的程序下載到芯片中去,實(shí)現(xiàn)某一功能。LED數(shù)碼管(如下圖)LED數(shù)碼管采用的是有發(fā)光二極管按一定的結(jié)構(gòu)組合起來的顯示器件。本次實(shí)訓(xùn)采用的是共陽極的方式。A—G因腳輸入不同的二進(jìn)制編碼可顯示不同的數(shù)字。而且本次實(shí)訓(xùn)采用的是軟件破譯方式,通過譯碼程序來得到要顯示的數(shù)字的字段碼。三極管(如下圖)三極管在此與P2.4P2.7相連,起到位選的作用。排阻(如下圖)
2.2.2proteus電路圖及連線原因電子秒表的電路圖
如圖:P0.0——P0.7作為數(shù)碼管顯示的輸入信號(hào),作為數(shù)碼管A——G以及DP的輸入端,通過軟件破譯的方式并根據(jù)共陽極的數(shù)碼管成功顯示數(shù)字,同時(shí)破譯的數(shù)字為UcharcodeBCD_7[11]={0x02,0x9e,0xa0,0x88,0x1c,0x48,0x40,0x9a,0x00,0x08,0xff};//0,1,2,3,4,5,6,7,8,9,滅P2.4——P2.7作為位選信號(hào),與數(shù)碼管的1,2,3,4相連,同事結(jié)合三極管的驅(qū)動(dòng)完成數(shù)碼管的位選。P1.0——P1.3與K0,K1,K2,K3四個(gè)開關(guān)相連,同時(shí)結(jié)合程序的鍵盤掃描功能實(shí)現(xiàn)開關(guān)的控制功能。P1口可以實(shí)現(xiàn)I/O輸入輸出。2.3程序的編寫2.3.1程序框圖(流程)開始開始定時(shí)器計(jì)數(shù)器2初始化顯示緩沖區(qū)初始化開中斷鍵盤掃描是否有鍵盤輸入?鍵號(hào)送k判斷是否為start鍵判斷是否為stop鍵判斷是否為look鍵判斷是否為save鍵定時(shí)計(jì)數(shù)器2中斷停止計(jì)時(shí)將數(shù)據(jù)保存停止后查看數(shù)據(jù)顯示顯示YYYYNYNNNN2.3.2keilc的使用步驟打開桌面上的Keil軟件:(1)新建項(xiàng)目文件。點(diǎn)擊Project菜單,選擇彈出的下拉式菜單中的NewProject。在“文件名”中輸入您的第一個(gè)C程序項(xiàng)目名稱,“*****.uv2”?!氨4妗焙蟮奈募U(kuò)展名為uv2,這是KEILuVision2項(xiàng)目文件擴(kuò)展名2)選擇所要的單片機(jī),常用Ateml公司的AT89C51。3)在項(xiàng)目中創(chuàng)建新的程序文件。點(diǎn)擊新建文件的快捷按鈕,出現(xiàn)一個(gè)新的文字編輯窗口,這個(gè)操作也可以通過菜單File-New或快捷鍵Ctrl+N來實(shí)現(xiàn)。好了,現(xiàn)在可以編寫程序了。4)點(diǎn)擊保存新建的程序,*****.c,保存在項(xiàng)目所在的目錄中,這時(shí)會(huì)發(fā)現(xiàn)程序單詞有了不同的顏色,說明KEIL的C語法檢查生效了。5)將程序文件加到項(xiàng)目中。在屏幕左邊的SourceGroup1文件夾圖標(biāo)上右擊彈出菜單,在這里可以做在項(xiàng)目中增加減少文件等操作。選“AddFiletoGroup‘SourceGroup1’”彈出文件窗口,選擇剛剛保存的文件,按ADD按鈕,關(guān)閉文件窗,程序文件加到項(xiàng)目中。這時(shí)在SourceGroup1文件夾圖標(biāo)左邊出現(xiàn)了一個(gè)小+6)設(shè)定創(chuàng)建HEX文件選項(xiàng)。上一步建立了單片機(jī)C語言項(xiàng)目,但為了讓編譯好的程序能通過編程器寫入51芯片中,要先用編譯器生成HEX文件。HEX文件格式是Intel公司提出的按地址排列的數(shù)據(jù)信息,數(shù)據(jù)寬度為字節(jié),所有數(shù)據(jù)使用16進(jìn)制數(shù)字表示,常用來保存單片機(jī)或其他處理器的目標(biāo)程序代碼。它保存物理程序存儲(chǔ)區(qū)中的目標(biāo)代碼映象。一般的編程器都支持這種格式。我們先來打開項(xiàng)目,打開它的所在目錄,找到****.Uv2的文件就可以打開先前的項(xiàng)目了。然后右擊項(xiàng)目文件夾,彈出項(xiàng)目功能菜單,選OptionsforTarget’Target1’,彈出項(xiàng)目選項(xiàng)設(shè)置窗口,同樣先選中項(xiàng)目文件夾圖標(biāo),這時(shí)在Project菜單中也有一樣的菜單可選。打開項(xiàng)目選項(xiàng)窗口,轉(zhuǎn)到Output選項(xiàng)頁。設(shè)定:1選擇編譯輸出的路徑,2編譯輸出生成的文件名,3決定是否要?jiǎng)?chuàng)建HEX文件,選中3就可以輸出HEX文件到指定的路徑中。7)編譯運(yùn)行。8)查錯(cuò)并直至無錯(cuò)誤。3印刷板的焊接及流程在老師的指導(dǎo)下,首先按照老師發(fā)給每個(gè)人的實(shí)驗(yàn)指導(dǎo)熟悉這次實(shí)訓(xùn)的器件以及各個(gè)應(yīng)用軟件及硬件設(shè)施。按照各個(gè)元器件的擺放位置和擺放標(biāo)準(zhǔn),將印刷版的各個(gè)位置弄清楚之后,將元器件一一焊接好,并檢查是否正確焊接。流程:熟悉印刷版的各個(gè)方面的情況,將元器件的情況了解,首先焊接印刷版,然后全部焊接完后,將測試程序下載到芯片上測試印刷版時(shí)候有問題,有問題再重新檢查直到?jīng)]有問題了。 然后制作USB下載板,先進(jìn)行焊接然后再測試。將印刷版和USB下載板連接起來。然后就是將編寫的程序下載到實(shí)驗(yàn)板上就行調(diào)試了。4調(diào)試及遭遇的問題解決方法將我們項(xiàng)目組所編寫的電子秒表的程序下載到芯片中,調(diào)試程序。遇到的問題就是數(shù)碼管不能正確的顯示。沒有正確編寫數(shù)碼管的顯示程序,將小數(shù)點(diǎn)的顯示位置改正,同時(shí)實(shí)驗(yàn)板的數(shù)碼管采用的是共陽的數(shù)碼管顯示,因?yàn)?亮1不亮,必須嚴(yán)格按照這個(gè)來編寫程序。最后我們終于克服了這個(gè)困難,讓數(shù)碼管的后四個(gè)顯示00.00—99.99,完成了實(shí)訓(xùn)的項(xiàng)目。反復(fù)進(jìn)行測試,對四個(gè)按鍵分別進(jìn)行測試,檢查是否完成預(yù)定的四個(gè)功能:啟動(dòng)、保存數(shù)據(jù)、查看數(shù)據(jù)、停止。是否實(shí)現(xiàn)了定時(shí)/計(jì)數(shù)器中斷。5總結(jié)體會(huì)通過這個(gè)為期三個(gè)周的單片機(jī)實(shí)訓(xùn)使我對AT89C51單片機(jī)有了更一層深入的了解,同時(shí)加強(qiáng)了動(dòng)手實(shí)踐能力。了解了印刷版的組成及各個(gè)器件的知識(shí)。在這次實(shí)訓(xùn)中雖然也遇到了各種困難,但是一個(gè)組的人員一起克服了,大家一起才能完成項(xiàng)目,同時(shí)結(jié)合實(shí)踐進(jìn)一步鞏固了課本上的理論知識(shí),將學(xué)習(xí)的理論基礎(chǔ)知識(shí)又加深了一遍,同時(shí)認(rèn)識(shí)到我們所學(xué)的知識(shí)還是遠(yuǎn)遠(yuǎn)不夠的,我們需要不斷學(xué)習(xí)提升自己的能力,不僅僅是動(dòng)手能力,還有編程能力和考慮問題的全面性方面。6附錄6.1程序代碼#include"reg52.h"#defineucharunsignedchar#defineuintunsignedint//unsignedcharkey_times;#definestart0xfe#definesave0xfd#definelook0xfb#definestop0xf7uinttimes_10ms;idatauints[12];uchars_ptr;uchard[4];voiddelay(){uchari,j;for(i=0;i<10;i++)for(j=0;j<50;j++);}voiddisplay(uintt){uchari;ucharcodeBCD_7[11]={0x02,0x9e,0xa0,0x88,//0,1,2,30x1c,0x48,0x40,0x9a,0x00,0x08,0xff};for(;t>0;t--){for(i=0;i<4;i++){P0=BCD_7[d[i]];if(i!=2)P0|=0x01;P2|=0x80>>i;delay();P2&=0x00;}}}ucharRead_key(){uchark;P1=0xff;k=P1;if(k==0xff)return0xff;else{delay();k=P1;if(k==0xff)return0xff;elsereturnk;}}main(){uchari,k;uinttem;ucharrun_sign;TH2=RCAP2H=(65536-10000)/256;TL2=RCAP2L=(65536-10000)%256;EA=1;ET2=1;EX0=0;times_10ms=0;s_ptr=0;for(i=0;i<12;i++)s[i]=0;for(i=0;i<4;i++)d[i]=0;while
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 土建工程合同范本3
- 2025【合同范本】租賃轉(zhuǎn)讓合同書
- 2025茶葉購銷合同書樣本寫
- 2025合同模板產(chǎn)品代理授權(quán)合同范本
- 2025供方采購合同協(xié)議書
- 2025合同模板貨車租賃合同范本
- 快餐加盟合同格式
- 2025年個(gè)人農(nóng)田租賃合同格式版(2篇)
- 毛絨玩具采購銷售合同
- 2025年專職教師聘合同模板(2篇)
- 游戲綜合YY頻道設(shè)計(jì)模板
- 高中數(shù)學(xué)知識(shí)點(diǎn)全總結(jié)(電子版)
- 小學(xué)科學(xué)項(xiàng)目化作業(yè)的設(shè)計(jì)與實(shí)施研究
- 2020年中考生物試卷及答案
- GB/T 10322.7-2004鐵礦石粒度分布的篩分測定
- 2023新譯林版新教材高中英語必修一重點(diǎn)詞組歸納總結(jié)
- 蘇教版四年級數(shù)學(xué)下冊第3單元第2課時(shí)“常見的數(shù)量關(guān)系”教案
- 弘揚(yáng)中華傳統(tǒng)文化課件
- 基于協(xié)同過濾算法的電影推薦系統(tǒng)設(shè)計(jì)
- 消防應(yīng)急預(yù)案流程圖
- 《數(shù)據(jù)科學(xué)與大數(shù)據(jù)技術(shù)導(dǎo)論》完整版課件(全)
評論
0/150
提交評論