畢業(yè)設計----基于at89c系列的電子萬年歷設計_第1頁
已閱讀1頁,還剩36頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、<p>  畢 業(yè) 設 計(論 文)</p><p>  設計(論文)題目: 基于At89C系列的 </p><p><b>  電子萬年歷 </b></p><p>  系 別: 電子工程系 1</p><p>  專 業(yè): 通信工程 1</p

2、><p>  班 級: </p><p>  姓 名: </p><p>  學 號: 1</p><p>  指導教師: </p><p>  完成時間: </p&

3、gt;<p><b>  摘要</b></p><p>  在當代繁忙的工作與生活中,時間與我們每一個人都有非常密切的關系,每個人都受到時間的影響。我們必須對時間有一個度量,因此產生了鐘表。鐘表的發(fā)展是非常迅速的,從剛開始的機械式鐘表到現(xiàn)在普遍用到的數(shù)字式鐘表,即使現(xiàn)在鐘表千奇百怪,但是它們都只是完成一種功能——計時,只是工作原理不同而已,在人們的使用過程中,逐漸發(fā)現(xiàn)了鐘表的功

4、能太單一,沒有更大程度上的滿足人們的需求。因此在這里,我想能不能把一些輔助功能加入鐘表中去。在此設計中所設計的鐘表具有鐘表的功能。</p><p>  本系統(tǒng)采用了以廣泛使用的單片機技術為核心,軟硬件結合,使硬件部分大為簡化,提高了系統(tǒng)穩(wěn)定性,并采用LCD顯示電路、鍵盤電路,本方案設計出的萬年歷可以顯示日期時間、農歷,設置鬧鈴功能。</p><p>  In busy job of the

5、 present age and life, time has very close something to do with all of us , everyone all accepts the time effect. we must have a magnanimity to time , have produced clock and watch therefore. Development of clock and wat

6、ch is very prompt , use clock and watch to the digital from just originally mechanical dyadic clock and watch to now commonly, even if now clock and watch is exceedingly strange, they accomplish but one kind of time func

7、tion of function all only , are only opera</p><p>  And the monolithic machine technology that this system has adopt to use broad usage has been that core , soft hardware combine , the hardware part has faci

8、litated a messenger extremely , has raised system stability, adopt LCD demonstrates circuit , keyboard circuit , The perpetual calendar that the scheme designs out can demonstrate date time , unar calendar , set up the n

9、oisy bell function.</p><p>  關鍵字:AT89C52、字符液晶顯示模塊、DS1302</p><p><b>  目 錄</b></p><p>  摘 要…………………………………………………………………………………………………………2</p><p>  關鍵字…………………

10、…………………………………………………………………………………………2</p><p>  第一章 概 述……………………………………………………………………………………………………4</p><p>  1.1 課題的背景研究意義………………………………………………………………………………………4</p><p>  1.2 本課題實現(xiàn)的功能及要求……………………

11、……………………………………………………………4</p><p>  1.3 方案論證……………………………………………………………………………………………………4</p><p>  1.4 章節(jié)安排……………………………………………………………………………………………………4</p><p>  第二章 系統(tǒng)硬件設計</p><p>  

12、2.1 硬件電路設計總框圖………………………………………………………………………………………5</p><p>  2.2 主控制器AT89C52的介紹…………………………………………………………………………………5</p><p>  2.3 其余應用電路的介紹………………………………………………………………………………………8</p><p><b>

13、  第三章 軟件設計</b></p><p>  3.1 軟件設計總述……………………………………………………………………………………………13</p><p>  3.2 程序模塊介紹……………………………………………………………………………………………13</p><p>  第四章 調試和總結</p><p>  4.1

14、 硬件調試…………………………………………………………………………………………………20</p><p>  4.2 軟件調試…………………………………………………………………………………………………20</p><p>  4.3 聯(lián)調………………………………………………………………………………………………………21</p><p>  第五章 心得體會…………

15、…………………………………………………………………………………22</p><p><b>  參考文獻 </b></p><p>  附錄一 匯編源程序…………………………………………………………………………………………23</p><p>  附錄二 仿真電路圖…………………………………………………………………………………………35<

16、/p><p>  附錄三 參考文獻……………………………………………………………………………………………36</p><p><b>  第一章 概述</b></p><p>  1.1 課題的背景、研究意義 </p><p>  隨著電子技術的迅速發(fā)展,時間的流逝,從觀察太陽、擺鐘到現(xiàn)在的電子鐘, 人類不斷研究、不斷

17、 創(chuàng)新?,F(xiàn)市場的電子鐘具有低功耗的實時時鐘電路,它們可以對年、月、日、周日、時、分、秒進行計時,還具有潤年補償?shù)裙δ?,且使用壽命長、誤差小、使用方便。電子萬年歷的出現(xiàn)給人們的生活帶來的諸多方便。目前,國際上的電子萬年歷正從模擬式向數(shù)字式、由集成化向智能化的方向飛速發(fā)展。</p><p>  綜上所述此萬年歷

18、具有讀取方便、顯示直觀、功能多樣、電路簡潔、成本低廉等諸多優(yōu)點,符合電子儀器儀表的發(fā)展趨勢,具有廣闊的市場前景。</p><p>  1.2實現(xiàn)的功能及要求 </p><p><b> ?。ǎ保┗疽?</b></p><p> ?、倬哂心?、月、日、星期、時、分、秒等功能;</p><p> ?、诰邆淠辍⒃?、日、星期、

19、時、分、秒校準功能 。</p><p> ?、坌蕰r具有閃爍功能。</p><p>  ( 2 ) 創(chuàng)新要求</p><p>  具有上、下課響鈴功能;</p><p><b>  1.3 方案論證</b></p><p>  顯示模塊選擇方案和論證:</p><p>  

20、方案一:采用LED數(shù)碼管動態(tài)掃描,LED數(shù)碼管價格適中,對于顯示數(shù)字最合適,而且采用動態(tài)掃描法與單片機連接時,占用的單片機口線少。但這里顯示位數(shù)多,所要求的數(shù)碼管多,成本更高。</p><p>  方案二:采用LCD液晶顯示屏,液晶顯示屏的顯示功能強大,可顯示大量文字,圖形,顯示多樣,清晰可見,雖價格昂貴,但接口線多,所以在此設計中采用LCD液晶顯示屏。</p><p>  時鐘芯片的選擇

21、方案和論證:</p><p>  方案一:采用DS1302時鐘芯片實現(xiàn)時鐘,DS1302芯片是一種高性能的時鐘芯片,可自動對秒、分、時、日、周、月、年以及閏年補償?shù)哪赀M行計數(shù),而且精度高,結構簡單。所以采用DS1302時鐘芯片。</p><p>  方案二:直接采用單片機定時計數(shù)器提供秒信號,使用程序實現(xiàn)年、月、日、星期、 時、分、秒計數(shù)。采用此種方案雖然減少芯片的使用,節(jié)約成本,但是,

22、實現(xiàn)的時間誤差較大。且算法復雜,所以不采用此方案。</p><p>  經論證本次設計采用采用AT89S52作為主控制系統(tǒng); DS1302提供時鐘; 采用LCD液晶作為顯示。</p><p><b>  1.4章節(jié)安排</b></p><p><b>  第一章概述</b></p><p><

23、b>  第二章系統(tǒng)硬件設計</b></p><p><b>  第三章系統(tǒng)軟件設計</b></p><p><b>  第四章調試</b></p><p><b>  第五章心得體會</b></p><p>  第二章 系統(tǒng)硬件設計</p>&

24、lt;p>  2.1硬件的設計總框圖</p><p>  本次設計的基于單片機控制的電子萬年歷,其具有年、月、日、星期、時、分、秒的顯示等功能;具有時間與陰、陽歷能夠自動關聯(lián);可以設置鬧鈴的功能。其具體實現(xiàn)過程就是由主控制發(fā)送信息給DS1302時鐘芯片再由時鐘芯片反饋給單片機,再由主控制器傳送給LCD顯示信息。并且可以在鍵盤設置模塊輸入修改時間,設置鬧鈴等信息,當鍵盤設置時間、日期時,單片機主控制根據(jù)輸入信

25、息,通過串口通信傳送給DS1302時鐘芯片,DS1302芯片讀取當前新信息產生反饋傳送給單片機,然后單片機根據(jù)控制最后輸送顯示信息到LCD模塊上顯示。</p><p>  2.2主控制器AT89C52介紹 </p><p>  1.AT89C52功能介紹</p><p>  AT89C52是8字節(jié)FLASH閃速存儲器,256字竹內部RAM , 32個I/O口線,3個

26、16 位定時/計數(shù)器,一個6向量兩級中斷結構,一個全雙工串行通信口,片內振蕩器及時鐘電路。同時,AT89c52可降至OHz的靜態(tài)邏輯操作,并支持兩種軟件可選的節(jié)電上作模式??臻e方式停止CPU 的工作,但允許RAM,定時/計數(shù)器.串行通信口及中斷系統(tǒng)繼續(xù)工作。掉電方式保存RAM 中的內容,但振蕩器停止工作并禁止其它所有部件工作直到下一個硬件復位.</p><p><b>  2.功能引腳說明:</b

27、></p><p><b>  Vcc:電源電壓</b></p><p><b>  GND:地</b></p><p>  P0:P0口是一組8位漏極開路型雙向1/O 口,也即地址/數(shù)據(jù)總線復用口。作為輸出口用時.每位能吸收電流的方式驅動8個TTL 邏輯門電路,對端口P0 寫“1”時,可作為高阻抗輸入端用。<

28、/p><p>  在訪問外部數(shù)據(jù)存儲器或程序存儲器時,這組口線分時轉換地址(低8位)和數(shù)據(jù)總線復用,在訪問期間激活內部 上拉電阻。</p><p>  在FLASH由編程時,P0口接收指令字節(jié),而在程序校驗時,輸出指令字 節(jié),校驗時,要求外接上拉電阻。</p><p>  P1口:PI 是一個帶內部上拉電阻的8位雙向I/O口,Pl的輸出緩沖級可驅動(吸收或輸出電流4個T

29、TL邏輯門電路。對端口寫“1”,通過內部的上拉電阻把端口拉到高電平,此時可作輸入口。作 輸入口使用時,因為內部存在上拉電阻某個引腳被外部信號拉低時會輸出一個電流IIL</p><p>  與AT89C51不同之處是,Pl.0 和P1.1還可分別作為定時/計數(shù)器2 的外部計數(shù)輸入(Pl.0/T2 )和輸入(P1.1/T2EX) , </p><p>  FLASH編程和程序校驗期間,Pl接收

30、低8位地址。</p><p>  PI.O 和PI.l 的第二功能:</p><p>  P2 是一個帶有內部上拉電阻的8位雙向I/O口,P2的輸出緩沖級可驅動(吸收或輸出電流)4個TTL邏輯電路。對端口P2寫“l(fā)",通過內部的上拉電阻把端口拉到高電平,此時可作輸入口, 作輸入口使用時,因為內部存在上拉電阻,某個引腳被外部信號拉低時會輸出一個電流(llt )。

31、</p><p>  在訪問外部程序存儲器或16位地址的外部數(shù)據(jù)存儲器,P2送出高8 位地址數(shù)據(jù)。在訪問8位地址的外部數(shù)據(jù)存儲器、如執(zhí)行MOVX@RI指令)時,P2口輸出P2鎖存器的內容。</p><p>  FLASH編程或校驗時,P2亦接收高位地址和一些控制信號。</p><p>  P3口:P3口是一組帶有內部上拉電阻的8位雙向I/O口。P3口輸出緩沖級可驅動

32、(吸收或輸出電流)4個TTL邏輯門電路。對P3口寫入“1”時,它們被內部上拉電阻拉高并可作為輸入端口。此時,被外部拉低的P3口將用上拉電阻輸出電流(IIL) . </p><p>  P3口除了作為一般的I/0口線外,更重要的用途是它的第二功能,如下表所示:</p><p>  P3.0 RXD(串行輸入口〕 </p><p>  P3.1 TXD(串行輸出口〕 &

33、lt;/p><p>  P3.2 INTO(外中斷0〕 </p><p>  P3.3 INTO(外中斷l(xiāng)) </p><p>  P3.4 TO (定時/計數(shù)器0 ) </p><p>  P3.5 Tl (定時/計數(shù)器l ) </p><p>  P3.6 WR(外部數(shù)據(jù)存儲器寫選通) </p><

34、p>  P3.7 RD(外部數(shù)據(jù)存儲器讀選通) </p><p>  此外,P3口還接收一些用于FLASH閃速存儲器編程和程序校驗的控制信號。</p><p>  RST:復位輸入。當振蕩器工作時,RST引腳出現(xiàn)兩個機器周期以上高電平將使單片機復位。</p><p>  ALE/PROG:當訪問外部程序存儲器或數(shù)據(jù)存儲器時,ALE(地址鎖存允許)輸出脈沖用于鎖

35、存地址的低8位字節(jié).一般情況下,ALE仍以時鐘振蕩頻率的1/6輸出固定的脈沖信號,因此它可對外輸出時鐘或用于定時目的。要注意的是:每當訪問外部數(shù)據(jù)存儲器時將跳過一個ALE脈沖。對Flash存儲器編程期間,該引腳還用于輸入編程脈沖(PROG)。如有必要,可通過對特殊功能寄存器(SFR)區(qū)中的8EH單元的D0位置位.可禁止ALE操作。該位置位后,只有一條MOVX和MOVC指令才能將ALE激活,此外,該引腳會被微弱拉高,單片機執(zhí)行外部程序時,

36、應設置ALE禁止位無效。</p><p>  PSEN:程序儲存允許PSEN輸出是外部程序存儲器的讀選通信號,當AT89C52由外部程序存儲器取指令(或數(shù)據(jù))時,每個機器周期兩次PSEN有效,即輸出兩個脈沖。在此期間,當訪問外部數(shù)據(jù)存儲器,將跳過兩次PSEN信號。</p><p>  EA/VPP:外部訪問允許。欲使CPU 僅訪問外部程序存儲器(地址為0000H-FFFFH ) , EA端

37、必須保持低電平(接地).需注怠的是:如果加密位LBI被編程,復位時內部會鎖存EA端狀態(tài)。</p><p><b>  3.最小系統(tǒng)</b></p><p>  單片機最小系統(tǒng)包括時鐘電路、電源和復位電路等,是單片機工作的基本要求。單片機控制整個系統(tǒng)的工作,一方面讀取日歷時鐘芯片中的日期等數(shù)據(jù),檢測是否需要設置,并處理相應的按鍵。另一方面,控制顯示器的工作,將各種數(shù)據(jù)送

38、到液晶顯示器去顯示。</p><p><b>  時鐘電路</b></p><p>  80C52型單片機內有一增益反相放大器,振蕩頻率取決于石英晶體的振蕩頻率。范圍可取1。2—12MHZ,C01、C02主要起頻率微調和穩(wěn)定作用。</p><p><b>  復位電路</b></p><p>  單

39、片機在開關機時都需要復位,以便中央處理器CPU及其他功能部件都RC構成處于一個確定的初始狀態(tài),并從這個狀態(tài)開始工作。80C51的RST引腳是復位信號的輸入端。復位信號高電平有效,持續(xù)時間需要24個時鐘周期以上。</p><p>  RC構成微分電路,在接電瞬間,產生一個微分脈沖,其寬度若大于2個機器周期,80C51型單片機將復位。為保證微分脈沖寬度足夠大,RC時間常數(shù)應大于2個機器周期。一般取10uF電容、8.2

40、K歐姆電阻。</p><p><b>  4.振蕩器特性:</b></p><p>  XTAL1和XTAL2分別為反向放大器的輸入和輸出。該反向放大器可以配置為片內振蕩器。石晶振蕩和陶瓷振蕩均可采用。如采用外部時鐘源驅動器件,XTAL2應不接。有余輸入至內部時鐘信號要通過一個二分頻觸發(fā)器,因此對外部時鐘信號的脈寬無任何要求,但必須保證脈沖的高低電平要求的寬度。<

41、;/p><p><b>  2.3其余電路介紹</b></p><p><b>  2.3.1顯示電路</b></p><p>  液晶顯示器的接口有兩種:一種是總線式接口電路方式;另一種是非總線接口電路方式??偩€式接口方式是把液晶顯示器看做外部的數(shù)據(jù)存儲器,訪問液晶顯示器就像訪問數(shù)據(jù)存儲器的一個單元一樣,采用這種方式能充分發(fā)

42、揮單片機的總線讀寫功能,便于升級和擴展。而非總線方式是直接利用IO口進行讀寫,較靈活,不便于升級。這里采用總線式接口方式。接口時要注意顯示器的功能信號E是高電平有效,所以要取反。這里使用的液晶顯示器為LCD1602為字符點陣式液晶顯示器??梢燥@示16×2個字符,而要顯示日期字符有23個,可以滿足要求。</p><p>  1、LCD模塊接口引腳功能</p><p>  液晶顯示模

43、塊具有體積小、功耗低、顯示內容豐富、超薄輕巧等優(yōu)點,在袖珍式儀表和低功耗應用系統(tǒng)中得到廣泛的應用。目前字符型液晶顯示模塊已經是單片機應用設計中最常用的信息顯示器件。這里向大家介紹一款LCD1602液晶顯示模塊,它可以顯示兩行,每行16個字符,采用單+5V電源供電,外圍電路配置簡單,價格便宜,具有很高的性價比。</p><p><b>  2. 硬件電路</b></p><

44、p>  DS1302的4、5、6的三個管腳是其控制位。其7、8、9、10、11、12、13、14管腳是總線接口。1管腳是電源地。2管腳是電源接口。</p><p>  3、LCD1602與AT89c52的接口</p><p>  AT89c52的P1口直接與液晶模塊的數(shù)據(jù)總線D0~D7相連;P2 口的0,1,2腳分別與液晶模塊的RS、RW、E腳相連?;瑒幼?阻器用于調整液晶顯示的亮度

45、。</p><p>  液晶顯示器的接口有兩種:一種是總線式接口電路方式;另一種是非總線接口電路方式??偩€式接口方式是把液晶顯示器看做外部的數(shù)據(jù)存儲器,訪問液晶顯示器就像訪問數(shù)據(jù)存儲器的一個單元一樣,采用這種方式能充分發(fā)揮單片機的總線讀寫功能,便于升級和擴展。而非總線方式是直接利用IO口進行讀寫,較靈活,不便于升級。這里采用總線式接口方式。接口時要注意顯示器的功能信號E是高電平有效,所以要取反。這里使用的液晶顯示

46、器為LCD1602為字符點陣式液晶顯示器。可以顯示16×2個字符,而要顯示日期字符有23個,可以滿足要求。</p><p><b>  2.3.2時鐘電路</b></p><p>  DS1302的引腳排列,其中Vcc1為后備電源,VCC2為主電源。在主電源關閉的情況下,也能保持時鐘的連續(xù)運行。DS1302由Vcc1或Vcc2兩者中的較大者供電。當Vcc2大

47、于Vcc1+0.2V時,Vcc2給DS1302供電。當Vcc2小于Vcc1時,DS1302由Vcc1供電。X1和X2是振蕩源,外接32.768kHz晶振。RST是復位/片選線,通過把RST輸入驅動置高電平來啟動所有的數(shù)據(jù)傳送。RST輸入有兩種功能:首先,RST接通控制邏輯,允許地址/命令序列送入移位寄存器;其次,RST提供終止單字節(jié)或多字節(jié)數(shù)據(jù)的傳送手段。當RST為高電平時,所有的數(shù)據(jù)傳送被初始化,允許對DS1302進行操作。如果在傳送

48、過程中RST置為低電平,則會終止此次數(shù)據(jù)傳送,I/O引腳變?yōu)楦咦钁B(tài)。上電運行時,在Vcc>2.0V之前,RST必須保持低電平。只有在SCLK為低電平時,才能將RST置為高電平。I/O為串行數(shù)據(jù)輸入輸出端(雙向),后面有詳細說明。SCLK為時鐘輸入端。 下圖為DS1302的引腳功能圖:</p><p>  引腳功能(如圖 6)</p><p>  VCC1.VCC2:電源引腳 。

49、 </p><p>  其中VCC2接主電源 .VCC1接備用電源。 </p><p>  GND:接地。輸出數(shù)據(jù)。</p><p>  X1、X2:32.768kHz。晶振引腳。</p><p>  RST為復位端,高電平時允許I/O端進行數(shù)據(jù)傳輸,低電平則禁止數(shù)據(jù)傳送且使I/O端呈高阻狀態(tài);I/

50、O為串行數(shù)據(jù)輸入、輸出端,所有輸入、輸出數(shù)據(jù)的傳送順序均以最低位LSB打頭,最高位MSB結束;SCLK為同步時鐘脈沖端,其上升沿將I/O端數(shù)據(jù)按位寫入DS1302,下降沿使DS1302按位輸出數(shù)據(jù)至I/O端;VCC2、VCC1為主電源和備份電源端,當主電源VCC2大于備份電源VCC1+0.2V時,由VCC2對芯片供電,否則,由VCC1對芯片供電。工作電壓范圍為2.5~5.5 V,工作電源和備份電源雙引腳輸入,功耗很低,當工作電壓為2.5

51、 V時正常工作,所需電流不超過300 nA。另外,如果選擇了涓流充電功能,在正常情況下,主電源還可對備份電源進行慢速充電,有效延長了備份電源的使用壽命,保證了系統(tǒng)時間的連續(xù)可靠運行。</p><p>  內部有振蕩器。若采用外部振蕩信號時。32768Hz的信號從 X1腳輸入.x2腳懸空。 CE:片選端,高電平有效 ,在有些早期資料中該引腳標成爪ST,實際功能一樣。CE端接通控制邏輯,當其為‘0”時 ,IO引腳變

52、為高阻截狀態(tài),所有的數(shù)據(jù)傳送中止,當其為‘1’時,允許數(shù)據(jù)傳送。CE由‘0’至‘1’時。SCIX必須為“0”。 </p><p>  DS1302的內部主要由移位寄存器、指令和控制邏輯、振蕩分頻電路、實時時鐘以及RAM組成。每次操作時,必須首先把CE置為高電平。再把提供地址和命令信息的8位裝入移位寄存器。數(shù)據(jù)在SCLK的上升沿串行輸入。無論是讀周期還是寫周期發(fā)生,也無論傳送方式是單字節(jié)還是多字節(jié),開始8位將指定內

53、部何處被進行訪問。在開始 8個時鐘周期把含有地址信息的命令字裝入移位寄存器之后。緊隨其后的時鐘在讀操作時輸出數(shù)據(jù).</p><p><b>  2.3.3串口電路</b></p><p>  DS1302與微處理器的接口電路如下圖所示。該微處理器采用宏晶科技推出AT89C51單片機作為主控芯片,該產品具有片內資源豐富、超強抗干擾、高抗靜電、超低功耗、寬電壓、不怕電源抖

54、動、在系統(tǒng)可編程、加密性強、無法解密、可降低單片機時鐘對外部電磁輻射等特點,其良好的性能保證了各個器件的協(xié)調可靠工作及控制要求。在電路中單片機的P1.7控制DS1302的復位輸入端,P1.4與數(shù)據(jù)輸入/輸出引腳相連,P1.3用來作為 DS1302的輸入時鐘SCLK控制端。由于單片機復位時,所有單片機的端口均為高電平,如果直接用單片機的某一口線同DS1302的RST相連,則影響了系統(tǒng)加電時對DS1302的初始化,從而造成 DS1302計時

55、的不穩(wěn)定。因此,本主電源(5 V)接 VCC2,備份電池采用可充電鎘鎳電池(3.6 V)接 VCC1,可啟用內部涓流充電器在主電壓正常時向電池充電,以延長電池使用時間。備份電池也可用1微法以上的超容量電容代替,但需要注意的是備份電池電壓應略低于主電源工作電壓。</p><p>  2.3.4鍵盤設置電路</p><p><b>  1. 鍵盤接口介紹</b></

56、p><p><b>  獨立式鍵盤</b></p><p>  獨立式鍵盤是指直接用I/O口線構成單個按鍵電路,每個按鍵占用一條I/O口線,當某個鍵閉合時,相應的I/O口線變?yōu)榈碗娖?,當CPU查詢到為低電平的I/O口線時,就可以判別出與其對應的鍵處于釋放狀態(tài)。</p><p><b>  行列式鍵盤</b></p>

57、<p>  將I/O口線的一部分作為行線,另一部分作為行線,按鍵設置在行線的交叉點上。CPU通過其電平的高低來判別鍵是否被按下。但每根線上接有4個按鍵,任何鍵按下都有可能使其電平變低,到底是哪個鍵按下呢?這是采用了“時分復用”的方法,即在一個查詢周期里把時間分為4個間隔,每個時間間隔對應一個鍵,在哪個時間間隔查到低電平,則代表是與之相對應的鍵被按下。時間間隔的劃分是通過列線P1.4~P1.7來實現(xiàn)的。</p>

58、<p>  依次使列線P1.4~P1.7中的一根輸出為低電平,則只有與之對應的鍵按下時,才能使行線為低電平,此時其他列線都輸出高電平,與它們對應的鍵按下,不能使行線電平變低,所以就實現(xiàn)了行線的時分復用。</p><p>  由于行列式鍵盤的按鍵數(shù)量比較多,為了使程序簡潔,一般在鍵處理程序中,給予每個鍵一個鍵號,由從列線I/O口輸出的數(shù)據(jù)和從行線I/O口讀入的數(shù)據(jù)得到按鍵的鍵號,然后由該鍵號通過散轉表進

59、入各按鍵的服務程序。</p><p><b>  2.設置電路介紹</b></p><p>  設置電路的功能主要是把時間和日期設置到當前的時間,可以在系統(tǒng)運行中進行。用4個獨立式按鍵完成,分別接到單片機P1口的高4位。第1個按鈕表示是否進行設置,按下時表示設置,并且每按一次,在顯示器上分別在年、月、日等日期時間上跳轉,表示對相應的項進行更改;第2個按鈕按下表示對第1

60、個按鈕選中的項進行加1操作;第3個按鈕按下表示進行減1操作;第4個按鈕按下表示停止設置。只有在第1個按鈕按時才可進行加減操作。其電路如圖3所示。其中電容的作用是消除按鍵的抖動,也可用雙穩(wěn)態(tài)觸發(fā)器去除按鍵時的抖動,同時為了提高可靠性,硬件去抖動的同時,還可以用軟件去抖動的方法。</p><p>  第三章 系統(tǒng)軟件設計</p><p><b>  3.1軟件設計總述</b&

61、gt;</p><p>  系統(tǒng)軟件設計主要包括主程序設計、日期數(shù)據(jù)采集子模塊程序設計、按鍵處理子模塊程序設計和顯示子模塊程序設計等。主程序主要完成器件的初始化,并判斷有無按鍵按下,并根據(jù)判斷的結果調用相應的子模塊程序;日期數(shù)據(jù)采集子模塊程序完成相應的數(shù)據(jù)采集、處理和保存 ,按鍵處理子模塊程序完成日期的設置,而顯示子模塊程序只要把上述子模塊儲存的數(shù)據(jù)送去顯示即可。</p><p><

62、b>  程序流程圖</b></p><p><b>  3.2程序模塊介紹</b></p><p><b>  3.2.1顯示模塊</b></p><p>  1.LCD1602的指令系統(tǒng)</p><p>  液晶模塊內部的控制器共有11條控制指令,如表1所示,</p>

63、<p>  它的讀寫操作、屏幕和光標的操作都是通過指令編程來實現(xiàn)的。</p><p>  (說明:1為高電平、0為低電平)</p><p>  指令1:清顯示,指令碼01H,光標復位到地址00H位置 </p><p>  指令2:光標復位,光標返回到地址00H </p><p>  指令3:光標和顯示模式設置 </p>

64、;<p>  I/D:光標移動方向,高電平右移,低電平左移</p><p>  S: 屏幕上所有文字是否左移或者右移。高電平表示有效,低電平則無效 </p><p>  指令4:顯示開關控制。</p><p>  D:控制整體顯示的開與關,高電平表示開顯示,低電平表示關顯示</p><p>  C:控制光標的開與關,高電平表示有

65、光標,低電平表示無光標</p><p>  B:控制光標是否閃爍,高電平閃爍,低電平不閃爍 </p><p>  指令5:光標或顯示移位 S/C:高電平時移動顯示的文字,低電平時移動光標 </p><p>  指令6:功能設置命令 </p><p>  DL:高電平時為4位總線,低電平時為8位總線 </p><p> 

66、 N:低電平時為單行顯示,高電平時雙行顯示 </p><p>  F: 低電平時顯示5x7的點陣字符,高電平時顯示5x10的點陣字符 </p><p>  指令7:字符發(fā)生器RAM地址設置 </p><p>  指令8:DDRAM地址設置 </p><p>  指令9:讀忙信號和光標地址 BF:忙標志位,高電平表示忙,此時模塊不能接收命令或者

67、數(shù)據(jù),如果為低電平表示不忙。 </p><p><b>  指令10:寫數(shù)據(jù) </b></p><p><b>  指令11:讀數(shù)據(jù) </b></p><p>  液晶顯示模塊是一個慢顯示器件,所以在執(zhí)行每條指令之前一定要確認模塊的忙標志為低電平,表示不忙,否則此指令失效。要顯示字符時要先輸入顯示字符地址,也就是告訴模塊在

68、哪里顯示字符,表2是HS162-4的內部顯示地址.</p><p>  即,第1行的顯示地址應為:80H+顯示位置;第2行的顯示地址應為:C0H+顯示位置。</p><p>  控制器接口時序說明(HD44780及兼容芯片)</p><p><b>  讀操作時序</b></p><p><b>  寫操作時序

69、</b></p><p><b>  液晶程序</b></p><p><b>  4.子程序流程圖</b></p><p>  3.2.2 時鐘模塊設計</p><p>  對年、月、13、時、分、秒進行計時</p><p><b>  1.編程思想&

70、lt;/b></p><p>  DS1302所進行的一切工作必須先由 CPU向 DS1302發(fā)送命令字節(jié),命令字節(jié)格式如圖 3所示。各位定義如下:命令字節(jié)的最高位 7必須為 “1”,否則禁止對 DS1302進行操作。第 6位是時 鐘/日歷或 RAM 選擇位,如它為 “1,,可對 內部 RAM讀寫,如它為“0”可對時鐘/日歷操作。此處所謂 日歷型數(shù)據(jù)即數(shù)據(jù)格式為壓縮型 BCD碼,且數(shù)值必須在它的定義域內;例

71、如,“月份”的定義域 為 1~12,“秒”的定義域為 0~59等等。所謂RAM 型數(shù)據(jù) 即指一般 16進制數(shù)據(jù)。位 5至位 1為 DS1302內部寄存器地址。DS1302有單字節(jié)和多 字節(jié)兩種讀、寫方式。所謂單字節(jié)讀、寫方式即每 次只能從 DS1302中讀、寫 1字節(jié)數(shù)據(jù)。所謂多字節(jié)讀、寫方式則每次可從 DS1302中連續(xù)讀、寫若干字節(jié)數(shù)據(jù)。當位 5至位 1各位均為“1”時,DSI302為多字節(jié)讀、寫方式。最低位 0為“0”表示寫操作,

72、否則為讀操作。命令字節(jié)的傳輸都是從最低位開始。 </p><p>  DS1302有12個寄存器,其中有7個寄存器與日歷、時鐘相關,存放的數(shù)據(jù)位為BCD碼形式,其日歷、時間寄存器及其控制字見表。DS1302所有的時間數(shù)據(jù)都放到數(shù)據(jù)寄存器中:</p><p><b>  2. 讀,寫時序</b></p><p>  DS1302采用串行方式與微控

73、制器通訊。在片選信號RST變?yōu)楦唠娖胶?,可向芯片發(fā)送指令及讀取數(shù)據(jù)。DS1302的命令字的傳輸從最低位開始。當對 DS1302進行寫數(shù)據(jù)時,首先發(fā)寫控制指令,在控制指令字輸入后的下一個 SCLK時鐘的上升沿,數(shù)據(jù)被寫入 DS1302,數(shù)據(jù)輸入從低位即位 0開始。當對 DS1302進行讀數(shù)據(jù)時,首先發(fā)讀控制指令,在緊跟 8位的控制指令字后的下一個 SCLK脈沖的下降沿讀出 DS1302的數(shù)據(jù),讀出數(shù)據(jù)時從低位 0位至高位 7。注意在 SC

74、LK為高電平期問,不能讀 I/0線,此期間 l/O端為高阻狀態(tài)。因此,在程序設計時應保證在 SCLK上升沿之前讀 I/O線,即可正確讀出時鐘數(shù)據(jù)。 </p><p>  DS1302的讀,寫時序如網(wǎng)所示。輸入數(shù)據(jù)時.在 SCLK上升沿 .砌 輸入的數(shù)據(jù)位被有效接受輸出數(shù)據(jù)時,在SCLK下降沿時砌 輸出數(shù)據(jù)位。要注意的是.在讀 DS1302時.當8位命令字寫入后緊跟著的第一個下降沿芯片即開始輸出數(shù)據(jù)。</p&

75、gt;<p><b>  3.時鐘子程序設計</b></p><p>  實時時鐘軟件首先應將Et歷信息初值——秒、分、時、日、月、星期、年等按序寫入到 DS1302相關寄存器中,此后,時鐘便以此初值為基準進行計時,只要主電源 VCC2和備份電源 VCC1尚有一個工作正常,則計時就不會終止。初始化El歷信息程序分為三部分: </p><p>  (1)發(fā)

76、送“解除寫保護”命令字 8EH 和內容</p><p>  COH,以開放 DS1302寫操作。 </p><p>  (2)發(fā)送“涓流充電”命令字 90H和內容 A7H,以開放 DS1302內部 充 電 電路。本 系統(tǒng) 選擇DSI302內部充電電路為一只串聯(lián)二極管和 8kn限流電阻,因此常規(guī)情況下,主電源 VCC2對備份電源 VCC1之最大充電電流為 Imax:(VDD一二極管壓降)/限

77、流電阻一(5--0.7)--8=0.538mA。 </p><p>  (3)發(fā)送“多字節(jié)寫 日歷型數(shù)據(jù)”或“單字節(jié)寫日歷型數(shù)據(jù)”命令字寫入日歷信息初值。上述第1、第2部分屬于對 DS1302內部功能寄存器操作,因此必須以“單字節(jié)”方式進行發(fā)送;而第 3部分屬于對 DS1302一般寄存器操作,故可以采用“多字節(jié)”方式發(fā)送,以便提高效率。同時, 在儀表工作過程中需要讀取時間日歷信息時,可根 據(jù)具體需要采用“多字節(jié)”

78、方式或“單字節(jié)”方式。這里,無論采用“單字節(jié)”還是“多字節(jié)”方式,能否 可靠、準確地讀出這些信息,其技術關鍵是和硬件密切相聯(lián)的 DS1302讀寫驅動程序的設計。該驅動程序的功能是產生正確的同步時鐘脈沖,并在同步時鐘脈沖上升沿將數(shù)據(jù)按位寫人 DS1302或在同步時鐘脈沖的下降沿按位從 DS1302中讀出日歷型數(shù)據(jù),從而完成 1字節(jié)數(shù)據(jù)的發(fā)送或接收。對于“多字節(jié)”方式,只需改變命令控制字和增加循環(huán)次數(shù)即可完成多字節(jié)的連續(xù)讀寫。 </p

79、><p><b> ?。?)流程圖</b></p><p>  3.2.3鍵盤模塊設計</p><p><b>  程序流程圖</b></p><p><b>  出現(xiàn)的問題</b></p><p><b> ?、沛I的消抖</b><

80、;/p><p>  理想的按鍵信號是方波形,是一個標準的負脈沖,但實際情況并非如此。按下和釋放都需要經過一個過程才能達到穩(wěn)定,這一過程是處于高低電平之間的一種不穩(wěn)定狀態(tài),稱為抖動。抖動持續(xù)時間的長短、頻率的高低與按鍵的機械特性及人的操作有關,一般在5~10ms之間。這就有可能造成CPU對一次按鍵過程做多次處理。為了避免這種情況的發(fā)生,應采取措施消除抖動。消除抖動的方法有兩種,一種是采取硬件來實現(xiàn),如用濾波器電路、雙穩(wěn)

81、態(tài)電路等。</p><p><b>  ⑵一鍵一操作</b></p><p>  一鍵一操作的原理就是當按鍵按下再彈起時才會有數(shù)據(jù)傳送給主控制器,所以在程序中要有指令,否則會引起誤操作,從而成為一鍵幾操作的現(xiàn)象。</p><p><b>  第四章 調試</b></p><p>  系統(tǒng)調試包括

82、硬件調試和軟件調試。硬件調試的任務是排除系統(tǒng)的硬件電路故障,包括設計性錯誤和工藝性故障。軟件調試是利用開發(fā)工具進行在線仿真調試,處發(fā)現(xiàn)和解決程序錯誤外,也可以發(fā)現(xiàn)硬件故障。</p><p><b>  4.1硬件調試</b></p><p>  單片機應用系統(tǒng)的硬件調試和軟件調試十分不開的,許多硬件故障時在調試軟件時發(fā)現(xiàn)的,但通常是先排除系統(tǒng)中明顯的硬件故障后,在和軟

83、件結合起來調試。</p><p><b>  常見的硬件故障</b></p><p>  ①邏輯錯誤。樣機硬件的邏輯錯誤是由于設計錯誤或加工過程中的工藝性錯誤所造成的,包括錯線、開路和短路等幾種,其中短路是最常見的故障。當某一元件虛焊或短路時電路都無法調試成功。</p><p>  ②元器件失效。元器件失效的原因有兩個方面:一是器件本身已經損壞

84、或性能不符合要求;二是由于組裝錯誤造成的元器件失效,如電解電容、二極管的極性錯誤或集成塊安裝方向錯誤等。</p><p> ?、劭煽啃圆睢R鹣到y(tǒng)不可靠的因素很多,如接插件接觸不良會造成系統(tǒng)時好時壞,內部和外部的干擾、電源紋波系數(shù)過大或器件負載過大等造成邏輯電平不穩(wěn)定,另外走線和布局不合理等會引起系統(tǒng)的可靠性差。</p><p> ?、茈娫垂收?。若樣機中存在電源故障,則加點后將造成器件損壞

85、。電源故障包括電壓值不符合設計要求、電源引出線和插座不對應、電源功率不足和負載能力差等。</p><p><b>  硬件調試方法</b></p><p>  ①聯(lián)機調試。通過脫機調試可排除一些明顯的硬件故障,有些硬件故障需要通過聯(lián)機調試才能發(fā)現(xiàn)和排除。通電后,執(zhí)行讀寫指令,對用戶樣機的存儲器、I/O端口進行讀寫和邏輯檢查等操作,用示波器等設備觀察波形(如輸出波形、讀

86、/寫控制信號、地址數(shù)據(jù)波形和有關控制電平),通過波形的觀察分析,發(fā)現(xiàn)和排除故障。</p><p> ?、诿摍C調試。脫機調試實在樣機加電之前,先用萬用表等工具,根據(jù)硬件電氣原理圖和裝配圖,仔細檢查樣機線路的正確性,并核對元器件的型號、規(guī)格和安裝是否符合要求。</p><p>  特別注意電源的走線,防止電源之間的短路和極性錯誤,重點檢查系統(tǒng)的總線或其他信號線之間是否存在相互的短路。</

87、p><p>  樣機所用的電源,事先必須單獨調試后才能加到系統(tǒng)中。在不差芯片的情況下,加電檢查各插件上引腳的電位是否正常,仔細測量各點電位是否正常,尤其應注意單片機插座上的各點電位是否正常。</p><p><b>  4.2軟件調試</b></p><p>  軟件調試方法與選用的軟件結構和程序設計技術有關。如果采用模塊設計技術,則逐個模塊調好以

88、后,再進行系統(tǒng)程序總調試。</p><p>  對于模塊結構程序,要對子程序逐個進行調試。調試子程序是,一定要符合入口條件和出口條件,調試手段可采用單步運行方式和斷點運行方式,通過檢查用戶系統(tǒng)CPU的現(xiàn)場、RAM的內容和I/O口的狀態(tài),檢測程序執(zhí)行結果是符合設計要求。通過檢測可以發(fā)現(xiàn)程序中的死循環(huán)錯誤、機器碼錯誤和轉移地址的錯誤,同時也可以發(fā)現(xiàn)用戶系統(tǒng)中的硬件故障,軟件算法和硬件設計錯誤,在調試過程中不斷調整用戶

89、系統(tǒng)的軟件和硬件,完成每個程序模塊的調試。</p><p>  每個程序模塊通過后,可以聯(lián)合各功能模塊進行整體程序綜合調試。在這一階段如果發(fā)生故障,可以分析子程序在運行時是否破壞現(xiàn)場、緩沖單元是否發(fā)生沖突、零位的建立和清除在設計上是否失誤、堆棧區(qū)域是否溢出或輸入設備的狀態(tài)是否正常等。若用戶系統(tǒng)是在開發(fā)系統(tǒng)的監(jiān)控程序下運行,還要考慮用戶緩沖單元是否和監(jiān)控程序的工作單元發(fā)生沖突。</p><p&g

90、t;  單步運行只能驗證程序正確與否,而不能確定定時精度、CPU的實時響應等問題,所以單步和斷點調試后,還應進行連續(xù)調試。除了觀察穩(wěn)定性之外,還要觀察用戶系統(tǒng)的操作是否符合原始設計要求,以及安排的用戶操作是夠合理等,必要時還要做適當修正。</p><p>  DS1302 與微處理器進行數(shù)據(jù)交換時,首先由微處理器向電路發(fā)送命令字節(jié),命令字節(jié)最高位MSB(D7)必須為邏輯1,如果D7=0,則禁止寫DS1302,即寫

91、保護;D6=0,指定時鐘數(shù)據(jù),D6=1,指定RAM數(shù)據(jù);D5~D1指定輸入或輸出的特定寄存器;最低位LSB(D0)為邏輯0,指定寫操作(輸入), D0=1,指定讀操作(輸出)。    </p><p>  在DS1302的時鐘日歷或RAM進行數(shù)據(jù)傳送時,DS1302必須首先發(fā)送命令字節(jié)。若進行單字節(jié)傳送,8位命令字節(jié)傳送結束之后,在下2個SCLK周期的上升沿輸入數(shù)據(jù)字節(jié),或在下8個S

92、CLK周期的下降沿輸出數(shù)據(jù)字節(jié)。    </p><p>  DS1302與RAM相關的寄存器分為兩類:一類是單個RAM單元,共31個,每個單元組態(tài)為一個8位的字節(jié),其命令控制字為C0H~FDH,其中奇數(shù)為讀操作,偶數(shù)為寫操作;再一類為突發(fā)方式下的RAM寄存器,在此方式下可一次性讀、寫所有的RAM的31個字節(jié)。     </p>

93、<p>  要特別說明的是備用電源B1,可以用電池或者超級電容器(0.1F以上)。雖然DS1302在主電源掉電后的耗電很小,但是,如果要長時間保證時鐘正常,最好選用小型充電電池??梢杂美鲜诫娔X主板上的3.6V充電電池。如果斷電時間較短(幾小時或幾天)時,就可以用漏電較小的普通電解電容器代替。100 μF就可以保證1小時的正常走時。DS1302在第一次加電后,必須進行初始化操作。初始化后就可以按正常方法調整時間。 &#

94、160; </p><p><b>  4.3聯(lián)調</b></p><p>  聯(lián)調是指讓用戶系統(tǒng)的軟件在其硬件上實際運行,進行軟、硬件聯(lián)合調試,從中發(fā)現(xiàn)硬件故障或軟、硬件設計錯誤。這是對用戶系統(tǒng)檢驗的重要一關。</p><p>  聯(lián)調主要解決以下問題:</p><p> ?、佘?、硬件能否按預定要求配合工作,

95、如果不能,那么問題出在哪里?如何解決?</p><p> ?、谙到y(tǒng)運行中是否有潛在的設計是難以預料的錯誤,如硬件延時過長造成工作時序不符合要求、布線不合理造成有信號串擾等;</p><p> ?、巯到y(tǒng)的動態(tài)性能指標(包括精度、速度參數(shù))是否滿足設計要求。</p><p>  系統(tǒng)聯(lián)調時,首先采用單步、斷點、連續(xù)運行方式調試與硬件相關的各程序段既可以檢驗這些用戶程序段

96、的正確性,又可以在各功能獨立的情況下,檢驗軟、硬件的配合情況。然后,將軟、硬件按系統(tǒng)工作要求進行綜合運行,采用全速斷點、連續(xù)運行方式進行總調試,以解決在系統(tǒng)總體運行的情況下軟、硬件的協(xié)調與提高系統(tǒng)動態(tài)性能。在具體操作中,用戶系統(tǒng)在開發(fā)系統(tǒng)環(huán)境下,先借用仿真器的CPU、存儲器等資源進行工作。若發(fā)現(xiàn)問題,按上述軟、硬件調試方法準確定位錯誤,分析錯誤原因,找出解決辦法。用戶系統(tǒng)調試完后,將用戶程序固化到用戶系統(tǒng)的程序存儲器中,再借用仿真器CP

97、U使用戶系統(tǒng)運行。若無問題,則用戶系統(tǒng)插上單片機即可正確工作(注意,不要忘記用戶系統(tǒng)時鐘、復位電路的調試)。</p><p>  第五章 心得體會</p><p>  在此次畢業(yè)設計中,收獲頗多。如果說我們以前學的都是一些理論知識和分散的知識,那么在這次畢業(yè)設計中則是系統(tǒng)的把大學里所學的連貫的靈活運用起來。從最簡單的電阻電容的識別和個電阻阻值的選擇,以及各種電子元器件的識別、使用及其檢

98、測,到電烙鐵的正確使用以及焊接的要求及注意點、PCB板的布局及其制作了解,都有了更詳細和更專業(yè)的學習和實踐。</p><p>  這次的畢業(yè)設計對我來說無疑是一次較好的動手鍛煉機會,因此從一開始就抱著一種較認真的態(tài)度,無論是從了解電子萬年歷背景、意義、及其實現(xiàn)原理,還是后來的焊接對我來說都是一種提高。</p><p>  在此次設計中,我負責的是硬件部分的設計。在方案選擇上我花了很大的功夫

99、,比如說:在萬年歷的顯示上到底是用LED數(shù)碼顯示還是用LCD液晶顯示,我做了很詳細的比較,選出最適合的。這樣在硬件設計時有關LCD液晶顯示的給、原理都有詳細的介紹。硬件部分除了主控制器的介紹還有顯示電路、時鐘電路、鍵盤電路的介紹,在介紹時我采用分模塊分小點介紹。經過查閱資料和版塊設計我不僅把大學所學的都回憶了一遍并且靈活得把他們串起來運用。在硬件還有焊接的問題,其要注意不能虛焊、漏焊、短焊。其次就是軟件部分和調試部分,雖然這兩部分是由我

100、同組的同學負責的,但我也同樣參與了,當有我們問題時都互相討論和學習,經過我們共同的努力和導師的指導我們終于完成了我們的畢業(yè)設計,并調試成功。</p><p>  這次的實習使我明白一個道理,做任何一件事都需要互相幫助和學習,任何事只有自己動手了才會學得更多和理解的更透徹。在現(xiàn)代高速發(fā)展的今天,僅僅用一些理論知識來武裝大腦是不夠的,我們還需要用實際動手操作能力來裝扮我們的雙手,只有如此才不負祖國對我們的培養(yǎng),做好祖

101、國的接班人,為祖國貢獻出自己的一份力量。</p><p><b>  致謝詞</b></p><p>  在本論文的寫作過程中,我的導師*老師傾注了大量的心血,從選題到開題報告,從寫作提綱,到一遍又一遍地指出稿中的具體問題,嚴格把關,循循善誘,在此我表示衷心感謝。同時我還要感謝在我學習期間給我極大關心和支持的各位老師以及關心我的同學和朋友。</p>&l

102、t;p>  寫畢業(yè)設計論文是一次再系統(tǒng)學習的過程,畢業(yè)設計論文的完成,同樣也意味著新的學習生活的開始。</p><p>  附錄(一) 系統(tǒng)程序</p><p>  EQU P2.0 ;定義地址</p><p>  RW EQU P2.1</p><p>  E EQU P2.2</p><p>

103、  CMD EQU 27H</p><p>  DAT EQU 26H</p><p>  FLAG BIT 00H</p><p>  XSFLAG BIT 01H ;</p><p>  COUNT EQU 28H</p><p>  Char1 EQU 30H</p><p>  Ch

104、ar2 EQU 40H</p><p>  T_RST Bit P2.3 ;實時時鐘復位線引腳</p><p>  T_CLK Bit P2.4 ;實時時鐘時鐘線引腳</p><p>  T_IO Bit P2.5 ;實時時鐘數(shù)據(jù)線引腳</p><p>  SECOND EQU 50H</p><p>  MINUTE

105、 EQU 51H</p><p>  HOUR EQU 52H</p><p>  DAY EQU 53H</p><p>  MONTH EQU 54H</p><p>  WEEK EQU 55H</p><p>  YEARL EQU 56H</p><p>  ORG 0000H<

106、;/p><p>  AJMP START</p><p>  org 000bh</p><p>  ljmp inter0</p><p><b>  ORG 0100H</b></p><p>  START:MOV SP,#60H ;主程序</p><p>  M

107、OV TMOD,#01H</p><p>  MOV TH0,#9EH ;置定時器初值(定時100ms)</p><p>  MOV TL0,#58H</p><p>  SETB TR0 ;啟動定時器0</p><p><b>  setb ea</b></p><p><b>

108、  setb et0</b></p><p><b>  CLR FLAG</b></p><p>  CLR XSFLAG</p><p>  MOV COUNT,#1</p><p>  MOV R0,#16 ;把ROM的內容轉入ram</p><p>  MOV

109、 R1,#ChAR1</p><p>  MOV DPTR,#TAB1</p><p>  S1: CLR A</p><p>  MOVC A,@A+DPTR</p><p><b>  MOV @R1,A</b></p><p><b>  inc dptr</b>&

110、lt;/p><p><b>  inc r1</b></p><p>  djnz r0,s1</p><p>  MOV R0,#16</p><p>  MOV R1,#Char2</p><p>  MOV DPTR,#TAB2</p><p>  S2: CLR A

111、</p><p>  MOVC A,@A+DPTR</p><p><b>  MOV @R1,A</b></p><p><b>  INC DPTR</b></p><p><b>  INC R1</b></p><p>  DJNZ R0,S2&

112、lt;/p><p>  LCALL LCD_INIT ;液晶初始化</p><p>  LCALL LCD_R_BF</p><p>  MOV CMD,#38H</p><p>  LCALL LCD_W_C</p><p>  MOV CMD,#0CH</p><p>  LCALL LC

113、D_W_C</p><p>  MOV CMD,#06H</p><p>  LCALL LCD_W_C</p><p>  MOV CMD,#01H</p><p>  LCALL LCD_W_C</p><p>  CLR T_RST ;DS1302初始化</p><

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論