版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、單片機(jī)系統(tǒng)課 程 設(shè) 計(jì)基于單片機(jī)的數(shù)字秒表設(shè)計(jì)目錄第1章 數(shù)字式秒表的設(shè)計(jì)介紹5 1.1設(shè)計(jì)任務(wù)及功能要求說明5 1.2工作原理及其方法5第2章 數(shù)字式秒表硬件系統(tǒng)的設(shè)計(jì)7 2.1數(shù)字式秒表硬件系統(tǒng)各模塊功能簡要介紹7 2.1.1 at89s52簡介.7 2.1.2時(shí)鐘電路.8 2.1.3鍵盤電路8 2.1.4復(fù)位電路.9 2.1.5 驅(qū)動(dòng)及顯示電路9 2.1.6 單片機(jī)下載口電路10 2.2 數(shù)字式秒表的硬件系統(tǒng)設(shè)計(jì)圖11. 2.2.1 電路原理圖.11. 2.2.2 pcb圖11.第3章 數(shù)字式秒表軟件系統(tǒng)的設(shè)計(jì).11. 3.1 數(shù)字式秒表使用單片機(jī)資源情況11 3.2 主程序流程圖12
2、. 3.3中斷服務(wù)程序流程圖12 3.4顯示程序流程圖14 3.5軟件系統(tǒng)程序清單.14第4章 設(shè)計(jì)總結(jié)15 4.1 數(shù)字式秒表的設(shè)計(jì)結(jié)論及使用說明15 4.2 程序仿真與結(jié)果.15 4.3 誤差分析及解決方法16.總結(jié)16參考文獻(xiàn)17附錄17 第1章 數(shù)字式秒表的設(shè)計(jì)介紹1.1設(shè)計(jì)任務(wù)及功能要求說明 由單片機(jī)接收小鍵盤控制遞增計(jì)時(shí),由led 顯示模塊計(jì)時(shí)時(shí)間,顯示格式為 xx(分):xx(秒).xx,精確到0.01s的整數(shù)倍。繪制系統(tǒng)硬件接線圖,并進(jìn)行系統(tǒng)仿真和實(shí)驗(yàn)。畫出程序流程圖并編寫程序?qū)崿F(xiàn)系統(tǒng)功能。使用單片機(jī)at89s52作為主要控制芯片,以四位一體共陽極數(shù)碼顯示管通過三極管驅(qū)動(dòng)作為顯
3、示部分,設(shè)計(jì)一個(gè)具有特定功能的數(shù)字式秒表。該數(shù)字式秒表上電或按鍵復(fù)位后能自動(dòng)顯示系統(tǒng)提示符“p.”,進(jìn)入準(zhǔn)備工作狀態(tài)。該數(shù)字式秒表通過按鍵控制可實(shí)現(xiàn)開始計(jì)1時(shí)、暫停計(jì)時(shí)、連續(xù)計(jì)時(shí)、清零和停止功能。1.2工作原理及其方法 使用at89s52單片機(jī)作為核心控制部件,采用12m晶體振蕩器及微小電容構(gòu)成振蕩電路;采用s8550作為數(shù)碼管的驅(qū)動(dòng)部分;用兩個(gè)四位一體共陽極或共陰極數(shù)碼顯示管作為顯示部分,構(gòu)成數(shù)字式秒表的主體結(jié)構(gòu),配合獨(dú)立式鍵盤和復(fù)位電路完成此秒表的復(fù)位、計(jì)時(shí)、連續(xù)、清零、停止各項(xiàng)功能。對于時(shí)鐘,它有兩方面的含義:一是指為保障系統(tǒng)正常工作的基準(zhǔn)振蕩定時(shí)信號,主要由晶振和外圍電路組成,晶振頻率
4、的大小決定了單片機(jī)系統(tǒng)工作的快慢;二是指系統(tǒng)的標(biāo)準(zhǔn)定時(shí)時(shí)鐘,即定時(shí)時(shí)間,它通常有兩種實(shí)現(xiàn)方法:一是用軟件實(shí)現(xiàn),即用單片機(jī)內(nèi)部的可編程定時(shí)/計(jì)數(shù)器來實(shí)現(xiàn),但誤差很大,主要用在對時(shí)間精度要求不高的場合;二是用專門的時(shí)鐘芯片實(shí)現(xiàn),在對時(shí)間精度要求很高的情況下,通常采用這種方法。 led數(shù)碼顯示器有如下兩種連接方法:共陽極接法:把發(fā)光二極管的陽極連在一起構(gòu)成公共陽極,使用時(shí)公共陽極接+5v,每個(gè)發(fā)光二極管的陰極通過電阻與輸入端相連。共陰極接法:把發(fā)光二極管的陰極連在一起構(gòu)成公共陰極,使用時(shí)公共陰極接地。每個(gè)發(fā)光二極管的陽極通過電阻與輸入端相連。 鍵盤部分方案:鍵盤控制采用獨(dú)立式按鍵,每個(gè)按鍵的一端均接
5、地,另一端直接和p1口相連,在按鍵和p1口之間通過10k電阻與+5v電源相連。鍵盤通過檢測輸入線的電平狀態(tài)就可以很容易地判斷哪個(gè)鍵被按下了,這種方法操作速度高而且軟件結(jié)構(gòu)很簡單,比較適合按鍵較少或操作速度較高的場合,這種獨(dú)立式接口的應(yīng)用很普遍。 顯示部分方案:顯示部分采用動(dòng)態(tài)顯示。數(shù)碼管動(dòng)態(tài)顯示接口是單片機(jī)中應(yīng)用最為廣泛的一種顯示方式之一,動(dòng)態(tài)驅(qū)動(dòng)是將所有數(shù)碼管的8個(gè)顯示筆劃"a,b,c,d,e,f,g,dp"的同名端連在一起,另外為每個(gè)數(shù)碼管的公共極com增加位選通控制電路,位選通由各自獨(dú)立的i/o線控制,當(dāng)單片機(jī)輸出字形碼時(shí),所有數(shù)碼管都接收到相同的字形碼,但究竟是那個(gè)
6、數(shù)碼管會(huì)顯示出字形,取決于單片機(jī)對位選通com端電路的控制,所以我們只要將需要顯示的數(shù)碼管的選通控制打開,該位就顯示出字形,沒有選通的數(shù)碼管就不會(huì)亮。通過分時(shí)輪流控制各個(gè)數(shù)碼管的的com端,就使各個(gè)數(shù)碼管輪流受控顯示,這就是動(dòng)態(tài)驅(qū)動(dòng)。動(dòng)態(tài)顯示是利用人眼視覺暫留特性來實(shí)現(xiàn)顯示的。事實(shí)上,顯示器上任何時(shí)刻只有一個(gè)數(shù)碼管有顯示。由于各數(shù)碼管輪流顯示的時(shí)間間隔短、節(jié)奏快,人的眼睛反應(yīng)不過來,因此看到的是連續(xù)顯示的現(xiàn)象。為防止閃爍延時(shí)的時(shí)間在1ms左右,不能太長,也不能太短。本設(shè)計(jì)可采用p0口直接驅(qū)動(dòng)八段數(shù)碼管顯示。此方案成本低,而且單片機(jī)的i/o口占用較少,可以節(jié)約單片機(jī)接口資源,而且功耗更低。 此電
7、路采用單片機(jī)的p0口作為數(shù)碼顯示管的段控,采用p2口作為數(shù)碼管的位控。8個(gè)獨(dú)立式鍵盤分別接在單片機(jī)的p1口上,以及其他部分構(gòu)成數(shù)字式秒表的硬件電路。通過編寫程序使用單片機(jī)的定時(shí)計(jì)數(shù)器,以及軟件延時(shí),中斷資源來實(shí)現(xiàn)秒計(jì)時(shí)和相關(guān)控制。此數(shù)字式秒表的硬件整體結(jié)構(gòu)如圖1-1所示。at89s52電源振蕩電路復(fù)位電路獨(dú)立式鍵盤驅(qū)動(dòng)電路數(shù)碼管顯示限流圖 1-1數(shù)字式秒表的硬件結(jié)構(gòu)圖第2章 數(shù)字式秒表硬件系統(tǒng)的設(shè)計(jì)2.1數(shù)字式秒表硬件系統(tǒng)各模塊功能簡要介紹2.1.1 at89s52簡介(1) 與mcs-51產(chǎn)品相兼容;(2) 具有8kb可改寫的flash 內(nèi)部程序存儲(chǔ)器,可寫/擦1000次;(5) 256字節(jié)
8、內(nèi)部ram;(6) 32根可編程i/o口;(7)3個(gè)16位定時(shí)器/計(jì)數(shù)器。 (8) 8個(gè)中斷源;(9)可編程中串行口;(10) 低功耗空閑和掉電方式。它的價(jià)格便宜,功能強(qiáng)大,能耗低。很大程度上減少總電路的復(fù)雜性,提高了所設(shè)計(jì)系統(tǒng)的穩(wěn)定性。其芯片引腳圖如圖2-1所示。圖2-1 單片機(jī)at89s52引腳圖2.1.2時(shí)鐘電路 時(shí)鐘電路用于產(chǎn)生單片機(jī)工作所需要的時(shí)鐘信號,單片機(jī)本身就是一個(gè)復(fù)雜的同步時(shí)序電路,為了保證同步工作方式的實(shí)現(xiàn),電路應(yīng)在唯一的時(shí)鐘信號控制下嚴(yán)格地按時(shí)序進(jìn)行工作。在at89s52芯片內(nèi)部有一個(gè)高增益反相放大器,其輸入端為芯片引腳xtal1,輸出端為引腳txal2,在芯片的外部通過
9、這兩個(gè)引角跨接晶體振蕩器和微調(diào)電容,形成反饋電路,就構(gòu)成了一個(gè)穩(wěn)定的自激振蕩器。 此電路采用12mhz的石英晶體。時(shí)鐘電路如圖2-2:圖2-2 時(shí)鐘電路2.1.3鍵盤電路 本設(shè)計(jì)使用獨(dú)立式鍵盤接在單片機(jī)的p1口上但通過軟件賦予其中三個(gè)按鍵功能,其中s2是計(jì)時(shí)開始按鍵,第二功能為停止,s3為計(jì)時(shí)暫停按鍵,第二功能為繼續(xù)計(jì)時(shí)按鍵,s4是清零按鍵。注意使用時(shí)只有在暫停狀態(tài)下才能繼續(xù)計(jì)時(shí),只有在停止?fàn)顟B(tài)下才能清零,在停止時(shí)不能繼續(xù)計(jì)時(shí),在暫停時(shí)不能清零。鍵盤電路如圖2-3:圖2-3獨(dú)立式鍵盤電路圖 2.1.4復(fù)位電路 復(fù)位是單片機(jī)的初始化操作,其主要功能是把pc初始化為0000h,使單片機(jī)從0000h
10、單元開始執(zhí)行程序。除了進(jìn)入系統(tǒng)的正常初始化之外,當(dāng)由于程序運(yùn)行出錯(cuò)或操作錯(cuò)誤是系統(tǒng)處于死鎖狀態(tài)時(shí),為擺脫困境,也需要按復(fù)位鍵以重新啟動(dòng)。 rst引腳是單片機(jī)復(fù)位信號的輸入端,復(fù)位信號是高電平有效,其有效時(shí)間應(yīng)持續(xù)24個(gè)振蕩周期(即2個(gè)機(jī)器周期)以上,若使用頻率為6mhz的晶振,則復(fù)位信號持續(xù)時(shí)間應(yīng)超過4us才能完成復(fù)位操作。復(fù)位操作有上電自動(dòng)復(fù)位和按鍵手動(dòng)復(fù)位兩種方式。上電自動(dòng)復(fù)位是通過外部復(fù)位電路的電容充電來實(shí)現(xiàn)的。按鍵電平復(fù)位是通過使復(fù)位端經(jīng)電阻與vcc電源接通而實(shí)現(xiàn)的。在本設(shè)計(jì)中采用了按鍵電平復(fù)位方式,其復(fù)位電路如圖2-4所示:圖2-4 復(fù)位電路2.1.5 驅(qū)動(dòng)及顯示電路 數(shù)碼管實(shí)際上是
11、由二極管構(gòu)成發(fā)光二級管正常工作時(shí),其兩端正向壓降約為1.6v,正向電流約為10ma,為了使數(shù)碼管達(dá)到一定的亮度而又不至于由于電流過大而損壞,我們使用三極管s8550作為數(shù)碼管的驅(qū)動(dòng),同時(shí)在p0口和p2口上串上470歐姆的電阻。此處使用四位一體共陰極數(shù)碼管,由于驅(qū)動(dòng)電路決定了此處共陰極數(shù)碼管和共陽極數(shù)碼管均可以采用而且均采用共陽極代碼來編寫顯示程序,具體電路如圖2-5所示。 圖2-5 數(shù)碼管驅(qū)動(dòng)及顯示電路圖2.1.6 單片機(jī)下載口電路 下載口主要是一個(gè)十芯的座子,可以通過使用usb下載線對單片機(jī)進(jìn)行程序下載。方便整個(gè)軟件的設(shè)計(jì),也能讓我們使用起來更加方便。圖2-6 單片機(jī)下載口電路圖2.2 數(shù)字
12、式秒表的硬件系統(tǒng)設(shè)計(jì)圖2.2.1 電路原理圖 此處電路原理圖以及pcb原理圖的繪制均使用protel99軟件完成,protel99是基于win95/win nt/win98/win2000的純32位電路設(shè)計(jì)制版系統(tǒng)。protel99提供了一個(gè)集成的設(shè)計(jì)環(huán)境,包括了原理圖設(shè)計(jì)和pcb布線工具,集成的設(shè)計(jì)文檔管理,支持通過網(wǎng)絡(luò)進(jìn)行工作組協(xié)同設(shè)計(jì)功能。根據(jù)硬件接線要求設(shè)計(jì)繪制電路原理圖及pcb。具體電路圖見附錄a與附錄b。2.2.2 pcb圖 pcb圖設(shè)計(jì)時(shí),首先要使元器件盡量少,這樣既可以節(jié)約材料,又可以是布線更加短,減少干擾,同時(shí)還應(yīng)注意盡量減少線路之間的寄生電容和電感,布線時(shí)需要將線寬設(shè)置得比
13、較寬這樣可以提高腐蝕電路板時(shí)的成功率,焊盤大小也要設(shè)置的比較大,這樣在腐蝕環(huán)節(jié)和焊接環(huán)節(jié)比較容易成功。不易出現(xiàn)短線的現(xiàn)象和焊盤剝離的現(xiàn)象。雙面布線時(shí)芯片和針腳多的元件需將焊接點(diǎn)置于底層,這樣才能比較方便的焊接。 制作電路板pcb圖見附錄b。 第3章 數(shù)字式秒表軟件系統(tǒng)的設(shè)計(jì)3.1 數(shù)字式秒表使用單片機(jī)資源情況 本次電子鐘設(shè)計(jì)除了了使用單片機(jī)工作所必須的硬件資源(如連接晶振的引腳xtal1和xtal2,復(fù)位引腳reset)外,對單片機(jī)的硬件資源還做了具體的安排。(1).p0口:p0.0-p0.7作為數(shù)碼管顯示器的段控。(2).p1口:p1.0-p1.3作為獨(dú)立式鍵盤的輸入端。(3).p2口:p2
14、.0-p2.7分別控制數(shù)碼管led0-led7的位控碼驅(qū)動(dòng)。(4).定時(shí)/計(jì)數(shù)器:使用定時(shí)器0工作方式2實(shí)現(xiàn)數(shù)字式計(jì)數(shù)器的運(yùn)行。(5).專用寄存器:定時(shí)器控制寄存器tcon,通過設(shè)置該寄存器tr0位的狀態(tài)來控制定時(shí)/計(jì)數(shù)器0的啟動(dòng)/停止;中斷允許寄存器ie,通過設(shè)置該寄存器ea/et0位的狀態(tài)來設(shè)置定時(shí)/計(jì)數(shù)器0中斷允許/禁止;定時(shí)/計(jì)數(shù)器工作方式寄存器tmod,設(shè)置定時(shí)/計(jì)數(shù)器0的工作方式。3.2 主程序流程圖 main定義堆棧顯示緩沖單元清零定時(shí)器0工作方式1裝載計(jì)數(shù)初值定時(shí)開始開中斷設(shè)置循環(huán)次數(shù)調(diào)用顯示子程序等待定時(shí)中斷請求鍵盤掃描 圖3-1 主程序流程圖3.3中斷服務(wù)程序流程圖pdjw
15、現(xiàn)場保護(hù)計(jì)數(shù)器重加載循環(huán)次數(shù)減1是否滿8次毫秒值加1是否滿60毫秒緩沖清零秒值加1是否60s秒顯緩沖清零分顯示加1是否滿60分顯示清零現(xiàn)場恢復(fù)返回ynnnnyyy 圖3-2 中斷服務(wù)程序流程圖3.4顯示程序流程圖disp現(xiàn)場保護(hù)寄存器初始化顯示代碼查表送段控代碼送位控代碼延時(shí)送段控代碼位控代碼左移左移8次?恢復(fù)現(xiàn)場返回ny 圖3-3顯示程序流程圖3.5軟件系統(tǒng)程序清單 按照流程圖應(yīng)用軟件keil匯編語言編程實(shí)現(xiàn)秒表功能。程序見附錄c。 第4章 設(shè)計(jì)總結(jié)4.1 數(shù)字式秒表的設(shè)計(jì)結(jié)論及使用說明 通過設(shè)計(jì)和調(diào)試,數(shù)字式秒表能順利完成各項(xiàng)功能。上電或復(fù)位后顯示“p.”提示符,此時(shí)按1鍵便可開始計(jì)時(shí)。在
16、計(jì)數(shù)狀態(tài)下,按下2鍵即可實(shí)現(xiàn)暫停,再次按下2鍵即可實(shí)現(xiàn)繼續(xù)計(jì)數(shù),在計(jì)數(shù)狀態(tài)下按下1鍵,實(shí)現(xiàn)計(jì)數(shù)停止,在停止?fàn)顟B(tài)下按下3鍵,便可實(shí)現(xiàn)計(jì)數(shù)清零。計(jì)數(shù)狀態(tài)下按下清零鍵,無效。4.2 程序仿真與結(jié)果 我們是在keil軟件里編寫程序并編譯通過才能被硬件電路所應(yīng)用。keil的功能比較強(qiáng)大但還是有一定的缺點(diǎn)。他編譯過程中他只能檢查出所編寫的語法錯(cuò)誤,所以我們一步一步的去在硬件電路里仿真去達(dá)到我們所設(shè)計(jì)要求的功能。經(jīng)仿真修改和完善均已達(dá)到設(shè)計(jì)要求.“p.”顯示,電子鐘準(zhǔn)備狀態(tài)與電子鐘自動(dòng)運(yùn)行狀態(tài)的仿真如下圖所示。(1). “p.”顯示如圖4-1所示。圖4-1 “p”顯示圖(2). 數(shù)字式秒表準(zhǔn)備狀態(tài)仿真的顯示
17、如圖4-2所示。 圖4-2 準(zhǔn)備計(jì)時(shí)狀態(tài)(3). 數(shù)字式秒表運(yùn)行狀態(tài)的仿真如圖4-3所示。 圖4-3 4.3 誤差分析及解決方法我們可以發(fā)現(xiàn)數(shù)字式秒表計(jì)數(shù)一段時(shí)間的我們的標(biāo)準(zhǔn)時(shí)間相比較出現(xiàn)了誤差,所設(shè)計(jì)的數(shù)字式秒表比我們的標(biāo)準(zhǔn)時(shí)間要慢,而且相比較的時(shí)間越長他的時(shí)差越大。經(jīng)過分其主要原因與硬件和軟件都有關(guān)。軟件原因:我們從外部中斷請求有效到轉(zhuǎn)向中斷區(qū)入口地址所需的機(jī)器周期數(shù)來計(jì)算中斷時(shí)間,51系列單片機(jī)最短響應(yīng)時(shí)間為3個(gè)機(jī)器周期。在一般情況下中斷響應(yīng)時(shí)間通常無需考慮,但在精確定時(shí)的應(yīng)用場合需知道中斷響應(yīng)時(shí)間,以保證定時(shí)的精確控制。硬件原因:單片機(jī)的時(shí)鐘信號是由外部的振蕩電路所提供,在芯片的外部通
18、過接xatl1與xatl2這兩個(gè)引角跨接晶體振蕩器和微調(diào)電容,形成反饋電路,就構(gòu)成了一個(gè)穩(wěn)定的自激振蕩器。因?yàn)殡娮釉豢梢跃陀形覀兯O(shè)計(jì)的那么理想(電容的容量,振晶的輸出頻率)所以會(huì)造成我們的時(shí)間準(zhǔn)確。針對這樣的問題我們就能只能從上述兩個(gè)方面入手去解決。軟件方面我們可以通過計(jì)算設(shè)計(jì)子程序去減少響應(yīng)的時(shí)差。硬件部分我們可以采用一些穩(wěn)定,精確度比較高的電子元件去完善,但是在最后調(diào)試出的還是有誤差但我盡可能的減少差誤差接近理想??偨Y(jié): 同過這幾天的實(shí)驗(yàn)設(shè)計(jì),讓自己對at89s52單片機(jī)有了更深的了解,其具有計(jì)時(shí)開始、暫停及清零功能, 計(jì)時(shí)最大值為59分59.99秒, 計(jì)時(shí)精度為0.01秒。利用pr
19、oteus和keil軟件進(jìn)行了仿真, 達(dá)到了預(yù)期的效果。整體電路的計(jì)時(shí)精度高, 電路結(jié)構(gòu)簡單, 抗干擾能力強(qiáng),具有廣泛的應(yīng)用前景。作為僅僅上了一個(gè)學(xué)期單片機(jī)課后就看這些課程設(shè)計(jì)題目,感覺壓力比較大,畢竟自己還是初學(xué)者,對各方面都不是了解的很透徹,因?yàn)槎伎瓷先ザ急容^有難度,熟悉了單片機(jī)的內(nèi)容后覺得還是可以做的出來了,一開始不知道從哪里開始下手,于是問了一些人上網(wǎng)查了點(diǎn)資料,有些是c編還有些是匯編,于是參考了一下,也和別人一起探討了一下,在不斷地求知中前進(jìn),最終編成了一個(gè)完整的程序,是自己對與多練有了跟進(jìn)一步的認(rèn)識,明白動(dòng)手的重要性,努力走的更遠(yuǎn),盡自己的力為社會(huì)做一點(diǎn)貢獻(xiàn),也為自己創(chuàng)造一個(gè)未來!
20、參考文獻(xiàn)1李朝青.單片機(jī)原理及接口技術(shù)m.北京:北京航空航天大學(xué)出版社,1988.1li zhaoqing. scm theory and interface technology m. beijing: beijing aerospace university press, 1988.2李勛等.單片機(jī)實(shí)用教程m.北京:北京航空航天大學(xué)出版社,20002 li xun and so on. microcontroller practical guide m. beijing: beijing aerospace university press, 20003王幸之等.單片機(jī)應(yīng)用系統(tǒng)抗干擾技術(shù)m
21、. 北京:北京航空航天大學(xué)出版社,19993 wangxing the other. microcomputer application system interference technology m. beijing: beijing aerospace university press, 19994何為民.低功耗單片微型計(jì)算機(jī)系統(tǒng)設(shè)計(jì)m. 北京:北京航空航天大學(xué)出版社,19944 what the people. low-power single-chip micro-computer system design m. beijing: beijing aerospace univers
22、ity press, 19945李杏春等.8090單片機(jī)原理及實(shí)用接口技術(shù)m. 北京:北京航空航天大學(xué)出版社,19965 li xingchun such .8090 scm theory and practical interface technology m. beijing: beijing aerospace university press, 1996 附 錄 a 原理圖 附錄 b 程序清單;項(xiàng)目名稱:秒表;設(shè)計(jì)者:高金科;設(shè)計(jì)日期:2013年12月;led數(shù)碼管顯示器設(shè)定;p0.7-p0.0段控線,接led的顯示段dp,g,f,e,d,c,b,a ;p2.7-p2.0位控線從左至右
23、(led7,led6,led5,led4,led3,led2,led1,led0);顯示緩沖區(qū)設(shè)定從左至右依次為78h,79h,7ah,7bh,7ch,7dh,7eh,7fh ;獨(dú)立式鍵盤設(shè)定與功能;8個(gè)按鍵s1至s8分別依次接在p1.0至p1.7口線;k0的功能為復(fù)位 ;k1的功能為啟動(dòng)/停止(標(biāo)識符為22h.0當(dāng)它為1時(shí)啟動(dòng),為0時(shí)停止);k2的功能為暫停/繼續(xù)(標(biāo)識符為22h.1當(dāng)它為1時(shí)暫停,為0時(shí)繼續(xù));k3的功能為清零;常數(shù)表格; ;disbh(系統(tǒng)提示符p.字型代碼序號表);tab(共陽數(shù)碼管字型代碼表) ; ;子程序;time_1ms(定時(shí)1ms子程序);key(鍵掃描子程序)
24、;keychuli(p1口數(shù)據(jù)處理子程序);disp(數(shù)碼管顯示子程序);dl(2毫秒延時(shí)子程序);add01(入口地址為r0);存儲(chǔ)器內(nèi)容的安排;堆棧棧底7fhh; ;20h作為按鍵標(biāo)志(20h.020h.7分別對應(yīng)的是按鍵k1k8);專用寄存組1,用在顯示子程序中;系統(tǒng)起始程序區(qū) org 0000h start: ljmp main org 000bh ljmp pdjw;系統(tǒng)監(jiān)控程序區(qū) org 0030hmain: mov psw, #00h mov sp, #7fh ;確立堆棧區(qū) mov r0, #20h ;ram區(qū)首地址 mov r7, #96 ;ram區(qū)單元個(gè)數(shù) movtmod,#
25、01h setb ea setbet0ml: mov r0, #00h inc r0 djnz r7, mltsf: mov dptr, #disbh ;系統(tǒng)初始化后提示符“p.”字符代碼表首地址 mov r5, #08h mov r0, #78hdisptsf:clr a movc a, a+dptr mov r0, a inc r0 inc dptr djnz r5, disptsfkey0:lcalldisp lcall keyjb 20h.0, k1jb 20h.1, k2jb 20h.2, k3ljmp key0key00: lcall key lcall dispjb 20h.2,
26、 k3ljmp key00 k1: jb 22h.1, key0;如果此時(shí)為暫停狀態(tài),本次按鍵k1無效cpl 22h.0 jb 22h.0, k01 ;高電平則計(jì)時(shí) clr tr0 ;低電平則停止 lcall displjmp key00k01: mov 7ah, #12h ;從零開始計(jì)時(shí) mov 7dh, #12h mov 7fh, #10h mov 78h, #00h mov 79h, #00h mov 7bh, #00h mov 7ch, #00h mov 7eh, #00h mov 7fh, #00h lcall disp mov th0,#0d8h mov tl0,#0f0h set
27、b tr0;啟動(dòng)定時(shí)器 ljmp key0k2: jb 22h.0, k21 ;判斷秒表是否啟動(dòng),如不是啟動(dòng)狀態(tài)則此次按鍵無效 ljmp key0k21: cpl22h.1 jb 22h.1, k22 setb tr0 ;繼續(xù)計(jì)時(shí)ljmp key0k22: clr tr0 ;暫停秒表 lcall displjmp key0 k3:jb22h.0, key0 ;只有當(dāng)停止是,清零鍵才有效mov r0, #79h ;秒表清零 lcall clr00mov r0, #7ch lcall clr00mov r0, #7fh lcall clr00 ljmp key0pdjw: push psw pus
28、h accmov tmod, #01h ;定時(shí)器以工作方式1工作setb rs1 ;設(shè)定組號為2組clr rs0movth0,#0d8hmovtl0,#0f0hmov r0, #79hlcall add01cjne r2, #99, rett ;判斷1秒到?jīng)]待添加的隱藏文字內(nèi)容1mov r0, #7ch lcall add01cjne r2, #60, rett ;判斷60毫秒到?jīng)]lcall clr00mov r0, #7fhlcall add01cjne r2, #60h, rett ;判斷60分到?jīng)]lcall clr00rett: pop acc pop pswreti;常數(shù)表格區(qū);系統(tǒng)初
29、始化后提示符“p.”字符代碼表;disbh: db 10h,10h,10h,10h,10h,10h,10h,11h ;提示符“p.”字符序號;顯示字符段選碼表(共陽極代碼)tab: db 0c0h, 0f9h,0a4h,0b0h,99h,92h,82h,0f8h,80h ;0-8 db 90h, 88h,83h,0c6h,0a1h,86h,8eh,0ffh,0ch,0bfh ;9,a,b,c,d,e,f,滅,p.,-子程序區(qū);add01: mova, r0 dec r0swap aorl a, r0add a, #01hda amov r2, aanl a, #0fhmov r0, a mov
30、 a, r2anl a, #0f0hswap ainc r0mov r0, aretclr00: mov r0, #00h dec r0mov r0, #00hret;鍵掃描子程序key:lcall keychuli;調(diào)p1口數(shù)據(jù)處理子程序 jz exit;沒有鍵按下,轉(zhuǎn)返回 lcalldisp ;調(diào)顯示子程序去抖動(dòng) lcalldisp lcall keychuli;調(diào)p1口數(shù)據(jù)處理子程序 jz exit;沒有鍵按下,轉(zhuǎn)返回 movb,20h ;保存取反后的鍵值keysf:lcallkeychuli;調(diào)p1口數(shù)據(jù)處理子程序jzkey1 ;鍵釋放,轉(zhuǎn)恢復(fù)鍵值lcalldisplcall disp
31、 ;調(diào)顯示子程序延時(shí) ljmp keysf;等待釋放key1:mov 20h,b;鍵值送20h保存exit:ret ;子程序返回;p1口數(shù)據(jù)處理子程序keychuli:push psw;保護(hù)現(xiàn)場clr rs1 ;改變當(dāng)前寄存器組為組1setb rs0mov p1,#0ffh ;先向p1口寫1mov a,p1 ;讀p1口數(shù)據(jù)cpl a ;p1口數(shù)據(jù)取反mov 20h,a ;保存取反后的鍵值clr rs1 ;恢復(fù)當(dāng)前寄存器組為組0 clr rs0pop psw ;恢復(fù)現(xiàn)場ret ;子程序返回;顯示子程序;入口:78h,79h,7ah,7bh,7ch,7dh,7eh,7fh, disp: pushd
32、phpushdplpushaccpushpsw clr rs1 ;改變當(dāng)前寄存器組為組1 setb rs0 mov r1, #78h ;顯示緩沖存儲(chǔ)單元首地址 mov r2, #0feh ;從右至左顯示 mov r5, #08h ;循環(huán)次數(shù),即驅(qū)動(dòng)數(shù)碼管的位數(shù) disp1: mova, r1movdptr, #tabmovca, a+dptrmovp0, a ;送段控 movp2, r2 ;送位控lcalldl ;延時(shí)1毫秒mova,r2 ;位控碼送arla ;獲得新的位控碼movr2, a ;保存新的位控碼incr1 ;獲得新的顯示緩沖單元地址djnzr5,disp1 ;循環(huán)沒有結(jié)束則繼續(xù)
33、disp2:poppsw ;恢復(fù)當(dāng)前寄存器組的組號popaccpopdplpopdphret;延時(shí)1ms子程序(晶振頻率12mhz)dldl:movr7, #02hdl1:movr6, #0ffhdl2:djnzr6, dl2djnzr7, dl1retend附錄d 元器件清單元器件名稱型號數(shù)量單片機(jī)at89s521片芯片座40腳1個(gè)四位一體數(shù)碼管共陽極/共陰極2個(gè)晶振12m1個(gè)瓷片電容33pf2蜂鳴器5v1個(gè)電阻4.7k1個(gè)電阻1k3個(gè)電阻47024個(gè)電阻2001個(gè)電容22uf1個(gè)三極管s85509個(gè)排阻10k2個(gè)led指示燈紅9個(gè)單排插針8腳4排下載口10針1個(gè)溫度傳感器18b201個(gè)六腳
34、開關(guān)1個(gè)emloyment tribunals sort out disagreements between employers and employees. you may need to make a claim to an employment tribunal if: you don't agree with the disciplinary action your employer has taken against you your employer dismisses you and you think that you have been dismissed unfai
35、rly. for more informu, take advice from one of the organisations listed under further help. employment tribunals are less formal than some other courts, but it is still a legal process and you will need to give evidence under an oath or affirmation. most people find making a claim to an employm
36、ent tribunal challenging. if you are thinking about making a claim to an employment tribunal, you should get help straight away from one of the organisations listed under further help. ation about dismissal and unfair dismissal, see dismissal. you can make a claim to an employment tribunal
37、, even if you haven't appealed against the disciplinary action your employer has taken against you. however, if you win your case, the tribunal may reduce any compensation awarded to you as a result of your failure to appeal. remember that in most cases you must make an application to
38、an employment tribunal within three months of the date when the event you are complaining about happened. if your application is received after this time limit, the tribunal will not usually accept i. if you are worried about how the time limits apply to you if you are being represented by a solicit
39、or at the tribunal, they may ask you to sign an agreement where you pay their fee out of your compensation if you win the case. this is known as a damages-based agreement. in england and wales, your solicitor can't charge you more than 35% of your compensation if you win the case.you&
40、#39;re clear about the terms of the agreement. it might be best to get advice from an experienced adviser, for example, at a citizens advice bureau. to find your nearest cab, including those that give advice by e-mail, click on nearest cab.for more information about making a claim to an e
41、mployment tribunal, see employment tribunals.the (lack of) air up there watch m cay man islands-based webb, the head of fifa's anti-racism taskforce, is in london for the football association's 150th anniversary celebrations and will attend city's premier league match at chelsea on
42、sunday."i am going to be at the match tomorrow and i have asked to meet ya ya toure," he told bbc sport."for me it's about how he felt and i would like to speak to him first to find out what his experience was."uefa has opened disciplinary proceedings against cska f
43、or the "racist behaviour of their fans" during city's 2-1 win.michel platini, president of european football's governing body, has also ordered an immediate investigation into the referee's actions.cska said they were "surprised and disappointed" by toure's c
44、omplaint. in a statement the russian side added: "we found no racist insults from fans of cska."age has reached the end of the beginning of a word. may be guilty in his seems to passing a lot of different life became the appearance of the same day; may be back in the past, to oneself the p
45、aranoid weird belief disillusionment, these days, my mind has been very messy, in my mind constantly. always feel oneself should go to do something, or write something. twenty years of life trajectory deeply shallow, suddenly feel something, do it.一字開頭的年齡已經(jīng)到了尾聲?;蛟S是愧疚于自己似乎把轉(zhuǎn)瞬即逝的很多個(gè)不同的日子過成了同一天的樣子;或許是追
46、溯過去,對自己那些近乎偏執(zhí)的怪異信念的醒悟,這些天以來,思緒一直很凌亂,在腦海中不斷糾纏??傆X得自己似乎應(yīng)該去做點(diǎn)什么,或者寫點(diǎn)什么。二十年的人生軌跡深深淺淺,突然就感覺到有些事情,非做不可了。the end of our life, and can meet many things really do?而窮盡我們的一生,又能遇到多少事情是真正地非做不可?during my childhood, think lucky money and new clothes are necessary for new year, but as the advance of the age, will be
47、 more and more found that those things are optional; junior high school, thought to have a crush on just means that the real growth, but over the past three years later, his writing of alumni in peace, suddenly found that isn't really grow up, it seems is not so important; then in high school, t
48、hink don't want to give vent to out your inner voice can be in the high school children of the feelings in a period, but was eventually infarction when graduation party in the throat, later again stood on the pitch he has sweat profusely, looked at his thrown a basketball hoops, suddenly found himself has already can't remember his appearance.童年時(shí),覺得壓歲錢和新衣服是過年必備,但是隨著年齡的推進(jìn),會(huì)越來越發(fā)現(xiàn),那些東西根本就可有可無;初中時(shí),以為要有一場暗戀才意味著真正的成長,但三年過去后,自己心平氣和的寫同學(xué)錄的時(shí)候,突然就發(fā)現(xiàn)是不是真正的成長了,好像并沒有那么重要了;然后到了高中,覺得非要吐露出自己的心聲才能為高中生涯里的懵懂情愫劃上一個(gè)句點(diǎn),但畢業(yè)晚會(huì)的時(shí)
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- MPB客車相關(guān)項(xiàng)目投資計(jì)劃書
- 教育公平與資源分配研究計(jì)劃
- 影視動(dòng)畫制作委托合同三篇
- 《證券從業(yè)資格考試》課件
- 《證券定價(jià)》課件
- 《重要客戶服務(wù)培訓(xùn)》課件
- 【大學(xué)課件】數(shù)字程控交換技術(shù)
- 《計(jì)算公式培訓(xùn)》課件
- 主管藥師技術(shù)報(bào)告范文
- 《光學(xué)測量技術(shù)》課件-第3章
- 以問題為導(dǎo)向的教學(xué)設(shè)計(jì)與實(shí)踐
- 2024年大學(xué)試題(經(jīng)濟(jì)學(xué))-流通經(jīng)濟(jì)學(xué)筆試歷年真題薈萃含答案
- 2023年民航職業(yè)技能鑒定《機(jī)場控制區(qū)通行證》考試全真模擬易錯(cuò)、難點(diǎn)匯編叁(帶答案)試卷號:17
- 心肺復(fù)蘇患者體溫管理
- 南京市鼓樓區(qū)2023-2024學(xué)年八年級上學(xué)期期末英語試卷(含答案解析)
- 氧氣吸入法健康宣教
- 江蘇省南京市建鄴區(qū)重點(diǎn)中學(xué)2023-2024學(xué)年七年級上學(xué)期期末數(shù)學(xué)試題(含答案)
- 關(guān)于書香家庭閱讀情況簡介【六篇】
- 心梗合并消化道出血的治療
- 建設(shè)施工三級安全教育課件
- 電能質(zhì)量技術(shù)監(jiān)督培訓(xùn)課件
評論
0/150
提交評論