電子跑表的設(shè)計(jì)_第1頁
電子跑表的設(shè)計(jì)_第2頁
電子跑表的設(shè)計(jì)_第3頁
電子跑表的設(shè)計(jì)_第4頁
電子跑表的設(shè)計(jì)_第5頁
已閱讀5頁,還剩14頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1010文檔來源為:從網(wǎng)絡(luò)收集整理.word版本可編輯.歡迎下載支持.worword版等級可編輯歡迎下載支持「□不及格文檔來源為:從網(wǎng)絡(luò)收集整理、果彳甘績「□?!趿肌蹩案裾n程名稱果題名稱單片機(jī)原理與應(yīng)用課程設(shè)計(jì)電子跑表設(shè)計(jì)專班學(xué)姓業(yè)級

名電子信息工程150103譚青權(quán)肖鋒指導(dǎo)老師肖鋒2015年6月*日文檔來源為:從網(wǎng)絡(luò)收集整理.word版本可編輯.歡迎下載支持.報(bào)告撰寫要求(此頁不打印)課程設(shè)計(jì)報(bào)告是體現(xiàn)課程設(shè)計(jì)成果的載體,具體要求如下:1、課程設(shè)計(jì)報(bào)告的基本格式說明書統(tǒng)一使用word文檔打印,A4紙張,頁邊距設(shè)置為:上2cm,下2cm,左2.54cm,右2cm。正文采用宋體小四,字間距20磅;1級標(biāo)題采用黑體小三,2級標(biāo)題采用黑體四號,3級標(biāo)題采用黑體小四;1和2級標(biāo)題段落間距為上下0.5行。圖表需統(tǒng)一編號,圖標(biāo)標(biāo)題采用黑體五號;圖標(biāo)題在圖片下方,表格標(biāo)題在表格上方。裝訂順序?yàn)椋悍饷妗⑷蝿?wù)書、報(bào)告正文、評分表。2、課程設(shè)計(jì)報(bào)告的撰寫要求設(shè)計(jì)報(bào)告正文內(nèi)容為5-6頁為宜,主要內(nèi)容為自己的設(shè)計(jì)思路、設(shè)計(jì)步驟、關(guān)鍵性步驟的記錄、重要結(jié)果的記錄以及自己本次課程設(shè)計(jì)的總結(jié)。報(bào)告撰寫要求思路清晰、結(jié)構(gòu)合理、層次清晰,報(bào)告簡潔但又要能體現(xiàn)設(shè)計(jì)過程。報(bào)告中圖表要求清晰、規(guī)范,圖表的尺寸大小適當(dāng)。(3)課程設(shè)計(jì)報(bào)告內(nèi)容(僅供參考):文檔來源為:從網(wǎng)絡(luò)收集整理.word版本可編輯.歡迎下載支持.電氣信息學(xué)院課程設(shè)計(jì)任務(wù)書課題名稱電子跑表的設(shè)計(jì)姓名譚青權(quán)專業(yè)電子信息工程班級1501學(xué)號03扌旨導(dǎo)老師肖鋒課程設(shè)計(jì)時間2017/12/11—2017/12/22一、任務(wù)及要求設(shè)計(jì)任務(wù):利用單片機(jī)為核心設(shè)計(jì)一個多功能電子表,具有電時鐘和跑表功能。用做時鐘時,在顯示器上顯示時、分、秒,用做跑表時,顯示范圍00時00分00秒-23時59分59秒并具有跑表啟動和跑表復(fù)位功能鍵。當(dāng)按下啟動按鈕跑表開始計(jì)時,按下停止按停止計(jì)時,當(dāng)按下復(fù)位按鈕跑表回零。設(shè)計(jì)要求:1)確定系統(tǒng)設(shè)計(jì)方案;2)進(jìn)行系統(tǒng)的硬件設(shè)計(jì);3)完成必要的參數(shù)計(jì)算與元器件選擇;4)完成應(yīng)用程序設(shè)計(jì);5)應(yīng)用系統(tǒng)的硬件和軟件的調(diào)試。二、進(jìn)度安排第一周:周一:集中布置課程設(shè)計(jì)任務(wù)和相關(guān)事宜,查資料確定系統(tǒng)總體方案。周二?周三:完成硬件設(shè)計(jì)和電路連接周四?周日:完成軟件設(shè)計(jì)第二周:周一?周三:程序調(diào)試周四?周五:設(shè)計(jì)報(bào)告撰寫。周五進(jìn)行答辯和設(shè)計(jì)結(jié)果檢查。三、參考資料1、王迎旭等?單片機(jī)原理及及應(yīng)用[M].2版?機(jī)械工業(yè)出版社,20122、胡漢才?單片機(jī)原理及其接口技術(shù)[M].3版?清華大學(xué)出版社,2010.3、戴燦金.51單片機(jī)及其C語言程序設(shè)計(jì)開發(fā)實(shí)例[M].清華大學(xué)出版社,201文檔來源為:從網(wǎng)絡(luò)收集整理.word版本可編輯.歡迎下載支持.目錄TOC\o"1-5"\h\z第1章、總體方案設(shè)計(jì)21.1、設(shè)計(jì)任務(wù)及要求21.2、設(shè)計(jì)原理或者設(shè)計(jì)思路2第2章、硬件電路設(shè)計(jì)…………42.1、主控制器單片機(jī)的選擇42.2、時鐘電路42.3、顯示接口電路52.4、鍵盤接口電路6第3章、軟件設(shè)計(jì)73.1、設(shè)計(jì)說明73.2、主程序設(shè)計(jì)73.3、時間處理模塊83.4、鍵盤掃描模塊103.5記數(shù)回調(diào)模塊12第4章、調(diào)試13第5章、總結(jié)15附錄……………………16第1章總體方案設(shè)計(jì)1.1、設(shè)計(jì)任務(wù)及要求設(shè)計(jì)任務(wù):利用單片機(jī)為核心設(shè)計(jì)一個多功能電子表,具有電時鐘和跑表功能。用做時鐘時,在顯示器上顯示時、分、秒,用做跑表時,顯示范圍00時00分00秒-23時59分59秒并具有跑表啟動和跑表復(fù)位功能鍵。當(dāng)按下啟動按鈕跑表開始計(jì)時,按下停止按停止計(jì)時,當(dāng)按下復(fù)位按鈕跑表回零。跑表能記下10個數(shù),記數(shù)完畢能回調(diào)顯示設(shè)計(jì)要求:1)確定系統(tǒng)設(shè)計(jì)方案;2)進(jìn)行系統(tǒng)的硬件設(shè)計(jì);3)完成必要的參數(shù)計(jì)算與元器件選擇;4)完成應(yīng)用程序設(shè)計(jì);5)應(yīng)用系統(tǒng)的硬件和軟件的調(diào)試。1.2、設(shè)計(jì)原理或者設(shè)計(jì)思路1.設(shè)計(jì)思路

文檔來源為:從網(wǎng)絡(luò)收集整理.word版本可編輯.歡迎下載支持.1)計(jì)時單元由單片機(jī)內(nèi)部的定時器/記數(shù)器來實(shí)現(xiàn)。2)時間顯示功能通過LED數(shù)碼管動態(tài)掃描來實(shí)現(xiàn)。利用單片機(jī)內(nèi)部4的8位并行I/O端口來實(shí)現(xiàn)外部按鍵的信號輸入,由于數(shù)碼管要顯示時鐘,還要顯示跑表,因此,我分別用TR1,TRO定時器來分別定時跑表和時鐘,分別寫出跑表和時鐘的子程序,定義一控制變量Numb并賦其初值0當(dāng)Numb=0時調(diào)用時鐘子程序,當(dāng)Numb=l時調(diào)用跑表子程序,達(dá)到跑表顯示與時鐘顯示互不影響。3)跑表的切換,啟動,停止,清零功能由軟件來實(shí)現(xiàn),分別由P1.O,P1.1,P1.2,P1.3外接按鍵,跑表的記數(shù),回調(diào)顯示,分別由Pl.6,P1.7外接按鍵,在分別編寫兩段不同的子程序來實(shí)現(xiàn)所需要的功能1.3、總體設(shè)計(jì)方案本系統(tǒng)采用AT89C51單片機(jī)、6位LDE數(shù)碼管顯示、一個排阻、6個調(diào)節(jié)按鈕、2個電容與l個晶體振蕩器共同構(gòu)成本的單片機(jī)電子跑表的硬件。時鐘模塊與計(jì)時模塊則分別由單片機(jī)內(nèi)部的定時器/記數(shù)器T0與T1來實(shí)現(xiàn)。時間顯示功能通過LED數(shù)碼管動態(tài)掃描來實(shí)現(xiàn)。電子跑表的啟動/暫停/清零功能由軟件來實(shí)現(xiàn)。P1.0實(shí)現(xiàn)時鐘與秒表的切換功能,P1.1接開始計(jì)時鍵,P1.2接計(jì)時暫停鍵,P1.3接計(jì)時重新計(jì)時鍵,P1.6接計(jì)時記數(shù)鍵,P1.7接計(jì)時回顯鍵。本系統(tǒng)軟件部分則采用C51編寫,功能模塊結(jié)構(gòu)化強(qiáng),共利用了7個功能函數(shù),2個中斷服務(wù)函數(shù)和1個主函數(shù)構(gòu)成了本次電子跑表的軟件部分。圖2.1為本系統(tǒng)方框圖。6位共陰數(shù)碼管顯示位驅(qū)動4k字節(jié)6位共陰數(shù)碼管顯示位驅(qū)動4k字節(jié)Flash閃速存儲器,128字節(jié)內(nèi)部RAM,32個I/O口線,兩個16位定時/計(jì)數(shù)器,一個5向量兩級中斷結(jié)構(gòu),一個全雙工串行通信口,片內(nèi)振蕩器及時鐘電路。同時,AT89C51可降至0Hz的靜態(tài)邏輯操作,并支持兩種軟件可選的節(jié)電工作模式。空閑方式停止CPU的工作,但允許RAM,定時/計(jì)數(shù)器,串行通信口及中斷系統(tǒng)繼續(xù)工作。掉電方式保存RAM中的內(nèi)容,但振蕩器停止工作并禁止其它所有部件工作直到下一個硬件復(fù)位。MCS51的管腳圖如圖2.1圖2.189c51芯片管腳圖2.2、時鐘電路文檔來源為:從網(wǎng)絡(luò)收集整理.word版本可編輯.歡迎下載支持.單片機(jī)工作的時間基準(zhǔn)是由時鐘電路提供的。在單片機(jī)的XTAL1和XTAL2兩個管腳,接一只晶振及兩只電容就構(gòu)成了單片機(jī)的時鐘電路,如圖3.2所示。電路中,電容器C1和C2對振蕩頻率有微調(diào)作用,本次設(shè)計(jì)中電容器取值為20pF,石英晶體選擇12MHz,故單片機(jī)的機(jī)器周期為1us,圖2.2為單片機(jī)內(nèi)部時鐘電路圖2.2內(nèi)部時鐘電路2.3、顯示接口電路本次設(shè)計(jì)中使用了6位共陰數(shù)碼顯示管,顯示控制采用動態(tài)顯示,即數(shù)據(jù)的顯示是由段和位選信號共同配合完成的。為了實(shí)現(xiàn)顯示器的動態(tài)掃描,我們需要對顯示器進(jìn)行段控和位控,因此在顯示器接口電路中需要有兩個輸出口,其中一個用于輸出8條段控線;另一個用于輸出位控線,位控線的數(shù)目等于顯示器的位數(shù)。本次設(shè)計(jì)中用P1口與顯示器的8條段控線相接,用P2.2~P2.7與顯示器的6條位控線相接。如圖2.3所示。圖2.3顯示接口電路2.4、鍵盤接口電路本設(shè)計(jì)的鍵盤接口電路中使用了4個按鍵分別與單片機(jī)的P1.1?P1.3口相連如圖3.3所示,分別實(shí)現(xiàn)時鐘/秒表切換、開始計(jì)時、暫停計(jì)時、重新計(jì)時的功能。按鍵的開關(guān)狀態(tài)通過一定的電路轉(zhuǎn)換為高、低電平狀態(tài)。按鍵閉合過程在相應(yīng)的I/O端口形成一個負(fù)脈沖。閉合和釋放過程都要經(jīng)過一定的過程才能達(dá)到穩(wěn)定,這一過程是處于高、低電平之間的一種不穩(wěn)定狀態(tài),稱為抖動。抖動持續(xù)時間的常長短與開關(guān)的機(jī)械特性有關(guān),一般在5-10ms之間。為了避免鍵的一次處理閉合,應(yīng)采CPU多次按用措施消除抖動。圖2.4為鍵盤接口電路圖2.4鍵盤接口電路第3章軟件設(shè)計(jì)3.1、設(shè)計(jì)說明在進(jìn)行應(yīng)用軟件設(shè)計(jì)時應(yīng)采用模塊化結(jié)構(gòu)設(shè)計(jì),其優(yōu)點(diǎn)是:每個模塊的程序結(jié)構(gòu)簡單,任務(wù)明確,易于編寫,調(diào)試和修改,程序可讀性好,對程序的修改可局部進(jìn)行,其他部分可以保持不變,便于功能擴(kuò)充和版本升級,是便于多個模塊的調(diào)用和分工合作。因此為了達(dá)到功能結(jié)構(gòu)模塊化,易讀,簡單,易移植的特點(diǎn),故本次設(shè)計(jì)采用C51編寫。系統(tǒng)編寫時可分為鍵盤掃描程序模塊,時間處理模塊,顯示模塊。如圖4.1所示。將這些事先劃分好的模塊用C51編成不同的子函數(shù),再將它們有機(jī)的結(jié)合起來從而達(dá)到系統(tǒng)的整體功能。圖3.1為軟件設(shè)計(jì)總體模塊本程序可分為4個模塊,共定義了7個子函數(shù),其中鍵盤掃描模塊包括鍵盤掃描函數(shù),數(shù)碼管顯示模塊包括時鐘顯示函數(shù)、秒表顯示函數(shù),時間處理模塊包括時鐘系時間處理函數(shù)、秒表系時間處理函數(shù)、延遲函數(shù),,另本程序還利用了兩個定時/計(jì)數(shù)器分別為T0、T1,故還需定義兩個中斷函數(shù)TO中斷服務(wù)函數(shù)和T1中斷服務(wù)程序。本程序中由于涉及時鐘與秒表互切問題,故定義了一控制變量Numb并賦其初值0,若在仿真過中切到秒表則Numb取反為1,切到時鐘則Numb重新為0。因此在程序運(yùn)行過程中便可控制各按鍵功能及屏蔽在時鐘模式或秒表模式下不相干功能鍵的影響。圖3.2為主程序流程圖。(開始]時鐘處理函數(shù)用定時器T0定時10ms,其計(jì)數(shù)初值為X=2M-f°SC12,由于T0選用工作方式1,故M為216即65536,fosc為晶振頻率為12MHZ,t為定時時間10ms,所

以X的值為64536,將該值的高八位值賦給TH0,低八位并賦給TL0,這樣便完成了T0

4文檔來源為:從網(wǎng)絡(luò)收集整理.word版本可編輯.歡迎下載支持.1010文檔來源為:從網(wǎng)絡(luò)收集整理.word版本可編輯.歡迎下載支持.文檔來源為:從網(wǎng)絡(luò)收集整理.word版本可編輯.歡迎下載支持.的初始化工作,因?yàn)槎〞r器TO工作在方式1下,故每次定時器TO溢出都需再給TO賦初值。由于TO定時10ms,所以要得到1s的時間需T0溢出100次,由此引入計(jì)數(shù)變量Count。每當(dāng)T0溢出,Count便自動加1,直至計(jì)滿100,便使秒變量Seconds自動加1并初始化Count重新開始計(jì)數(shù),直到Seconds為60,初始化Seconds并使分變量Minutes自動加1,同理到時變量Hour為24時,初始化Hours,由此無限循環(huán)下去直到關(guān)閉電源。圖3.3為程序流程圖圖3.3T0中斷函數(shù)及時鐘處理函數(shù)流程(65536-10000秒表時間處理函數(shù)用的是定時器T1與T0相同,定時10ms,高八位TH1賦值為256,低八位TL1賦值為(65536-10000)%256。T1的啟動由按鍵掃描函數(shù)控制,當(dāng)開啟T1后,每次T1溢出,Decisec自動加1,直至Decisec到(65536-10000自動加1,直至分Mint為10,初始化Mint計(jì)時復(fù)位。圖3.4為其程序流程圖。圖3.4秒表處理函數(shù)及T1中斷服務(wù)函數(shù)流程3.4、鍵盤掃描模塊時鐘與秒表切換鍵程序:CHANGE鍵為時鐘秒表切換鍵,當(dāng)按下CHANGE鍵時,會產(chǎn)生按鍵抖動,本程序中利用delay(5)產(chǎn)生5ms延遲使得按鍵狀態(tài)穩(wěn)定后重新確認(rèn)是否按下了CHANGE鍵即CHANGE為低電平,此時還需判斷控制變量Numb是否為0(Numb為0即奇數(shù)次按下CHANGE鍵顯示秒表,Numb為1則為偶數(shù)次按下CHANGE鍵顯示時鐘),在CHANGE為0且Numb為0的情況下,執(zhí)行數(shù)碼管顯示秒表函數(shù)并對Numb取反為再次按下CHANGE鍵做準(zhǔn)備,此后程序進(jìn)入確認(rèn)結(jié)束按鍵循環(huán),若松開CHANGE,則非CHANGE為0,循環(huán)結(jié)束回到開始處等待按鍵電平;若一直按著CHANGE,則一直執(zhí)行數(shù)碼管顯示秒表函數(shù)。當(dāng)Numb為1時,則同理顯示時鐘函數(shù),非CHANGE為0時退出循環(huán)回到等待。圖3.5為該程序流程圖。圖3.5時鐘與秒表切換程序開始計(jì)時鍵程序:在控制變量Numb等于1的情況按下START鍵則開啟T1定時器開始計(jì)時,這里加入Numb的目的是為了在時鐘狀態(tài)下屏蔽非時鐘功能鍵,故當(dāng)切換為秒表狀態(tài)時,Numb為1,此時秒表系功能鍵生效,此時按下START鍵,開始計(jì)時。圖3.6為暫停計(jì)時鍵程序、計(jì)時復(fù)位鍵程序同開始計(jì)時鍵程序類似都需在Numb為1的情況下方可啟用,且其程序流程相似。鍵盤掃描函數(shù)keyscan()是由時鐘與秒表切換鍵程序、開始文檔來源為:從網(wǎng)絡(luò)收集整理.word版本可編輯.歡迎下載支持.計(jì)時鍵程序、暫停計(jì)時鍵程序、計(jì)時復(fù)位鍵程序構(gòu)成的。3.5記數(shù)回調(diào)模塊記數(shù)回調(diào)模塊是跑表的一個功能,當(dāng)切換到跑表功能,開始跑表功能計(jì)時后,按下SAVE鍵,記錄一個當(dāng)前數(shù)據(jù),連續(xù)10按下SAVE鍵,記錄10個跑表數(shù)據(jù)。跑表暫停記數(shù)并清零,再按下BACK鍵,就會從第一個記錄的數(shù)據(jù)依次顯示到第10個記錄的數(shù)據(jù),跑表一輪記數(shù)完成。按下START又能重新一輪記數(shù)。圖3.7為記數(shù)回調(diào)鍵程序流程圖為了方便查看,本次課程設(shè)計(jì)用的是還是仿真調(diào)試用KEIL運(yùn)行程序正確后生成HEX格式的文件,用Proteus畫好電路圖,導(dǎo)入HEX格式的文件進(jìn)行仿真。如下圖所示,P1.0是秒表與時鐘切換鍵,P1.1為開始計(jì)時鍵,P1.2為暫停計(jì)時鍵。P1.3為重新計(jì)時鍵。時鐘的初始計(jì)時為59:59:00,跑表初始計(jì)時為00:00:00。下圖4.1、4.2分別是時鐘狀態(tài)和跑表狀態(tài)調(diào)試圖。圖4.1時鐘狀態(tài)調(diào)試圖4.2跑表狀態(tài)調(diào)試圖這次調(diào)試過程并沒有想像的那么順利,一開始時鐘和跑表不能切換,經(jīng)過修改,算是解決問題,但在調(diào)試記數(shù)和回顯時,也是碰到了很多問題,通過翻閱c語言書籍,問老師,問同學(xué),最終,算是圓滿完成調(diào)試第5章總結(jié)文檔來源為文檔來源為:從網(wǎng)絡(luò)收集整理.word版本可編輯.歡迎下載支持.88文檔來源為:從網(wǎng)絡(luò)收集整理.word版本可編輯?歡迎下載支持.開始做課程設(shè)計(jì)時,我們首先需要將硬件設(shè)計(jì)做出來,在硬件設(shè)計(jì)好的基礎(chǔ)上進(jìn)行軟件設(shè)計(jì)這樣就方便多了。著手軟件設(shè)計(jì)時要有一個整體的思路,即主程序,有了整體思路就開始著手于分模塊的設(shè)計(jì),如時鐘顯示程序、中斷服務(wù)程序、時間處理程序等。每個模塊出來后都需要配合主程序進(jìn)行仿真驗(yàn)證程序是否能正常運(yùn)行。這次的設(shè)計(jì)盡管還不是很完善,但我已經(jīng)非常開心了,至少有了自己的思路再去實(shí)踐,再在實(shí)踐的過程中收獲,這是課堂上所沒有的欣喜。在課程設(shè)計(jì)的過程中遇到的各種知識不總是在書上能找到的,所以我們必須自己查找相關(guān)資料,利用圖書館或網(wǎng)絡(luò)搜索,這是一個比較辛苦的過程,你必須從無數(shù)的信息中分離出對你有用的,然后加以整理,最后吸收并用到設(shè)計(jì)中來。通過這點(diǎn),我收益很大。課程設(shè)計(jì)是從整體到部分的過程,然而一切并不都是如此的。因?yàn)橛袝r候你整體設(shè)計(jì)好了,然而在設(shè)計(jì)部分的時候卻可能影響到整體,然后又要作出調(diào)整,在不斷的調(diào)整中才慢慢把設(shè)計(jì)做出來。有時候你還必須把自己前面做的東西全部推翻,然后重新再來。在開始單片機(jī)課程設(shè)計(jì)之前,我對單片機(jī)只是有一個比較淺的印象,但開始課設(shè)之后,為了完成課設(shè),我不得不重新捧起書本,一點(diǎn)一滴的找我需要的知識,尤其中斷系統(tǒng),定時器那兩章基本滾瓜爛熟,然后數(shù)碼管靜態(tài)顯示,等等,經(jīng)過深入的了解,我對單片機(jī)有了濃厚的興趣。經(jīng)過兩個星期的課程設(shè)計(jì),確實(shí)讓我收獲很多,學(xué)到了很多,特別要謝謝肖老師的指導(dǎo)及嚴(yán)格要求,雖然在設(shè)計(jì)過程中很累,但是一看到自己做出來的成果,就什么疲勞都沒有了。附錄:程序清單:#include<reg51.h>#defineucharunsignedchar#defineuintunsignedint//七段共陰數(shù)碼顯示管段碼表//ucharcodedispcode[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};//定義初始化變量////秒表部分//ucharDecisec=0;//分秒//ucharSec=0;//秒//ucharMint二0;//分//ucharSeconds=0;//時鐘部分//ucharMinutes=59;ucharHours=23;ucharCount=0;ucharNumb=0;

ucharnum1=0;ucharnum=0;ucharaum=0;ucharjilu[10][3]={0};//按鍵部分//sbitCHANGE二P「0;//切換:可實(shí)現(xiàn)跑表與時鐘互切//sbitSTART二P「l;//開始//sbitSTOP二P「2;//暫停//sbitRST二P「3;//清零//sbitSAVE二Pl飛;//記錄//sbitBACK二P「7;//回調(diào)////函數(shù)聲明//voiddelay(ucharms);//延遲函數(shù)//voidtime_pro1();//秒表處理函數(shù)//voidtime_pro2();//時鐘處理函數(shù)//voidkeyscan();//鍵盤掃描函數(shù)//voiddisplayl();//數(shù)碼管顯示秒表函數(shù)//voiddisplay2();//數(shù)碼管顯示時鐘函數(shù)//voidchaxun();//回顯函數(shù)///*******************///主函數(shù)///*******************//*******************///主函數(shù)///*******************/voidmain(){voidmain(){Pl=0xff;TMOD=0xll;TH0=(65536-50000)/256;TL0=(65536-50000)%256;THl=(65536-l0000)/256;TLl=(65536-l0000)%256;EA=l;ET0=l;ETl=l;TR0=l;while(l){keyscan();if(Numb==l){chaxun();文檔來源為文檔來源為:從網(wǎng)絡(luò)收集整理.word版本可編輯.歡迎下載支持.display1();}if(Numb==0){display2();}}}/*******************///延遲函數(shù)///*******************/voiddelay(ucharms){uchari,j;for(i=ms;i>0;i--)for(j=500;j>0;j--);}/*******************///秒表處理函數(shù)///******************/voidtime_pro1(){if(Decisec==100){Decisec=0;Sec++;if(Sec==60){Sec=0;Mint++;if(Mint==60){Mint=0;}}}}/*******************///時鐘處理函數(shù)///******************/voidtime_pro2(){if(Seconds==60){Seconds=0;Minutes++;if(Minutes==60)9文檔來源為:從網(wǎng)絡(luò)收集整理.word版本可編輯.歡迎下載支持.1010文檔來源為:從網(wǎng)絡(luò)收集整理.word版本可編輯.歡迎下載支持.文檔來源為:從網(wǎng)絡(luò)收集整理.word版本可編輯.歡迎下載支持.{Minutes=0;Hours++;if(Hours==24){Hours=0;}}}}/*******************///鍵盤掃描函數(shù)///******************/voidkeyscan(){//秒表/時鐘切換//if(CHANGE==0){delay(5);if((CHANGE==0)&&(Numb==0)){display1();Numb=!Numb;while(!CHANGE){display1();}}if((CHANGE==0)&&(Numb==1)){Numb=!Numb;while(!CHANGE){display2();}}}//開始計(jì)時//if((START==0)&&(Numb==1)){delay(5);if(START==0){TR1=1;while(!START){display1();}}}//暫停計(jì)時//if((STOP==0)&&(Numb==1)){delay(5);if(STOP==0){TR1=0;文檔來源為:從網(wǎng)絡(luò)收集整理.word版本可編輯.歡迎下載支持.while(!STOP){display1();}}}//重新計(jì)時//if((RST==0)&&(Numb==1)){delay(5);if(RST==0){while(!RST){Decisec=0;Sec=0;Mint=0;display1();}}}}/*******************///回顯函數(shù)//**************/voidchaxun(){if(SAVE==0)//記錄{while(SAVE==0){delay(5);display1();}num++;jilu[num][0]=Mint;jilu[num][1]=Sec;jilu[num][2]=Decisec;if(num==9){Decisec=0;Sec=0;Mint=0;TR1=0;display1();}}if(BACK==0)//查看記錄{while(BACK==0){delay(5);11文檔來源為:從網(wǎng)絡(luò)收集整理.word版本可編輯.歡迎下載支持.1010文檔來源為:從網(wǎng)絡(luò)收集整理.word版本可編輯.歡迎下載支持.文檔來源為:從網(wǎng)絡(luò)收集整理.word版本可編輯.歡迎下載支持.display1();}num1++;Mint=jilu[num1][0];Sec=jilu[num1][1];Decisec=jilu[num1][2];display1();if(num1==num)num1=0;}}/************************///數(shù)碼管顯示秒表函數(shù)///************************/voiddisplay1(){P2=0x7f;P0=dispcode[Decisec%10];//顯示分秒//delay(1);P2=0xbf;P0二dispcode[Decisec/10];//顯示秒個位//delay(1);P2=0xdf;P0二dispcode[Sec%10]|0x80;//顯示秒十位//delay(1);P2=0xef;P0=dispcode[Sec/10];//顯示分//delay(1);P2=0xf7;P0=dispcode[Mint%10]|0x80;delay(1);P2=0xfb;P0=di

溫馨提示

  • 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

提交評論