版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p> 多功能電子數(shù)字鐘設(shè)計(jì) </p><p> 數(shù)字鐘在日常生活中最常見(jiàn),應(yīng)用也最廣泛。本文主要就是設(shè)計(jì)一款數(shù)字鐘,以89C52單片機(jī)為核心,配備液晶顯示模塊、時(shí)鐘芯片、等功能模塊。數(shù)字鐘采用24小時(shí)制方式顯示時(shí)間,定時(shí)信息以及年月日顯示等功能。文章的核心主要從硬件設(shè)計(jì)和軟件編程兩個(gè)大的方面。硬件電路設(shè)計(jì)主要包括中央處理單元電路、時(shí)鐘電路、人機(jī)接口電路、信號(hào)處理電路、執(zhí)行電路等幾部分組成。軟件
2、用C語(yǔ)言來(lái)實(shí)現(xiàn),主要包括主程序、鍵盤(pán)掃描子程序、時(shí)間設(shè)置子程序等軟件模塊。關(guān)鍵詞 單片機(jī) 液晶顯示器模塊 數(shù)字鐘 </p><p> 一 硬件電路設(shè)計(jì)及描述;</p><p> 1、MCS-51單片機(jī)</p><p> 單片機(jī)是
3、在一塊硅片上集成了各種部件的微型計(jì)算機(jī)。這些部件包括中央處理器CPU、數(shù)據(jù)存儲(chǔ)器RAM、程序存儲(chǔ)器ROM、定時(shí)器/計(jì)數(shù)器和多種I/O接口電路。</p><p> 8051單片機(jī)的結(jié)構(gòu)特點(diǎn)有以下幾點(diǎn):8位CPU;片內(nèi)振蕩器及時(shí)鐘電路; 32根I/O線;外部存儲(chǔ)器ROM和RAM;尋址范圍各64KB;兩個(gè)16位的定時(shí)器/計(jì)數(shù)器; 5個(gè)中斷源,2個(gè)中斷優(yōu)先級(jí);全雙工串行口。</p><p>&l
4、t;b> 定時(shí)器/計(jì)數(shù)器</b></p><p> 8051內(nèi)部有兩個(gè)16位可編程定時(shí)器/計(jì)數(shù)器,記為T(mén)0和T1。16位是指他們都是由16個(gè)觸發(fā)器構(gòu)成,故最大計(jì)數(shù)模值為2-1。可編程是指他們的工作方式由指令來(lái)設(shè)定,或者當(dāng)計(jì)數(shù)器來(lái)用,或者當(dāng)定時(shí)起來(lái)用,并且計(jì)數(shù)(定時(shí))的范圍也可以由指令來(lái)設(shè)置。這種控制功能是通過(guò)定時(shí)器方式控制寄存器TMOD來(lái)完成的。在定時(shí)工作時(shí),時(shí)鐘由單片機(jī)內(nèi)部提供,即系統(tǒng)時(shí)鐘
5、經(jīng)過(guò)12分頻后作為定時(shí)器的時(shí)鐘。技術(shù)工作時(shí),時(shí)鐘脈沖由TO和T1輸入。</p><p><b> 中斷系統(tǒng)</b></p><p> 8051的中斷系統(tǒng)允許接受五個(gè)獨(dú)立的中斷源,即兩個(gè)外部中斷申請(qǐng),兩個(gè)定時(shí)器/計(jì)數(shù)器中斷以及一個(gè)串行口中斷。</p><p> 外部中斷申請(qǐng)通過(guò)INTO和INT1(即P3.2和P3.3)輸入,輸入方式可以使電
6、平觸發(fā)(低電平有效),也可以使邊沿觸發(fā)(下降沿有效)。</p><p> 2、8051的芯片引腳</p><p><b> 如圖1-2所示</b></p><p><b> VCC:供電電壓。</b></p><p><b> GND:接地。</b></p>
7、<p> P0口:P0口為一個(gè)8位漏極開(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外部必須被拉高。</p><p> P1口:P1口是一個(gè)內(nèi)部提供上拉電阻的8位雙向I/O口,P1口緩沖器能接收輸出
8、4TTL門(mén)電流。P1口管腳寫(xiě)入1后,被內(nèi)部上拉為高,可用作輸入,P1口被外部下拉為低電平時(shí),將輸出電流,這是由于內(nèi)部上拉的緣故。在FLASH編程和校驗(yàn)時(shí),P1口作為第八位地址接收。</p><p> P2口:P2口為一個(gè)內(nèi)部上拉電阻的8位雙向I/O口,P2口緩沖器可接收,輸出4個(gè)TTL門(mén)電流,當(dāng)P2口被寫(xiě)“1”時(shí),其管腳被內(nèi)部上拉電阻拉高,且作為輸入。并因此作為輸入時(shí),P2口的管腳被外部拉低,將輸出電流。這是由
9、于內(nèi)部上拉的緣故。P2口當(dāng)用于外部程序存儲(chǔ)器或16位地址外部數(shù)據(jù)存儲(chǔ)器進(jìn)行存取時(shí),P2口輸出地址的高八位。在給出地址“1”時(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)。</p><p> P3口:P3口管腳是8個(gè)帶內(nèi)部上拉電阻的雙向I/O口,可接收輸出4個(gè)TTL門(mén)電流。當(dāng)P3口寫(xiě)入“1”后,它們被內(nèi)部上
10、拉為高電平,并用作輸入。作為輸入,由于外部下拉為低電平,P3口將輸出電流(ILL)這是由于上拉的緣故。</p><p> P3口也可作為AT89C51的一些特殊功能口,如下表所示:</p><p> P3.0 RXD(串行輸入口);P3.1 TXD(串行輸出口);P3.2 /INT0(外部中斷0);</p><p> P3.3 /INT1(外部中斷1);P3.
11、4 T0(記時(shí)器0外部輸入);P3.5 T1(記時(shí)器1外部輸入);P3.6 /WR(外部數(shù)據(jù)存儲(chǔ)器寫(xiě)選通);P3.7 /RD(外部數(shù)據(jù)存儲(chǔ)器讀選通)</p><p> P3口同時(shí)為閃爍編程和編程校驗(yàn)接收一些控制信號(hào)。</p><p> RST:復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時(shí),要保持RST腳兩個(gè)機(jī)器周期的高電平時(shí)間。</p><p> ALE/PROG:當(dāng)訪問(wèn)外部
12、存儲(chǔ)器時(shí),地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。在平時(shí),ALE端以不變的頻率周期輸出正脈沖信號(hào),此頻率為振蕩器頻率的1/6。因此它可用作對(duì)外部輸出的脈沖或用于定時(shí)目的。然而要注意的是:每當(dāng)用作外部數(shù)據(jù)存儲(chǔ)器時(shí),將跳過(guò)一個(gè)ALE脈沖。如想禁止ALE的輸出可在SFR8EH地址上置0。此時(shí), ALE只有在執(zhí)行MOVX,MOVC指令是ALE才起作用。另外,該引腳被略微拉高。如果微處理器在外部
13、執(zhí)行狀態(tài)ALE禁止,置位無(wú)效。</p><p> /PSEN:外部程序存儲(chǔ)器的選通信號(hào)。在由外部程序存儲(chǔ)器取指期間,每個(gè)機(jī)器周期兩次/PSEN有效。但在訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器時(shí),這兩次有效的/PSEN信號(hào)將不出現(xiàn)。</p><p> /EA/VPP:當(dāng)/EA保持低電平時(shí),則在此期間外部程序存儲(chǔ)器(0000H-FFFFH),不管是否有內(nèi)部程序存儲(chǔ)器。注意加密方式1時(shí),/EA將內(nèi)部鎖定為RES
14、ET;當(dāng)/EA端保持高電平時(shí),此間內(nèi)部程序存儲(chǔ)器。在FLASH編程期間,此引腳也用于施加12V編程電源(VPP)。</p><p> XTAL1:反向振蕩放大器的輸入及內(nèi)部時(shí)鐘工作電路的輸入。</p><p> XTAL2:來(lái)自反向振蕩器的輸出。</p><p><b> ? </b></p><p> 二 設(shè)計(jì)
15、基本原理簡(jiǎn)介</p><p> 數(shù)字鐘的設(shè)計(jì)首先要保證其走時(shí)盡可能準(zhǔn)確,其次再根據(jù)人們?nèi)粘5氖褂昧?xí)慣來(lái)設(shè)定其附加功能。在設(shè)計(jì)中利用單片機(jī)定時(shí)計(jì)數(shù)器來(lái)完成走時(shí)并用兩組輸出口控制數(shù)碼管來(lái)顯示;通過(guò)編程向某一輸出口輸出方波實(shí)現(xiàn)報(bào)時(shí)及鬧鈴;利用輸入端口外接各種開(kāi)關(guān)來(lái)完成對(duì)走時(shí)及顯示的控制(如預(yù)置時(shí)間等)。</p><p><b> 1復(fù)位電路</b></p>
16、<p> MCS-51單片機(jī)的復(fù)位是由外部的復(fù)位電路來(lái)實(shí)現(xiàn)的。復(fù)位引腳RST通過(guò)一個(gè)斯密特觸發(fā)器與復(fù)位電路相連,斯密特觸發(fā)器用來(lái)抑制噪聲,在每個(gè)機(jī)器周期的S5P2,斯密特觸發(fā)器的輸出電平由復(fù)位電路采樣一次,然后才能得到內(nèi)部復(fù)位操作所需要的信號(hào)。</p><p> 上電復(fù)位:上電復(fù)位電路是—種簡(jiǎn)單的復(fù)位電路,只要在RST復(fù)位引腳接一個(gè)電容到VCC,接一個(gè)電阻到地就可以了。上電復(fù)位是指在給系統(tǒng)上電時(shí),
17、復(fù)位電路通過(guò)電容加到RST復(fù)位引腳一個(gè)短暫的高電平信號(hào),這個(gè)復(fù)位信號(hào)隨著VCC對(duì)電容的充電過(guò)程而回落,所以RST引腳復(fù)位的高電平維持時(shí)間取決于電容的充電時(shí)間。為了保證系統(tǒng)安全可靠的復(fù)位,RST引腳的高電平信號(hào)必須維持足夠長(zhǎng)的時(shí)間。</p><p><b> 2時(shí)鐘電路</b></p><p> 時(shí)鐘是單片機(jī)的心臟,單片機(jī)各功能部件的運(yùn)行都是以時(shí)鐘頻率為基準(zhǔn),有條不
18、紊的一拍一拍地工作。因此,時(shí)鐘頻率直接影響單片機(jī)的速度,時(shí)鐘電路的質(zhì)量也直接影響單片機(jī)系統(tǒng)的穩(wěn)定性。常用的時(shí)鐘電路有兩種方式:一種是內(nèi)部時(shí)鐘方式,另一種為外部時(shí)鐘方式。本文用的是內(nèi)部時(shí)鐘方式。</p><p><b> 電路圖如下:</b></p><p> MCS-51單片機(jī)內(nèi)部有一個(gè)用于構(gòu)成振蕩器的高增益反相放大器,該高增益反向放大器的輸入端為芯片引腳XTAL
19、1,輸出端為引腳XTAL2。這兩個(gè)引腳跨接石英晶體振蕩器和微調(diào)電容,就構(gòu)成一個(gè)穩(wěn)定的自激振蕩器。 按鍵電路按鍵的開(kāi)關(guān)狀態(tài)通過(guò)一定的電路轉(zhuǎn)換為高、低電平狀態(tài)。按鍵閉合過(guò)程在相應(yīng)的I/O端口形成一個(gè)負(fù)脈沖。閉合和釋放過(guò)程都要經(jīng)過(guò)一定的過(guò)程才能達(dá)到穩(wěn)定,這一過(guò)程是處于高、低電平之間的一種不穩(wěn)定狀態(tài),稱(chēng)為抖動(dòng)。抖動(dòng)持續(xù)時(shí)間的常長(zhǎng)短與開(kāi)關(guān)的機(jī)械特性有關(guān),一般在5-10ms之間。為了避免CPU多次處理按鍵的一次閉合,應(yīng)采用措施消除抖動(dòng)。本文采用的是
20、獨(dú)立式按鍵,直接用I/O口線構(gòu)成單個(gè)按鍵電路,每個(gè)按鍵占用一條I/O口線,每個(gè)按鍵的工作狀態(tài)不會(huì)產(chǎn)生互相影響。電路圖如下:</p><p><b> 4.3 按鍵電路</b></p><p> 按鍵的開(kāi)關(guān)狀態(tài)通過(guò)一定的電路轉(zhuǎn)換為高、低電平狀態(tài)。按鍵閉合過(guò)程在相應(yīng)的I/O端口形成一個(gè)負(fù)脈沖。閉合和釋放過(guò)程都要經(jīng)過(guò)一定的過(guò)程才能達(dá)到穩(wěn)定,這一過(guò)程是處于高、低電平之間的
21、一種不穩(wěn)定狀態(tài),稱(chēng)為抖動(dòng)。抖動(dòng)持續(xù)時(shí)間的常長(zhǎng)短與開(kāi)關(guān)的機(jī)械特性有關(guān),一般在5-10ms之間。為了避免CPU多次處理按鍵的一次閉合,應(yīng)采用措施消除抖動(dòng)。本文采用的是獨(dú)立式按鍵,直接用I/O口線構(gòu)成單個(gè)按鍵電路,每個(gè)按鍵占用一條I/O口線,每個(gè)按鍵的工作狀態(tài)不會(huì)產(chǎn)生互相影響。</p><p><b> 電路圖如下:</b></p><p> P1.0口表示功能移位鍵,
22、按鍵選擇要調(diào)整的年、月、日、小時(shí)、分、秒。 </p><p> P1.1口表示數(shù)字“+“鍵,按一下則對(duì)應(yīng)的數(shù)字加1。</p><p> P1.2口表示數(shù)字“-”鍵,按一下則對(duì)應(yīng)的數(shù)字減1。</p><p> P1.3口表示退去選項(xiàng),時(shí)間已經(jīng)調(diào)整好</p><p><b> 總電路原理圖</b></p>
23、<p><b> 電路的軟件設(shè)計(jì) </b></p><p><b> 1軟件程序內(nèi)容</b></p><p> 本設(shè)計(jì)的軟件程序包括主程序、中斷子程序、打鈴子程序、時(shí)鐘顯示子程序、查詢時(shí)間表切換程序和延時(shí)子程序等等。另外由于電路中有四個(gè)按鍵,還另外設(shè)計(jì)了防抖動(dòng)程序來(lái)防止干擾。</p><p> 系統(tǒng)軟
24、件設(shè)計(jì)流程圖這次的數(shù)字電子鐘設(shè)計(jì)用到很多子程序,它們的流程圖如下所示。主程序是先開(kāi)始,然后啟動(dòng)定時(shí)器,定時(shí)器啟動(dòng)后在進(jìn)行按鍵檢測(cè),檢測(cè)完后,就可以顯示時(shí)間。</p><p> 圖5-1 主程序流程圖</p><p> 按鍵處理是先檢測(cè)秒按鍵是否按下,秒按鍵如果按下,秒就加1;如果沒(méi)有按下,就檢測(cè)分按鍵是否按下,分按鍵如果按下,分就加1;如果沒(méi)有按下,就檢測(cè)時(shí)按鍵是否按下,時(shí)按鍵如果按下
25、,時(shí)就加1;如果沒(méi)有按下,就把時(shí)間顯示出來(lái)。</p><p> 圖5-2 按鍵處理流程圖</p><p> 定時(shí)器中斷時(shí)是先檢測(cè)1秒是否到,1秒如果到,秒單元就加1;如果沒(méi)到,就檢測(cè)1分鐘是否到,1分鐘如果到,分單元就加1;如果沒(méi)到,就檢測(cè)1小時(shí)是否到,1小時(shí)如果到,時(shí)單元就加1,如果沒(méi)到,就顯示時(shí)間。</p><p> 圖5-3 定時(shí)器中斷流程</p&
26、gt;<p> 時(shí)間顯示是先秒個(gè)位計(jì)算顯示,然后是秒十位計(jì)算顯示,再是分個(gè)位計(jì)算顯示,再然后是分十位顯示,再就是時(shí)個(gè)位計(jì)算顯示,最后是時(shí)十位顯示。</p><p> 5.3 定時(shí)程序設(shè)計(jì)</p><p> 單片機(jī)的定時(shí)功能也是通過(guò)計(jì)數(shù)器的計(jì)數(shù)來(lái)實(shí)現(xiàn)的,此時(shí)的計(jì)數(shù)脈沖來(lái)自單片機(jī)的內(nèi)部,即每個(gè)機(jī)器周期產(chǎn)生一個(gè)計(jì)數(shù)脈沖,也就是每經(jīng)過(guò)1個(gè)機(jī)器周期的時(shí)間,計(jì)數(shù)器加1。如果MCS-
27、52采用的12MHz晶體,則計(jì)數(shù)頻率為1MHz,即每過(guò)1us的時(shí)間計(jì)數(shù)器加1。這樣可以根據(jù)計(jì)數(shù)值計(jì)算出定時(shí)時(shí)間,也可以根據(jù)定時(shí)時(shí)間的要求計(jì)算出計(jì)數(shù)器的初值。MCS-51單片機(jī)的定時(shí)器/計(jì)數(shù)器具有4種工作方式,其控制字均在相應(yīng)的特殊功能寄存器中,通過(guò)對(duì)特殊功能寄存器的編程,可以方便的選擇定時(shí)器/計(jì)數(shù)器兩種工作模式和4種工作方式。</p><p> 定時(shí)器/計(jì)數(shù)器工作在方式0時(shí),為13位的計(jì)數(shù)器,由TLX(X=0、
28、1)的低5位和THX的高8位所構(gòu)成。TLX低5位溢出則向THX進(jìn)位,THX計(jì)數(shù)溢出則置位TCON中的溢出標(biāo)志位TFX.</p><p> 當(dāng)定時(shí)器/計(jì)數(shù)器工作于方式1,為16位的計(jì)數(shù)器。本設(shè)計(jì)師單片機(jī)多功能定時(shí)器,所以MCS-51內(nèi)部的定時(shí)器/計(jì)數(shù)器被選定為定時(shí)器工作模式,計(jì)數(shù)輸入信號(hào)是內(nèi)部時(shí)鐘脈沖,每個(gè)機(jī)器周期產(chǎn)生一個(gè)脈沖使計(jì)數(shù)器增1。</p><p> 5.3.1實(shí)時(shí)時(shí)鐘實(shí)現(xiàn)的基本
29、方法</p><p> 時(shí)鐘的最小計(jì)時(shí)單位是秒,但使用定時(shí)器的方式1,最大的定時(shí)時(shí)間也只能達(dá)到131ms。我們可把定時(shí)器的定時(shí)時(shí)間定為50ms。這樣,計(jì)數(shù)溢出20次即可得到時(shí)鐘的最小計(jì)時(shí)單位:秒。而計(jì)數(shù)20次可以用軟件實(shí)現(xiàn)。</p><p> 秒計(jì)時(shí)是采用中斷方式進(jìn)行溢出次數(shù)的累積,計(jì)滿20次,即得到秒計(jì)時(shí)。從秒到分,從分到時(shí)是通過(guò)軟件累加并進(jìn)行比較的方法來(lái)實(shí)現(xiàn)的。要求每滿1秒,則“秒
30、”單元中的內(nèi)容加1;“秒”單元滿60,則“分”單元中的內(nèi)容加1;“分”單元滿60,則“時(shí)”單元中的內(nèi)容加1;“時(shí)”單元滿24,則將時(shí)、分、秒的內(nèi)容全部清零。</p><p> 5.3.2 實(shí)時(shí)時(shí)鐘程序設(shè)計(jì)步驟 </p><p> ?。?)選擇工作方式,計(jì)算初值; </p><p> ?。?)采用中斷方式進(jìn)行溢出次數(shù)累計(jì);</p><p>
31、?。?)從秒——分——時(shí)的計(jì)時(shí)是通過(guò)累加和數(shù)值比較實(shí)現(xiàn)的;</p><p> (4)時(shí)鐘顯示緩沖區(qū):時(shí)鐘時(shí)間在方位數(shù)碼管上進(jìn)行顯示,為此在內(nèi)部RAM中要設(shè)置顯示緩沖區(qū),共6個(gè)地址單元。顯示緩沖區(qū)從左到右依次存放時(shí)、分、秒數(shù)值;</p><p> ?。?)主程序:主要進(jìn)行定時(shí)器/計(jì)數(shù)器的初始化編程,然后反復(fù)調(diào)用顯示</p><p> 子程序的方法等待中斷的到來(lái)。&
32、lt;/p><p> ?。?)中斷服務(wù)程序:進(jìn)行計(jì)時(shí)操作</p><p> (7)加1子程序:用于完成對(duì)時(shí)、分、秒的加操作,中斷服務(wù)程序在秒、</p><p> 分、時(shí)加1時(shí)共有三種條調(diào)用加1子程序,包括三項(xiàng)內(nèi)容:合字、加1并進(jìn)行十進(jìn)制調(diào)整、分字。</p><p><b> 5.4程序說(shuō)明</b></p>
33、<p> 在整個(gè)系統(tǒng)中,在單片機(jī)的30H、31H和32H中存儲(chǔ)當(dāng)前時(shí)間的小時(shí)、分鐘和秒。由于要用數(shù)碼管顯示當(dāng)前的時(shí)間,必須用到分字和合字,因此在33H、34H、35H、36H、37H和38H中存儲(chǔ)當(dāng)前時(shí)間的時(shí)十位、時(shí)個(gè)位、分十位、分個(gè)位、秒十位和秒個(gè)位,方便顯示。</p><p> 本設(shè)計(jì)有由四個(gè)輕觸按鍵組成的小鍵盤(pán),這些按鍵可以任意改變當(dāng)前的狀態(tài)。按功能移位鍵一次,表示當(dāng)前要校對(duì)小時(shí)的十位;按第
34、二次,表示當(dāng)前校對(duì)的是小時(shí)的個(gè)位;按第三次,則表示校對(duì)的是分鐘的十位;第四次,表示的校對(duì)的是分鐘的個(gè)位。按下數(shù)字“+” 鍵和數(shù)字“-”鍵可在當(dāng)前校對(duì)的數(shù)字上相應(yīng)加上1或者減去1。</p><p> 本設(shè)計(jì)采用查表方式,在程序里預(yù)先存儲(chǔ)兩個(gè)表格,即日常作息時(shí)間表和考試時(shí)間表,可以通過(guò)手動(dòng)按鍵來(lái)選擇所要執(zhí)行的時(shí)間表。并且用紅、綠發(fā)光二極管來(lái)區(qū)別當(dāng)前所執(zhí)行的時(shí)間表。系統(tǒng)開(kāi)機(jī)后,按功能移位鍵就可以調(diào)整當(dāng)前的時(shí)間,整個(gè)系
35、統(tǒng)操作簡(jiǎn)單,功能明確。</p><p> 顯示數(shù)據(jù)時(shí),先把要顯示的數(shù)據(jù)送到數(shù)據(jù)緩沖區(qū)SBUF中,再?gòu)腟BUF中顯示。串行口緩沖寄存器SBUF器是可直接尋址的專(zhuān)用寄存器。在物理上,它對(duì)應(yīng)著兩個(gè)寄存器,一個(gè)發(fā)送寄存器,一個(gè)接收寄存器。CPU寫(xiě)SBUF,就是修改發(fā)送寄存器;讀SBUF,就是讀接收寄存器。接收器是雙緩沖的,以避免在接收下一幀數(shù)據(jù)之前,CPU未能及時(shí)響應(yīng)接收器的中斷,沒(méi)有把上一幀數(shù)據(jù)讀走,而產(chǎn)生兩幀數(shù)據(jù)重
36、疊的問(wèn)題。對(duì)于發(fā)送器,為了保持最大的傳輸速率,一般不需要雙緩沖,因?yàn)榘l(fā)送時(shí)CPU是主動(dòng)的,不會(huì)產(chǎn)生寫(xiě)重疊的問(wèn)題。</p><p><b> 總程序</b></p><p> ORG 0000H ;程序入口地址LJMP STARTORG 000BH ;定時(shí)器0中斷入口地址LJMP TIMER_0K1 BIT P1.0 ;定義調(diào)時(shí)按鍵K2 BIT P1.1
37、;定義調(diào)分按鍵START: MOV TMOD,#01H ;定時(shí)器0,工作模式1MOV TH0,#03CHMOV TL0,#0B0H ;賦初值,定時(shí)50msSETB EA ;開(kāi)中斷總開(kāi)關(guān)SETB TR0 ;開(kāi)啟定時(shí)器0SETB ET0 ;定時(shí)器0中斷允許位MOV R6,#0 ;用于控制走時(shí)的基準(zhǔn)時(shí)鐘源,計(jì)中斷次數(shù)MOV R5,#0 ;R5用于控制掃描按鍵的時(shí)間間隔MOV 20H,#0 ;秒個(gè)位寄存器清零MOV 21H
溫馨提示
- 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ù)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 單片機(jī)課程設(shè)計(jì)--數(shù)字鐘電子鐘
- 單片機(jī)課程設(shè)計(jì)--多功能數(shù)字電子鐘
- 單片機(jī)課程設(shè)計(jì)— 多功能數(shù)字電子鐘
- 江蘇大學(xué)單片機(jī)課程設(shè)計(jì)-多功能數(shù)字鐘的設(shè)計(jì)
- 單片機(jī)數(shù)字鐘課程設(shè)計(jì)
- 單片機(jī)數(shù)字鐘課程設(shè)計(jì)
- 課程設(shè)計(jì)---多功能電子數(shù)字鐘
- 單片機(jī)數(shù)字時(shí)鐘課程設(shè)計(jì)--單片機(jī)多功能電子鐘設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)--智能電子數(shù)字鐘設(shè)計(jì)
- 課程設(shè)計(jì)--多功能電子數(shù)字鐘
- 單片機(jī)課程設(shè)計(jì)報(bào)告---多功能電子鐘
- 單片機(jī)課程設(shè)計(jì)數(shù)字鐘報(bào)告
- 單片機(jī)課程設(shè)計(jì)---數(shù)字鐘設(shè)計(jì)
- 多功能數(shù)字鐘課程設(shè)計(jì)報(bào)告
- 多功能數(shù)字鐘課程設(shè)計(jì)報(bào)告
- 多功能數(shù)字鐘課程設(shè)計(jì)報(bào)告
- 單片機(jī)課程設(shè)計(jì)--- 簡(jiǎn)易數(shù)字鐘
- 單片機(jī)課程設(shè)計(jì)數(shù)字鐘
- 單片機(jī)課程設(shè)計(jì)報(bào)告-數(shù)字鐘的設(shè)計(jì)
- 基于單片機(jī)的多功能數(shù)字鐘設(shè)計(jì)[開(kāi)題報(bào)告]
評(píng)論
0/150
提交評(píng)論