




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、目錄目錄 一、一、系統(tǒng)總體方案選擇與說明系統(tǒng)總體方案選擇與說明 .1 二、二、設(shè)計框圖與工作原理設(shè)計框圖與工作原理 .2 2.1 設(shè)計框圖設(shè)計框圖 .2 2.2 工作原理工作原理 .3 三、三、各單元硬件設(shè)計說明及計算方法各單元硬件設(shè)計說明及計算方法 .4 四、四、軟件設(shè)計與說明軟件設(shè)計與說明 .5 4.1 程序設(shè)計流程圖程序設(shè)計流程圖 .5 4.2 程序設(shè)計步驟程序設(shè)計步驟 .7 4.2.1 延時程序延時程序 .7 4.2.2 主程序的設(shè)計主程序的設(shè)計 .7 4.2.3 中斷服務(wù)程序的設(shè)計中斷服務(wù)程序的設(shè)計 .8 4.2.4 顯示控制子程序的設(shè)計顯示控制子程序的設(shè)計 .8 4.2.5 按鍵控
2、制程序的設(shè)計按鍵控制程序的設(shè)計 .8 五、五、調(diào)試結(jié)果及說明調(diào)試結(jié)果及說明 .8 5.1 軟件調(diào)試軟件調(diào)試 .8 5.2 硬件調(diào)試硬件調(diào)試 .9 六、六、各元件的使用說明各元件的使用說明 .10 6.1at89c51 芯片芯片.10 6.2 數(shù)碼管數(shù)碼管 .11 6.3 按鍵按鍵 .11 七、七、總結(jié)總結(jié) .11 八、八、參考文獻參考文獻 .12 九、九、附錄附錄 .13 附錄附錄 a a .13 附錄附錄 b.14 系統(tǒng)總體方案選擇與說明系統(tǒng)總體方案選擇與說明 單片機系統(tǒng)作為一種典型的嵌入式系統(tǒng),其系統(tǒng)設(shè)計包括硬件電路 設(shè)計和軟件編程設(shè)計兩個方面, 其調(diào)試過程一般分為軟件調(diào)試、硬件測 試、系
3、統(tǒng)調(diào)試 3 個過程。如果采用單片機系統(tǒng)的虛擬仿真軟件 proteus,則不用制作具體的電路板也能夠完成以上工作?;趩纹瑱C設(shè)計 的數(shù)字鐘精確度較高, 因為在程序的執(zhí)行過程中, 任何指令都不影響定 時器的正常計數(shù),即便程序很長也不會影響中斷的時間。從而,使數(shù)字鐘 的精度僅僅取決于單片機的產(chǎn)生機器周期電路和定時器硬件電路的精確度。 另外,程序較為簡潔,具有可靠性和較好的可讀性。 針對要實現(xiàn)的功能,擬采用 at89c51 單片機進行設(shè)計,at89c51 單 片機是一款低功耗,高性能 cmos8 位單片機,片內(nèi)含 4kb 在線可編程 (isp)的可反復(fù)擦寫 1000 次的 flash 只讀程序存儲器,
4、器件采用高密度、 非易失性存儲技術(shù)制造,兼容標(biāo)準(zhǔn) mcs- 51 指令系統(tǒng)及 80c51 引腳結(jié)構(gòu)7。 這樣,既能做到經(jīng)濟合理又能實現(xiàn)預(yù)期的功能。 在程序方面,采用分塊設(shè)計的方法,這樣既減小了編程難度、使程序 易于理解,又能便于添加各項功能。程序可分為顯示程序、調(diào)時顯示運用、 時鐘和跑表切換程序這種方法,關(guān)鍵在于各模塊的兼容和配合,若各模塊 不匹配會出現(xiàn)意想不到的錯誤。 首先,在編程之前必須了解硬件結(jié)構(gòu)尤其是各引腳的用法,以及內(nèi)部 寄存器、存儲單元的用法,否則,編程無從下手,電路也無法設(shè)計。這是 前期準(zhǔn)備工作。本設(shè)計中我們采用的硬件是自己焊的單片機開發(fā)板,首先 要先確認該板能夠完成下載功能在開
5、始編程;第二部分是硬件部分:依據(jù) 想要的功能分塊設(shè)計設(shè)計,比如輸入需要開關(guān)電路,輸出需要顯示驅(qū)動電 路和段選電路等。第三部分是軟件部分:先學(xué)習(xí)理解匯編語言的編程方法 再根據(jù)設(shè)計的硬件電路進行分塊的編程調(diào)試,最終完成程序設(shè)計。第四部 分是軟件畫圖部分:設(shè)計好電路后進行畫圖,包括電路圖和仿真圖的繪制。 第五部分是軟件仿真部分:軟硬件設(shè)計好后將軟件載入芯片中進行仿真, 仿真無法完成時檢查軟件程序和硬件電路并進行修改直到仿真成功。第六 部分是硬件實現(xiàn)部分:連接電路并導(dǎo)入程序檢查電路,若與設(shè)計的完全一 樣一般能實現(xiàn)想要的功能。在下載到硬件中時確認程序的關(guān)鍵管腳與硬件 電路一致。 設(shè)計框圖與工作原理設(shè)計框
6、圖與工作原理 1、設(shè)計框圖(如圖一)、設(shè)計框圖(如圖一): 熟悉硬件了解各引腳功能分塊設(shè)計各部分電路 將分塊的電路組合 認真學(xué)習(xí)單片機匯編語言 完成整體電路圖 確定編程結(jié)構(gòu)和思路 綜合各程序完成整體程序編輯各個程序模塊 用 proteus 畫出電路圖調(diào)試程序,進行修改 對仿真中出現(xiàn)的問題進行 改正 畫出仿真圖進行仿真 焊接單片機開發(fā)板仿真成功 軟硬件結(jié)合,完成任務(wù)書 要求 驗證硬件電路 成功對設(shè)計進行總結(jié)和分析 圖一 工作原理工作原理: 在整個系統(tǒng)中首先要做的是將要實現(xiàn)功能的軟件程序編寫好,在程序 編寫好以后對其進行仿真調(diào)試,直到仿真結(jié)果和所需結(jié)果一致;其次要做 的就是焊接出硬件即單片機開發(fā)板
7、,在焊接好的開發(fā)板中對開發(fā)板進行檢 測看其是否能工作;在開發(fā)板能工作后,將軟件程序下載到硬件開發(fā)板的 芯片中,進行調(diào)試直到硬件中所示的結(jié)果和自己設(shè)計所需的結(jié)果一致。 各單元硬件設(shè)計說明及計算方法各單元硬件設(shè)計說明及計算方法 這部分介紹各模塊電路的硬件設(shè)計方法和成果,主要分為:輸入部分、 輸出部分、復(fù)位。對于輸入部分有時鐘和跑表功能切換鍵,有對時鐘的時、 分、秒進行調(diào)整的按鍵;而輸出部分則是電路的顯示部分,將 at89c51 的輸出與數(shù)碼管連接起來就構(gòu)成了該硬件電路的顯示部分。對于硬件個元 件的來源,我們先把單片機開發(fā)板焊接好,在焊接的過程中初步的了解一 下開發(fā)板的內(nèi)部結(jié)構(gòu)以及各元件之間的關(guān)系,
8、以便于在后續(xù)的下載連線工 作中能夠正確的、快速的連接好線,以便下載,焊接好開發(fā)板后,接下來 就是測試開發(fā)的好壞,好的話就完成了硬件的設(shè)計,壞的話就將其原因查 出重新焊接直到開發(fā)板能夠下載程序,為后續(xù)的下載做好準(zhǔn)備。下面分別 來介紹一下各個部分。 輸入部分: 在電子鐘的輸入部分,設(shè)置相應(yīng)的置數(shù)功能,通過外部設(shè)備的輸入, 如按鍵,實現(xiàn)時間的修改。在選用輸入端口時,將 p1 引腳與按鍵相連進 行輸入。設(shè)計的輸入部分如圖二: 圖二 輸出部分: 在電子鐘的輸出部分,與數(shù)碼管相連顯示出時、分、秒,在顯示中其 數(shù)字的輸出在 p0 口,數(shù)碼管有共陽和共陰之分,根據(jù)自己的軟件程序的 編寫來選擇不同的數(shù)碼管和數(shù)碼
9、管的個數(shù),以及正確的連接數(shù)碼管的驅(qū)動 電路。設(shè)計的輸出部分如圖三: 圖三 硬件的計算是簡單的計算,其要計算需要多少個數(shù)碼管來顯示,以 及多少個開關(guān)來控制該電路,本硬件電路需要五個按鍵來控制對于時、分、 秒的調(diào)整以及時鐘和跑表的切換功能和復(fù)位鍵,對于數(shù)碼管則只需要六個 來分別顯示時時:分分:秒秒或分分:秒秒:毫秒毫秒。 軟件設(shè)計與說明軟件設(shè)計與說明 程序設(shè)計流程圖(如圖四)程序設(shè)計流程圖(如圖四): 初始化 判斷按鍵 顯示 調(diào)時調(diào)分調(diào)秒 顯示所調(diào)時間顯示所調(diào)時間顯示所調(diào)時間 調(diào)整時限到或 其他輸入 跑表 顯示分顯示秒顯示毫秒 結(jié)束 按鍵2 按鍵1 按鍵3 無按鍵 圖四 結(jié)合電路,程序的總體思路分
10、析: 1、點復(fù)位鍵(即單片機的系統(tǒng)復(fù)位鍵)后,進行時鐘時間顯示,從 0 時 0 分 0 秒開始。 2、按下 second 鍵時進行校時,當(dāng) second 鍵按下 1 次對秒位進行調(diào) 時,此時按下 1 次對秒位加 1; 3、當(dāng) minute 鍵按下 1 次時對分位進行調(diào)整,此時按下 1 次對分位加 1; 4、當(dāng) hour 鍵按下 1 次時對時進行調(diào)整,此時按下 1 次久對時位加 1; 5、當(dāng) xuanze 鍵按下時,系統(tǒng)將切換到跑表功能,數(shù)碼管顯示分分:秒秒: 毫秒毫秒。 在程序設(shè)計時,盡量改進算法,算法的改進可以使相對誤差減小,或者可 以使占用空間減小。另外,分塊的設(shè)計思想要貫穿始終,整個程序
11、較為繁 雜,某些程序段會反復(fù)用到,因此采取的方法是寫出多個程序段,通過跳 轉(zhuǎn)指令進行調(diào)用。 程序設(shè)計步驟:程序設(shè)計步驟: 在程序設(shè)計過程中,我遇到了很多困難,這部分也是讓我學(xué)到很多東 西的地方。 首先,我學(xué)習(xí)了定時器的相關(guān)知識,計數(shù)器的使用是很重要的組成部 分,在這個設(shè)計中選擇計數(shù)器 t0。t0 的工作方式有: 方式 1:16 位計數(shù)器,常用 方式 2:自動重裝初值的 8 位定時/計數(shù)器 方式 3:t0 相當(dāng)于兩個獨立的 8 位定時/計數(shù)器 此程序采用方式 1,方式 1 的定時時間 t 為 t=(216-m)*12/fosc。其中 m 為定時器初值,fosc 為 12mhz,若 m 為 0 則
12、 t=65536*12/2*106=65.536ms。因此可取 10ms 為計時單位,初值 m 應(yīng)為 (216-m)*2*10-6=10*10-3。m=55536=1101100011110000b=0d8f0h。即定 時器初值為 th0=0d8h,tl0=0f0h。定時器中斷 100 次為一秒,這部分 在中斷程序中用到。 其次,我參看了文獻中的設(shè)計思路,做到胸有成竹后再進行具體的程 序書寫工作。認真學(xué)習(xí)了教科書中關(guān)于匯編語言編程的問題,熟悉了匯編 語言的編程方法和語法習(xí)慣。 第三步就是進行具體的程序編寫工作。 1、延時程序、延時程序 在動態(tài)掃描時,必然用到延遲程序,這里使用延遲 1ms 的程
13、序,用它 來消除抖動,在判斷按鍵是否按下是也用到延時程序,來消除抖動,因此 這個延時程序是來優(yōu)化該程序的。 2、主程序的設(shè)計、主程序的設(shè)計 主程序的主要功能是進行定時器 t0的初 始化,并啟動 t0,然后通過反復(fù)調(diào)用顯 示子程序,等待 10ms 定時中斷的到來, 設(shè)置 t0 為方式 1 設(shè)中斷次數(shù)為 100 清計時單元 開中斷 啟動 t0 調(diào)用顯示子程序 器流程圖如圖五所示: 主程序中是用來控制全局的,當(dāng)有中斷時則轉(zhuǎn)向中斷服務(wù)程序,中斷 服務(wù)程序執(zhí)行完后又回到主程序中,等待下一次的中斷來臨,這樣就形成 了一個循環(huán),知道系統(tǒng)暫停和復(fù)位。 3、中斷服務(wù)程序的設(shè)計、中斷服務(wù)程序的設(shè)計 中斷服務(wù)程序中
14、,總體思路是:由于初值是 d8f0h,所以裝滿定時器需要 10ms 的時間,從而 100 次中斷為一秒,一秒之后,判斷是否到 60 秒,若不到則秒加 一,然后返回,若到,則秒賦值為 0,分加一,依次類推。 4、顯示控制子程序的設(shè)計、顯示控制子程序的設(shè)計 在顯示子程序中所要顯示的是當(dāng)為時鐘時顯示時、分、秒,當(dāng)為跑表 時顯示分、秒、毫秒,所以在顯示模塊中需要一條轉(zhuǎn)至語句,通過按鍵來 分別選擇所需顯示的方向。 圖五 5、按鍵控制程序的設(shè)計、按鍵控制程序的設(shè)計 在按鍵控制程序中,首先要判斷按鍵是否按下,若按下則執(zhí)行按鍵按 下所要執(zhí)行的語句,若沒按下則繼續(xù)判斷按鍵是否按下,對于按鍵還得需 要消抖程序,使
15、得按鍵更準(zhǔn)確。 調(diào)試結(jié)果及說明調(diào)試結(jié)果及說明 軟件調(diào)試:軟件調(diào)試: 程序編寫完成后需要對程序進行編譯和調(diào)試,在編譯過程中剛開始很大可 能都有錯誤,因為這么多的程序很有可能自己的粗心而導(dǎo)致語句有錯誤, 經(jīng)過反復(fù)的編譯和調(diào)試,程序才真正的正確,在程序調(diào)試完成后,需生成 后綴名為.hex 文件,該文件是用來仿真加載到 at89c51 芯片上的,在仿 真過程中也遇到了很多的問題,比如說仿真結(jié)果和所需的不一致,這就得 改程序,還有仿真時數(shù)碼管沒有顯示,這又可能是仿真電路有問題,總之 在軟件調(diào)試過程中問題是很多的,我們得一一的解決。仿真結(jié)果如圖六所 示: a7a7 a6a6 a5a5 a4a4 a3a3
16、a2a2 a1a1 a0a0 xtal2 18 xtal1 19 ale 30 ea 31 psen 29 rst 9 p0.0/ad0 39 p0.1/ad1 38 p0.2/ad2 37 p0.3/ad3 36 p0.4/ad4 35 p0.5/ad5 34 p0.6/ad6 33 p0.7/ad7 32 p1.0 1 p1.1 2 p1.2 3 p1.3 4 p1.4 5 p1.5 6 p1.6 7 p1.7 8 p3.0/rxd 10 p3.1/txd 11 p3.2/int0 12 p3.3/int1 13 p3.4/t0 14 p3.7/rd 17 p3.6/wr 16 p3.5/
17、t1 15 p2.7/a15 28 p2.0/a8 21 p2.1/a9 22 p2.2/a10 23 p2.3/a11 24 p2.4/a12 25 p2.5/a13 26 p2.6/a14 27 u1 at89c51 second minute hour a0 2 b0 18 a1 3 b1 17 a2 4 b2 16 a3 5 b3 15 a4 6 b4 14 a5 7 b5 13 a6 8 b6 12 a7 9 b7 11 ce 19 ab/ba 1 u2 74ls245 sw1 sw-spst r1 10k r2 10k r3 10k r4 10k c1 1nf c2 1nf x1
18、crystal r5 10k r6 10k 圖六 結(jié)果說明:圖中所示從左至右數(shù)碼管顯示的是時、分、秒,圖中左下 角有四個按鍵,分別用來調(diào)整時、分、秒和時鐘和跑表的選擇。74ls245 是數(shù)碼管顯示的驅(qū)動芯片。 硬件調(diào)試:硬件調(diào)試: 對硬件調(diào)試,首先是對已經(jīng)焊接好的單片機開發(fā)板進行測試,使其能正常 工作,在測試中首先檢測知道上電后 led 燈不亮,原因是開關(guān)接反了, 其次是下不進程序,原因是 led 燈接反了,經(jīng)過反復(fù)的檢測和改進,終 于使得開發(fā)板能夠正常工作;其次是將自己所編寫好的程序下載到單片機 板上,按照程序來正確的連接端口的連線,在我們自己焊接的開發(fā)板中只 有四個數(shù)碼管,個數(shù)不夠,所以還
19、得借上一個顯示模塊來補足這數(shù)碼管的 個數(shù),將程序下載后進行調(diào)試,如果結(jié)果不對那么就根據(jù)程序和硬件的連 線來修改錯誤,直到結(jié)果正確。硬件調(diào)試結(jié)果如圖七所示: 圖七 結(jié)果說明:圖中所示從左至右數(shù)碼管顯示的是時、分、秒,圖中左下 角有四個按鍵,分別用來調(diào)整時、分、秒和時鐘和跑表的選擇。 各元件的使用說明各元件的使用說明 1、at89c51 芯片芯片 該單片機功能強大,不僅能滿足設(shè)計的需 要,也可以在設(shè)計要求的基礎(chǔ)上進行一些擴展。 在使用時 vcc 接電源電壓,gnd 接地。 p0,p1,p2,p3 可作為輸入或輸出端口,rst 是復(fù)位輸入,接復(fù)位電路。xtal1 和 xtal2 接振蕩電路。這些可以
20、在硬件設(shè)計部分體現(xiàn)出來。 在本設(shè)計中我們將 at89c51 芯片的 p1 都作為 按鍵的輸入,p0 口作為段顯示的輸出,而在仿真是 p3 口作為片選的輸出, 下載到硬件是把 p3 口作為片選的輸出,其引腳圖如圖八所示: 圖八 2、數(shù)碼管、數(shù)碼管 該數(shù)碼管是七段數(shù)碼管,其中用 a、b、c、d、e、f、g 的顯示來顯示數(shù) 字和字符,比如要顯示 0 的話,如果該數(shù)碼管是共陰極的,則 abcdefg 分別為 0111111,若是共陽的話則為 1000000,其圖如圖九所示: 圖九 3、按鍵、按鍵 本設(shè)計中用了兩種按鍵,其實脈沖式的 按鈕按下后立即抬起,另一種是開關(guān)是 的,有閉合和斷開兩個狀態(tài);用開關(guān)式
21、 的來作為時鐘和跑表的切換功能,用按 鈕來對時、分、秒的調(diào)整,其圖如圖十 所示: 圖十 總結(jié)總結(jié) 通過這次對簡易時鐘的設(shè)計,讓我了解了電路設(shè)計的基本步驟,也讓 我了解了關(guān)于時鐘的原理與設(shè)計理念,要設(shè)計一個電路先進行軟件模擬仿 真再進行實際的電路制作。但是最后的成品卻不一定與仿真時完全一樣, 因為,再實際接線中有著各種各樣的條件制約著。而且,在仿真中無法成 功的電路接法,在實際中因為芯片本身的特性而能夠成功。所以,在設(shè)計 時應(yīng)考慮兩者的差異,從中找出最適合的設(shè)計方法。通過這次學(xué)習(xí),讓我 對各種電路都有了大概的了解,所以說,坐而言不如立而行,對于這些電 路還是應(yīng)該自己動手實際。 特別是在焊接單片機
22、開發(fā)板的時候,結(jié)果自己親自的焊接對該開發(fā)板 的內(nèi)部結(jié)果以及怎樣連接和各個模塊的功能有了了解,通過對單片機的檢 測也學(xué)到了對器件和電路的檢測方法,學(xué)到了設(shè)計的思維方法,這對我是 有很到好處的,起初對于這板子一點都不怎么的了解,但經(jīng)過自己的焊接 以后對于其作用和功能有了很大的了解,如果不焊接直接買塊單片機的話 就可能對其內(nèi)部連接和功能了解的就沒這么的深刻。 通過時鐘的設(shè)計和制作,加深了對單片機的理解,能夠更熟練地應(yīng)用 單片機實現(xiàn)預(yù)期的功能,對今后的工作有很大的幫助。時鐘各項功能的實 現(xiàn),為以后的更深一步的學(xué)習(xí)單片機打下了理論基礎(chǔ),獲得了實現(xiàn)方法。 整個的課程設(shè)計過程中是非常的辛苦,比如在焊接板子的
23、時候為了快而好 的焊接好板子,我是從早一直焊接到晚上,一天沒吃飯沒喝過水,有比如 在做程序設(shè)計的時候,有時一個功能沒實現(xiàn)自己反復(fù)的在思索如何來實現(xiàn), 有時弄到凌晨幾點才睡。雖然在此過程中我吃了不少的苦,但是我學(xué)到了 很多的東西,找到了自信。 在今后的其他工作中,也可以把這次設(shè)計中的收獲運用進去,這是我 此次課程設(shè)計得到的最大財富。 課程設(shè)計是大學(xué)生活中重要階段的工作,是真正考驗我們能力的一項 教學(xué)內(nèi)容,在這個過程中我認真思考,不斷嘗試,收獲了很多在平時的課 堂上收獲不到的東西。課程設(shè)計即將結(jié)束,我會吸取課程設(shè)計中的經(jīng)驗和 教訓(xùn),在今后的工作中少走彎路。 在此設(shè)計中老師給了我很大的幫助,在我不能
24、解決的問題中給了我思 考的方向使得我能夠?qū)栴}解決,在此感謝指導(dǎo)老師的幫助。 參考文獻參考文獻 1、李建忠 編 單片機原理及應(yīng)用 西安電子科技大學(xué)出版社 2、高峰 編 單片微型計算機原理與接口技術(shù) 電子工業(yè)出版社 3、鄒逢興 編 單片機應(yīng)用新技術(shù)教程 高等教育出版社 4、朱宇光 編 16 位微型計算機原理接口及其應(yīng)用 電子工業(yè)出版社 5、吳秀清 編 微型計算機原理與接口技術(shù) 中國科學(xué)技術(shù)出版社 6、鄧亞平 編 微型計算機接口技術(shù) 清華大學(xué)出版社 7、王迎旭 編 單片機原理及及應(yīng)用 機械工業(yè)出版社 8、張毅剛 編 單片機原理及應(yīng)用 高等教育出版社 附錄附錄 附錄附錄 a a: 系統(tǒng)原理圖(如圖十
25、一): a7a7 a6a6 a5a5 a4a4 a3a3 a2a2 a1a1 a0a0 xtal2 18 xtal1 19 ale 30 ea 31 psen 29 rst 9 p0.0/ad0 39 p0.1/ad1 38 p0.2/ad2 37 p0.3/ad3 36 p0.4/ad4 35 p0.5/ad5 34 p0.6/ad6 33 p0.7/ad7 32 p1.0 1 p1.1 2 p1.2 3 p1.3 4 p1.4 5 p1.5 6 p1.6 7 p1.7 8 p3.0/rxd 10 p3.1/txd 11 p3.2/int0 12 p3.3/int1 13 p3.4/t0 1
26、4 p3.7/rd 17 p3.6/wr 16 p3.5/t1 15 p2.7/a15 28 p2.0/a8 21 p2.1/a9 22 p2.2/a10 23 p2.3/a11 24 p2.4/a12 25 p2.5/a13 26 p2.6/a14 27 u1 at89c51 second minute hour a0 2 b0 18 a1 3 b1 17 a2 4 b2 16 a3 5 b3 15 a4 6 b4 14 a5 7 b5 13 a6 8 b6 12 a7 9 b7 11 ce 19 ab/ba 1 u2 74ls245 sw1 sw-spst r1 10k r2 10k r3
27、 10k r4 10k c1 1nf c2 1nf x1 crystal r5 10k r6 10k 圖十一 附錄附錄 b: 程序清單: s_set bitp1.0;數(shù)字鐘秒控制位 m_set bitp1.1;分鐘控制位 h_set bitp1.2;小時控制位 x_set bitp1.3;時鐘跑表控制位 z_set bit p1.4 msecond equ30h secondequ31h minuteequ32h hour equ33h tcntequ35h org00h sjmpstart org0bh ljmpint_t0 start:movdptr,#table movhour,#0;初
28、始化 movminute,#0 movsecond,#0 movmsecond,#0 movtcnt,#0 movtmod,#01h movth0,#0d8h ;定時 10 毫秒 movtl0,#0f0h movie,#82h setbtr0 ;* ;判斷是否有控制鍵按下,是哪一個鍵按下 a1:lcall display jnbs_set,s1 jnbm_set,s2 jnbh_set,s3 ljmp a1 s1: lcall delay ;去抖動 jbs_set,a1 incsecond ;秒值加 1 mova,second cjnea,#60,j0 ;判斷是否加到 60 秒 movseco
29、nd,#0 ljmpk1 s2: lcall delay jbm_set,a1 k1: incminute ;分鐘值加 1 mova,minute cjnea,#60,j1 ;判斷是否加到 60 分 movminute,#0 ljmpk2 s3: lcall delay jbh_set,a1 k2: inchour ;小時值加 1 mova,hour cjnea,#24,j2 ;判斷是否加到 24 小時 movhour,#0 movminute,#0 movsecond,#0 ljmpa1 ;* ;等待按鍵抬起 j0:jbs_set,a1 lcall display sjmpj0 j1:jbm
30、_set,a1 lcall display sjmpj1 j2:jbh_set,a1 lcall display sjmpj2 ;* ;定時器中斷服務(wù)程序,對毫秒.秒.分鐘和小時的計數(shù) int_t0:movth0,#0d8h movtl0,#0f0h inctcnt mova,tcnt incmsecond ;計時毫秒 cjne a, #100,retune incsecond ;計時 1 秒 mov tcnt,#0 movmsecond,#0 mova,second cjnea,#60,retune incminute movsecond,#0 mova,minute cjnea,#60,retune inchour movminute,#0 mova,hour cjnea,#24,retune movhour,#0 movminute,#0 movsecond,#0 movtcnt,#0 retune:reti ;* ;顯示控制子程序 display:jnb x_set,pb sz: mova,second ;顯示秒 movb,#10 divab clrp3.6 movc a,a+dptr movp0,a lcall delay setbp3.6 mova,b clrp3.7 movc a,a+dptr movp0,a lcall
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 茶園有機種植與產(chǎn)品銷售合同
- 現(xiàn)代化工廠廠長任用與職業(yè)規(guī)劃合同
- 老師制作課件的職業(yè)
- 金屬材料典當(dāng)質(zhì)押貸款協(xié)議
- 美術(shù)臉譜說課課件
- 美術(shù)開學(xué)介紹課件
- 美術(shù)創(chuàng)意兒童課件
- 安全生產(chǎn)事故會議內(nèi)容
- 安全生產(chǎn)智慧化管理
- 安全行車心得體會部隊
- 勞動教育與數(shù)學(xué)作業(yè)深度融合 全面培養(yǎng)學(xué)生的勞動素養(yǎng)
- 中國質(zhì)譜儀行業(yè)發(fā)展趨勢及發(fā)展前景研究報告2025-2028版
- 2025至2030中國直聯(lián)式真空泵行業(yè)市場現(xiàn)狀分析及競爭格局與投資發(fā)展報告
- 催乳師職業(yè)資格培訓(xùn)課件
- 人工智能技術(shù)在醫(yī)療行業(yè)應(yīng)用案例研究報告
- 2025年高考云南卷歷史高考真題(無答案)
- 痛風(fēng)治療與護理課件
- 2025-2030中國輔助生殖技術(shù)行業(yè)市場發(fā)展趨勢與前景展望戰(zhàn)略研究報告
- 中醫(yī)茶飲培訓(xùn)課件模板
- (湖北省高考卷)2024年湖北省普通高中學(xué)業(yè)水平選擇性考試高考物化生+政史地真題試卷及答案
- 康養(yǎng)醫(yī)養(yǎng)中心建設(shè)項目可行性研究報告
評論
0/150
提交評論