單片機(jī)電子萬(wàn)歷課程方案_第1頁(yè)
單片機(jī)電子萬(wàn)歷課程方案_第2頁(yè)
單片機(jī)電子萬(wàn)歷課程方案_第3頁(yè)
單片機(jī)電子萬(wàn)歷課程方案_第4頁(yè)
單片機(jī)電子萬(wàn)歷課程方案_第5頁(yè)
已閱讀5頁(yè),還剩10頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、單片機(jī)課程設(shè)計(jì)姓名:學(xué)號(hào):專業(yè)班級(jí):機(jī)電四班一、單片機(jī)原理及應(yīng)用簡(jiǎn)介隨著國(guó)內(nèi)超大規(guī)模集成電路的出現(xiàn),微處理器及其外圍芯片有了迅速的發(fā)展。集成技術(shù)的最新發(fā)展之一是將CPU和外圍芯片,如程序存儲(chǔ)器、數(shù)據(jù)存儲(chǔ)器、并行、串行I/O口、定時(shí)/計(jì)數(shù)器、中斷控制器及其他控制部件集成在一個(gè)芯片之中,制成單片計(jì)算機(jī)Single-ChipMicrocomputer)。而近年來(lái)推出的一些高檔單片機(jī)還包括有許多特殊功能單元,如A/D、D/A轉(zhuǎn)換器、調(diào)制解調(diào)器、通信控制器、鎖相環(huán)、DMA、浮點(diǎn)運(yùn)算單元等。因此,只要外加一些擴(kuò)展電路及必要的通道接口就可以構(gòu)成各種計(jì)算機(jī)應(yīng)用系統(tǒng),如工業(yè)控制系統(tǒng)、數(shù)據(jù)采集系統(tǒng)、自動(dòng)測(cè)試系統(tǒng)、

2、萬(wàn)年歷電子表等。二、系統(tǒng)硬件設(shè)計(jì)8052是標(biāo)準(zhǔn)的40引腳雙列直插式集成電路芯片,引腳分布請(qǐng)參照-單片機(jī)引腳圖圖1:Pl.0Fl*1Fl-2Fl.3Pl.4Pl”5P0.0P0.7P0:i;SET012345GP1.0P17戶TXD/P3.P2.0P2_.7P2IMT1/F3.P3.0P3.7P2T1ZF3.8052,V|孑8052:nXTAL?XTAL1P2.0VCCGND接地P0口:匚匚匚匚匚匚匚匚匚匚匚匚匚匚匚匚匚匚匚匚pt口為一個(gè)nnnmnnnnnnnnnDnnnnr433333333332222222228VccFO.O/ADOFO.1/A口1PO.2/AD2PO.3/AD3FO”4/

3、AD4:-.號(hào)端子)FO.T/ADKea/vpd.b二3上號(hào)端子)FN+r/ADl5一號(hào)端仁P2.4/AD12P2,3/AD11F2.2/AD1OF2.1/AD級(jí)開(kāi)路雙南i/o口每腳可吸收8TTL門(mén)電流。當(dāng)P1口的管腳第一次寫(xiě)1時(shí),被定義為咼阻輸入。P0能夠用于外部程序數(shù)據(jù)存儲(chǔ)器,它可以被定義為數(shù)據(jù)/地址的第八位。在FIASH編程時(shí),P0口作為原碼輸入口,當(dāng)FIASH進(jìn)行校驗(yàn)時(shí),P0輸出原碼,此時(shí)P0外部必須被拉咼。P1口:P1口是一個(gè)內(nèi)部提供上拉電阻的8位雙向I/O口,P1口緩沖器能接收輸出4TTL門(mén)電流。P1口管腳寫(xiě)入1后,被內(nèi)部上拉為高,可用作輸入,P1口被外部下拉為低電平時(shí),將輸出電流

4、,這是因?yàn)閮?nèi)部上拉的緣故。在FLASH編程和校驗(yàn)時(shí),P1口作為第八位地址接收。P2口:P2口為一個(gè)內(nèi)部上拉電阻的8位雙向I/O口,P2口緩沖器可接收,輸出4個(gè)TTL門(mén)電流,當(dāng)P2口被寫(xiě)“T時(shí),其管腳被內(nèi)部上拉電阻拉高,且作為輸入。并因此作為輸入時(shí),P2口的管腳被外部拉低,將輸出電流。這是因?yàn)閮?nèi)部上拉的緣故。P2口當(dāng)用于外部程序存儲(chǔ)器或16位地址外部數(shù)據(jù)存儲(chǔ)器進(jìn)行存取時(shí),P2口輸出地址的高八位。在給出地址“T時(shí),它利用內(nèi)部上拉優(yōu)勢(shì),當(dāng)對(duì)外部八位地址數(shù)據(jù)存儲(chǔ)器進(jìn)行讀寫(xiě)時(shí),P2口輸出其特殊功能寄存器的內(nèi)容。P2口在FLASH編程和校驗(yàn)時(shí)接收高八位地址信號(hào)和控制信號(hào)。P3口:P3口管腳是8個(gè)帶內(nèi)部上拉

5、電阻的雙向I/O口,可接收輸出4個(gè)TTL門(mén)電流。當(dāng)P3口寫(xiě)入“1”后,它們被內(nèi)部上拉為高電平,并用作輸入。作為輸入,因?yàn)橥獠肯吕瓰榈碗娖?,P3口將輸出電流vILL)這是因?yàn)樯侠木壒省3口也可作為AT89C5啲一些特殊功能口,如表1所示:口管腳備選功能P3.0RXD串行輸入口P3.1TXD串行輸出口P3.2/INTO外部中斷0P3.3/INT1外部中斷1P3.4TO記時(shí)器0外部輸入P3.5T1記時(shí)器1外部輸入P3.6/WR外部數(shù)據(jù)存儲(chǔ)器寫(xiě)選通P3.7/RD外部數(shù)據(jù)存儲(chǔ)器讀選通表1特殊功能口P3口同時(shí)為閃爍編程和編程校驗(yàn)接收一些控制信號(hào)。RST復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時(shí),要保持RST腳兩個(gè)機(jī)

6、器周期的高電平時(shí)間。ALE/PROG當(dāng)訪問(wèn)外部存儲(chǔ)器時(shí),地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。一般情況下,ALE端以不變的頻率周期輸出正脈沖信號(hào),此頻率為振蕩器頻率的1/6。因此它可用作對(duì)外部輸出的脈沖或用于定時(shí)目的。然而要注意的是:每當(dāng)用作外部數(shù)據(jù)存儲(chǔ)器時(shí),將跳過(guò)一個(gè)ALE脈沖。如想禁止ALE的輸出可在SFR8EH地址上置0。此時(shí),ALE只有在執(zhí)行MOV,MOV指令是ALE才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài)ALE禁止,置位無(wú)效。/PSEN外部程序存儲(chǔ)器的選通信號(hào)。在由外部程序存儲(chǔ)器取指期間,每個(gè)機(jī)器周期兩次/PS

7、EN有效。但在訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器時(shí),這兩次有效的/PSEN信號(hào)將不出現(xiàn)。/EA/VPP:當(dāng)/EA保持低電平時(shí),貝U在此期間外部程序存儲(chǔ)器0000H-FFFFH,不管是否有內(nèi)部程序存儲(chǔ)器。注意加密方式1時(shí),/EA將內(nèi)部鎖定為RESET當(dāng)/EA端保持高電平時(shí),此間內(nèi)部程序存儲(chǔ)器。在FLASH編程期間,此引腳也用于施加12V編程電源來(lái)實(shí)現(xiàn)電子萬(wàn)年歷的功能。共具備兩個(gè)功能:1)顯示年月日及分秒信息2)具有可調(diào)整日期和時(shí)間功能。該電子萬(wàn)年歷能夠成功實(shí)現(xiàn)時(shí)鐘運(yùn)行,調(diào)整功能,且精確度經(jīng)調(diào)試一天的誤差在2S內(nèi)。1微處理器在設(shè)計(jì)過(guò)程中我使用12MHZ晶振與單片機(jī)8052相連接,通過(guò)軟件編程的方法實(shí)現(xiàn)了以24小時(shí)

8、為一個(gè)周期同時(shí)顯示小時(shí),分鐘和秒的要求,該定時(shí)鬧鐘設(shè)有九個(gè)按鍵,使之具備了校時(shí)、定時(shí)功能。利用單片機(jī)定時(shí)器及計(jì)數(shù)器產(chǎn)生定時(shí)效果通過(guò)編程形成數(shù)字鐘效果,再利用數(shù)碼管動(dòng)態(tài)掃描顯示單片機(jī)內(nèi)部處理的數(shù)據(jù)。同時(shí)通過(guò)端口讀入當(dāng)前外部控制狀態(tài)來(lái)改變程序的不同狀態(tài),實(shí)現(xiàn)不同功能。在PROTEU軟件環(huán)境下的8052芯片如圖4所示:圖4PROTEUS軟片2顯示電路就時(shí)鐘而言,示或數(shù)碼管顯示。晶屏,需要專門(mén)的晶顯示作為一種被對(duì)較差;對(duì)于具有器接口的液晶顯示陣),一般多采用理器的接口要求較1XTALIFDUfMODftSTPO.lrAOTP&EMALEEAPIDTT2pi.inzEX2PH3FlAFa-SfAl1F2

9、.4/A12FZSTA13IPZjSTAltFZ-TfAISFJflfRXDP3.inxiipMN/mDPI5pjsmpjj曰石帀-PIJF3.7/KbU1RS2衛(wèi)JT*s34333Z2:1lZZ口2+S2SZ?2IDin12O1+1516件環(huán)境下的8052芯通??刹捎靡壕э@因?yàn)橐话愕亩问揭候?qū)動(dòng)電路,而且液動(dòng)顯示,可視性相驅(qū)動(dòng)電路和微處理模塊IDRSENP2MI1ALEP2.4ft12苗P2SW13P2J6WHP2.mi6PJDfiKDM.W2KPS.IfTKDM2P321NTDPWikhRHPliP1J5PJJSTIP1J5P3WFP1IrawiAW52,jasr_2Lrs:二:rsr135

10、W囚:二:rg:二4:WCC1X1rccz9CLK60X2D5TH!I9IIIIieiIIinIWDI鼻町師亠興III12E:U2J1USDAA1曲圖8六、主程序流程圖設(shè)計(jì)硬件電路該設(shè)計(jì)主程序流程圖如圖9所示:圖9Liparrayown_array*jcleararrayunction_array主程序流程圖啟蟲(chóng)時(shí)丨P代碼取得相應(yīng)的段碼、顯示段碼數(shù)據(jù)的CPU初始化,基本顯示模塊設(shè)計(jì)的重點(diǎn)是由顯示F串行發(fā)送,程時(shí)流程如始化-|11所示。其中時(shí)個(gè)位的段碼必須加上小數(shù)點(diǎn),即帶小數(shù)點(diǎn)顯示時(shí)個(gè)位,冃的是以小數(shù)定時(shí)器1初始化軟件秒脈沖發(fā)生器其實(shí)質(zhì)是利用了,將它設(shè)殳定為100ms溢出中B串口初始化次中斷的時(shí)

11、間正好為1s。將新顯參數(shù)設(shè)計(jì)為10(因有兩個(gè):ms的原顯示待位定時(shí)器最大定時(shí)時(shí)間為示符6M的2MM為機(jī)器周期設(shè)置里是茲斗,1)根據(jù)系統(tǒng)時(shí)特點(diǎn),16位定時(shí)器即13ms取整秒指示00便于計(jì)次數(shù);65536X2)女如取的太短/如10ms則定時(shí)器頻繁中斷,干擾系統(tǒng)正常運(yùn)行效果有了秒脈沖發(fā)設(shè)為1s,1,60后分變量單元加新1,如果為60分則時(shí)變量單尺燈閃Y1單元加顯示1,秒變量任何一個(gè)變星期顯示單元加量的變化,則顯示刷新一次更新)。上述思想的實(shí)現(xiàn)均集成在定時(shí)器0的中斷子程序中。該設(shè)計(jì)顯示模塊流程圖如圖10所示:七、仿真過(guò)程1、仿真:打開(kāi)WAV過(guò)串0口將時(shí)十位段碼送入對(duì)應(yīng)的對(duì)程序進(jìn)行編譯,在軟件Fl+t卞

12、尿盤(pán)甘rh氏i広比口.十iV+hQ右肓/【攵164苦厶臣&仲祖若盅誤以后對(duì)正確的源程序進(jìn)時(shí)個(gè)存段碼送入對(duì)其命名了以便將來(lái)載入程序時(shí)容易找到。I2、打開(kāi)PRoTe將分十位和個(gè)位段皿舉1643、檢查所畫(huà)電路運(yùn)行圖,確保沒(méi)打開(kāi)顯示基碼送(應(yīng)具體運(yùn)行電路圖后,在|PROTEU下對(duì)原理圖進(jìn)行加載WAVE600下的源程序。4、加載完成后,單擊電路圖框下的開(kāi)始按鈕,進(jìn)行仿真,觀察LED數(shù)碼管現(xiàn)實(shí)情況,此時(shí)LED數(shù)碼管開(kāi)始顯示數(shù)字。調(diào)節(jié)開(kāi)關(guān)進(jìn)行時(shí)間的調(diào)節(jié)。當(dāng)秒的顯示間隔快與或慢與實(shí)際間隔時(shí),調(diào)節(jié)石英晶體震蕩器的頻率參數(shù),從而使秒的間隔達(dá)到標(biāo)準(zhǔn)。然后檢查電路其它問(wèn)題,并對(duì)其的各參數(shù)進(jìn)行調(diào)整,使之正確。丿八、仿真

13、結(jié)果通過(guò)在WAVE600下對(duì)源程序的編譯,改正了其中的很多錯(cuò)誤,然后運(yùn)行,保證源程序的正確性。然后按原理圖選擇正確合理的電器元件,畫(huà)出正確的電路圖,加載源程序運(yùn)行,順利實(shí)現(xiàn)了單片機(jī)數(shù)字電子鐘的“小時(shí)”、“分鐘”、“秒”的顯示。該電子萬(wàn)年歷的顯示效果及電子萬(wàn)年歷時(shí)間和日期的調(diào)節(jié)效果分別如圖12和圖13所示:LCD!-iGHit2&insik朋年OB月3D口20時(shí)QO分14秒農(nóng)J7J02-05-27星期一旳.DP屈a-口DBO31IVK1KIB3E1凸凸凸已a(bǔ)a1=1aujW20*rrr3昂I-IUIEn-Q*h*H4U4T05i?aziLup_arraylXTAL29RSFU3sWCDQGNDA

14、LEpna口F0.WD1PD2AD2P0JftD3PD.DiPDJDSPQJEKD6ra.wDT量::pown_arrayarrayrloriLarray?圖12IP1DT2F1.1/T2KP1J忙F1EP1IP2UW8PFI泊貶那I口P23ft11P25ft13S譏P.TjAiSP3WXDF3.VDCDPJINfTP3JWRTTPiyrn呻釘1F3毎麗R3/RD-ffiLVCC1VCC1XIRSTSCLK沽K2ip1bii,顧:U2.-rpcT=-上互悔egIT亡耳:SKEDAAlHJP5*24CCBC-IEXTh電子萬(wàn)年歷的運(yùn)行效果-111.g21-怦2一.rhiMD11,1BTETO-L

15、CDT-苗和博*i諾諂GHDKTAL1PQAMiQ叩觸nPD2D2mt2PDJM3PDjUWSPDJfiMfiRSTpq.tjaqiP2JW嗆晦P22A1QP5J3Wi1lALEP2W12EAP2SA13陀砒!5Mj5ff2悶詠煩Mi/raecP3.VTO0MJPMflRTTriiPl.iiTHFISpzijemMjf閃誦Ji廠P1IsTiifflr_!2_衛(wèi)主:raac-s?pZZHcharF-|13own_array嚴(yán)孝ion_array1213I*IEts.ITJ2MCC1|CC2X11ST9CLK!C圖13電子萬(wàn)年歷時(shí)間和日期的調(diào)節(jié)效果九、課程設(shè)計(jì)體會(huì)通過(guò)這一周的課程設(shè)計(jì),我學(xué)到了不少

16、的知識(shí)。把以前沒(méi)有學(xué)好的模擬電路的知識(shí)進(jìn)行了補(bǔ)充和加強(qiáng)。這使我受益很大。加深了我對(duì)于單片機(jī)和數(shù)字電路的認(rèn)識(shí),相信在以后的學(xué)習(xí)和工作中碰到這些基礎(chǔ)的元器件我會(huì)更加得心應(yīng)手。通過(guò)查閱大量的資料,我獲得了以前在課堂上學(xué)不到的東西,我想這對(duì)于以后的畢業(yè)設(shè)計(jì),或者工作也好,都是很有幫助的。我很認(rèn)真地對(duì)待這個(gè)過(guò)程中的每一個(gè)細(xì)節(jié),希望自己能做得更好。希望今后還有這樣的機(jī)會(huì),能夠讓我學(xué)到更多的知識(shí)。在此次的數(shù)字鐘設(shè)計(jì)過(guò)程中,更進(jìn)一步地熟悉了芯片的結(jié)構(gòu)及掌握了各芯片的工作原理和其具體的使用方法。在連接六進(jìn)制,十進(jìn)制,六十進(jìn)制的進(jìn)位及十二進(jìn)制的接法中,要求熟悉邏輯電路及其芯片各引腳的功能,那么在電路出錯(cuò)時(shí)便能準(zhǔn)確

17、地找出錯(cuò)誤所在并及時(shí)糾正了。在設(shè)計(jì)電路中,往往是先仿真后連接實(shí)物圖,但有時(shí)候仿真和電路連接并不是完全一致的,例如仿真的連接示意圖中,往往沒(méi)有接高電平的16腳或14腳以及接低電平的7腳或8腳,因此在實(shí)際的電路連接中往往容易遺漏。在設(shè)計(jì)電路的連接圖中出錯(cuò)的主要原因都是接線和芯片的接觸不良以及接線的錯(cuò)誤所引起的。對(duì)該設(shè)計(jì)的建議:此次的電子萬(wàn)年歷設(shè)計(jì)重在于仿真和接線,雖然能把電路圖接出來(lái),并能正常顯示,但對(duì)于電路本身的原理并不是十分熟悉.總的來(lái)說(shuō),通過(guò)這次的設(shè)計(jì)實(shí)驗(yàn)更進(jìn)一步地增強(qiáng)了實(shí)驗(yàn)的動(dòng)手能力。學(xué)無(wú)止境,我們現(xiàn)在所做的一切都還只是一個(gè)開(kāi)始。附1源程序代碼#inelude#inelude#includ

18、e#inelude#inelude#inelude#inelude/*/*預(yù)定義*#defineueharunsignedehar#defineuintunsignedint*sbitbell=P2A0/定義蜂鳴器端口sbitin=P2A7。II定義紅外檢測(cè)端口/*名稱:Timer0_Service(inturrupt1功能:中斷服務(wù)程序整點(diǎn)報(bào)時(shí)3聲嘟嘟的聲音入口參數(shù):出口參數(shù):*/voidTimer0_Service(interrupt1staticucharcount=0staticucharflag=0。II記錄鳴叫的次數(shù)count=0。TR0=0。II關(guān)閉Timer0TH0=0 x3c

19、。TL0=0XB0。II延時(shí)50msTR0=1。II啟動(dòng)Timer0count+。if(count=20II鳴叫1秒bell=bell。count=0。flag+。if(flag=6flag=0。TR0=0。II關(guān)閉Timer0I*名稱:Timer2_Servie(interrupt5功能:中斷服務(wù)程序整點(diǎn)報(bào)時(shí)一分鐘入口參數(shù):出口參數(shù):*IvoidTimer3_Service(interrupt5staticucharcountcount+。if(in=1count=0。/計(jì)算清0TR2=0。/關(guān)閉Timer2bell=1。/關(guān)閉蜂鳴器if(count=120/一分鐘后關(guān)閉報(bào)警count=0。/計(jì)算清0TR2=0。/關(guān)閉Timer2bell=1。/關(guān)閉蜂鳴器TF2=0/軟件清除中斷標(biāo)志/*函數(shù)名稱:main(功能:入口參數(shù):出口參數(shù):*/voidmain(voiducharclock_time7=0 x00,0 x00,0 x02,0 x30,0 x06,0 x08義時(shí)間變量秒分時(shí)日月/ucharalarm_time2=0,0alarm_time1:小時(shí)。/鬧鐘設(shè)置alarm_time0:分鐘uchartemperature2temperature1高8位/定義溫度變量temperat

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論