




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、 PAGE61 / NUMPAGES62目 錄TOC o 1-3 h z uHYPERLINK l _Toc1989712561 緒論 PAGEREF _Toc198971256 h 1HYPERLINK l _Toc1989712572 總體設(shè)計方案 PAGEREF _Toc198971257 h 2HYPERLINK l _Toc1989712582.1設(shè)計思路 PAGEREF _Toc198971258 h 2HYPERLINK l _Toc1989712592.2設(shè)計方案 PAGEREF _Toc198971259 h 2HYPERLINK l _Toc1989712602.3 方案比
2、較論證 PAGEREF _Toc198971260 h 2HYPERLINK l _Toc1989712612.4 總體設(shè)計方框圖 PAGEREF _Toc198971261 h 3HYPERLINK l _Toc1989712623 設(shè)計原理與分析 PAGEREF _Toc198971262 h 4HYPERLINK l _Toc1989712633.1硬件電路主要芯片的功能介紹 PAGEREF _Toc198971263 h 4HYPERLINK l _Toc1989712643.1.1單片機主控制器 PAGEREF _Toc198971264 h 4HYPERLINK l _Toc198
3、9712653.1.2 溫度傳感器芯片 PAGEREF _Toc198971265 h 5HYPERLINK l _Toc1989712663.1.3 時鐘芯片DS1302 PAGEREF _Toc198971266 h 9HYPERLINK l _Toc1989712673.1.4 16*2LCD液晶顯示1602 PAGEREF _Toc198971267 h 12HYPERLINK l _Toc1989712684 硬件電路 PAGEREF _Toc198971268 h 15HYPERLINK l _Toc1989712694.1 單片機主控制模塊的設(shè)計 PAGEREF _Toc1989
4、71269 h 15HYPERLINK l _Toc1989712704.2 時鐘電路模塊的設(shè)計 PAGEREF _Toc198971270 h 15HYPERLINK l _Toc1989712714.3 溫度采集模塊設(shè)計 PAGEREF _Toc198971271 h 16HYPERLINK l _Toc1989712724.4 功能按鈕設(shè)計 PAGEREF _Toc198971272 h 16HYPERLINK l _Toc1989712734.5 16*2 LCD1602液晶顯示電路設(shè)計 PAGEREF _Toc198971273 h 17HYPERLINK l _Toc1989712
5、744.6總體電路圖 PAGEREF _Toc198971274 h 17HYPERLINK l _Toc1989712755 系統(tǒng)軟件設(shè)計 PAGEREF _Toc198971275 h 18HYPERLINK l _Toc1989712765.1 系統(tǒng)模塊的功能分劃分 PAGEREF _Toc198971276 h 18HYPERLINK l _Toc1989712775.2 總體程序流程框圖 PAGEREF _Toc198971277 h 18HYPERLINK l _Toc1989712785.3 時鐘調(diào)整時間的流程圖 PAGEREF _Toc198971278 h 20HYPERLI
6、NK l _Toc1989712795.4 修改鍵“UP”的功能流程圖 PAGEREF _Toc198971279 h 21HYPERLINK l _Toc1989712805.5溫度轉(zhuǎn)換流程圖 PAGEREF _Toc198971280 h 22HYPERLINK l _Toc1989712816 系統(tǒng)仿真測試 PAGEREF _Toc198971281 h 23HYPERLINK l _Toc1989712826.1 KEIL的使用 PAGEREF _Toc198971282 h 23HYPERLINK l _Toc1989712836.2 Protues軟件仿真 PAGEREF _Toc
7、198971283 h 28HYPERLINK l _Toc198971284致 PAGEREF _Toc198971284 h 31HYPERLINK l _Toc198971285參考文獻 PAGEREF _Toc198971285 h 32HYPERLINK l _Toc198971286附錄一總體電路的PCB板圖 PAGEREF _Toc198971286 h 33HYPERLINK l _Toc198971287附錄二設(shè)計電路的仿真電路圖 PAGEREF _Toc198971287 h 34HYPERLINK l _Toc198971288附錄二萬年歷源程序 PAGEREF _Toc
8、198971288 h 351 緒論隨著電子技術(shù)的迅速發(fā)展,特別是隨大規(guī)模集成電路出現(xiàn),給人類生活帶來了根本性的改變。由其是單片機技術(shù)的應(yīng)用產(chǎn)品已經(jīng)走進了千家萬戶。其中電子萬年歷就是一個典型的例子。而且在萬年歷的基礎(chǔ)上還可以擴展其它的實用功能,比如溫度計。萬年歷是采用數(shù)字電路實現(xiàn)對.時,分,秒.數(shù)字顯示的計時裝置,廣泛用于個人家庭,車站, 碼頭辦公室等公共場所,成為人們?nèi)粘I钪胁豢缮俚谋匦杵?,由于?shù)字集成電路的發(fā)展和石英晶體振蕩器的廣泛應(yīng)用,使得數(shù)字鐘的精度,遠(yuǎn)遠(yuǎn)超過老式鐘表,鐘表的數(shù)字化給人們生產(chǎn)生活帶來了極大的方便,而且大擴展了鐘表原先的報時功能。諸如定時自動報警、按時自動打鈴、時間程序
9、自動控制、定時廣播、自動起閉路燈、定時開關(guān)烘箱、通斷動力設(shè)備、甚至各種定時電氣的自動啟用等,但是所有這些,都是以鐘表數(shù)字化為基礎(chǔ)的。因此,研究萬年歷與擴大其應(yīng)用,有著非常現(xiàn)實的意義。市場上有許多電子鐘的專用芯片如:LM8363、LM8365等,但它們功能單一,電路連接復(fù)雜,不便于調(diào)試制作。但是考慮到用單片機配合時鐘芯片,可制成功能任意的電子鐘,而且可以做到硬件簡單、成本低廉。所以本系統(tǒng)采用了以廣泛使用的單片機AT89S52技術(shù)為核心,配合時鐘芯片DS1302。軟硬件結(jié)合,使硬件部分大為簡化,提高了系統(tǒng)穩(wěn)定性,并采用LCD顯示電路、鍵盤電路,使人機交互簡便易行,此外結(jié)合音樂鬧鈴電路、看門狗和供電
10、電路。本方案設(shè)計出的數(shù)字鐘可以顯示時間、設(shè)置鬧鈴功能之外。本文首先描述系統(tǒng)硬件工作原理,并附以系統(tǒng)結(jié)構(gòu)框圖加以說明,著重介紹了本系統(tǒng)所應(yīng)用的各硬件接口技術(shù)和各個接口模塊的功能與工作過程,其次,詳細(xì)闡述了程序的各個模塊和實現(xiàn)過程。本設(shè)計以數(shù)字集成電路技術(shù)為基礎(chǔ),單片機技術(shù)為核心。本文編寫的主導(dǎo)思想是軟硬件相結(jié)合,以硬件為基礎(chǔ),來進行各功能模塊的編寫。本設(shè)計中我重點研究實現(xiàn)了單片機+時鐘芯片這種模式的萬年歷,從原理上對單片機和時鐘芯片有了深一步的認(rèn)識,這些基本功能完成后,在軟件基礎(chǔ)上實現(xiàn)時間顯示。2 總體設(shè)計方案2.1設(shè)計思路用AT89S52處理產(chǎn)生部時鐘數(shù)據(jù)或者讀取外部時鐘數(shù)據(jù)和采集外部傳感器的
11、信息進行處理,并暫時寄存在其部的儲存器中,再通過單片機調(diào)用部RAM的數(shù)據(jù)并送到LCD或者LED數(shù)碼管上顯示出來。2.2設(shè)計方案方案1:單片機一般的工作頻率在12MHz左右,而且部還有定時、計數(shù)器,可以產(chǎn)生精確的1S定時,由次可以用定時中斷的方式產(chǎn)生精確的1S時間,秒位不斷的加1,再設(shè)計分、時、星期、日、月、年之間的進制,使產(chǎn)生進位。本方案只需要單片機最小系統(tǒng)加上顯示電路,再設(shè)計簡單的程序算法就可以實現(xiàn)。對于測溫電路,可以使用熱敏電阻之類的器件利用其感溫效應(yīng),在將隨被測溫度變化的電壓或電流采集過來,進行A/D轉(zhuǎn)換后,就可以用單片機進行數(shù)據(jù)的處理。在顯示電路上,采用數(shù)碼管就可以將年月日星期時分秒和
12、室溫度顯示出來方案2:萬年歷時鐘采用單片機控制DS1302實時時鐘芯片,能達(dá)到走時準(zhǔn)確且掉電不丟失數(shù)據(jù)的。DS1302 與單片機之間能簡單地采用同步串行的方式進行通信僅需用到三個口線1 RES(復(fù)位)2 I/O (數(shù)據(jù)線)3 SCLK(串行時鐘)。溫度計要靈敏反映室溫的變化這樣可采用單片機與數(shù)字式溫度傳感器DS18B20通訊,采集溫度數(shù)字信號進行處理。DS18B20通過一個單線接口發(fā)送或接受信息,因此在單片機與DS18B20之間僅需一條連接(加上地線)。在顯示電路上,采用16*2的LCD顯示。2.3 方案比較論證對于方案1,單片機雖然可以產(chǎn)生精確的秒信號,但是單片機在處理閏年上會比較麻煩,加之
13、一旦單片機斷電后,所有的時間都要重新調(diào)整。對于測溫電路,采用熱敏電阻的輸出電壓-溫度特性,要加上A/D轉(zhuǎn)換,溫度傳感信息才能被單片機所接受,這種設(shè)計需要用到A/D轉(zhuǎn)換電路,感溫電路比較麻煩。在顯示電路上,采用LED數(shù)碼的話要用到單片機的許多I/O口,甚至I/O不夠用,還需要接上其它芯片大量擴展I/O口,這是一個弊處。對于方案2:單片機不用去產(chǎn)生時鐘的數(shù)據(jù),時鐘的數(shù)據(jù)由DS1302獨立產(chǎn)生,并寄存在其部的寄存器上,單片機可以通過三總線與它通訊,不僅可以對它進行讀取實時時鐘數(shù)據(jù),還可以對它進行編程,設(shè)置它的工作模式。單片機只是處理從DS1302讀出來的數(shù)據(jù)并送顯示,大大減少了單片機的負(fù)擔(dān)。而且DS
14、1302可以通過后備電池繼續(xù)工作,部的時鐘還在走,下次啟動后不用去調(diào)整時鐘,方便使用。基于同樣的原理,DS18B20也是一個獨立的傳感器,只要單片機配置它的工作狀態(tài)后它就可以獨立工作,部已經(jīng)把模擬信號轉(zhuǎn)換成數(shù)字信號,并把數(shù)字信號儲存在其部的寄存中。同樣,單片機通過單總線與它通訊,可以處理912位的溫度數(shù)字?jǐn)?shù)據(jù)。在顯示電路上,采用16*2 LCD液晶顯示器,能容納年月日星期時分秒溫度等信息的顯示。LCD顯示器只需占用11個I/O口就可以工作了,不用其它擴展芯片,總體上使電路簡單化。2.4 總體設(shè)計方框圖AT89S52主控制器DS1302時鐘芯片DS18B20溫度傳感復(fù)位按鍵LCD顯示器鍵盤12M
15、Hz晶振振蕩 總體的方框圖如圖2.1所示,控制器采用單片機AT89S52,溫度傳感器采用DS18B20,用16*2的LCD液晶顯示屏實現(xiàn)年、月、日、星期、時、分、秒、溫度的顯示。圖2.1總體設(shè)計方框圖3 設(shè)計原理與分析3.1硬件電路主要芯片的功能介紹 本次設(shè)計的萬年歷系統(tǒng)主要包括單片機主控制器、溫度傳感器芯片、時鐘芯片DS1302芯片、16*2LCD顯示芯片。3.1.1單片機主控制器AT89S52是一種低功耗、高性能CMOS8位微控制器,具有8K 在系統(tǒng)可編程Flash 存儲器。使用Atmel 公司高密度非易失性存儲器技術(shù)制造,與工業(yè)80C51 產(chǎn)品指令和引腳完全兼容。片上Flash允許程序存
16、儲器在系統(tǒng)可編程,亦適于常規(guī)編程器。在單芯片上,擁有靈巧的8 位CPU 和在系統(tǒng)可編程Flash,使得AT89S52為眾多嵌入式控制應(yīng)用系統(tǒng)提供高靈活、超有效的解決方案。AT89S52具有以下標(biāo)準(zhǔn)功能:8k字節(jié)Flash,256字節(jié)RAM,32 位I/O 口線,看門狗定時器,2個數(shù)據(jù)指針,三個16 位定時器/計數(shù)器,一個6向量2級中斷結(jié)構(gòu),全雙工串行口,片晶振與時鐘電路。另外,AT89S52 可降至0Hz 靜態(tài)邏輯操作,支持2種軟件可選擇節(jié)電模式??臻e模式下,CPU停止工作,允許RAM、定時器/計數(shù)器、串口、中斷繼續(xù)工作。掉電保護方式下,RAM容被保存,振蕩器被凍結(jié),單片機一切工作停止,直到下
17、一個中斷或硬件復(fù)位為止。(1)AT89S52的簡介AT89S52是一個低功耗,高性能CMOS 8位單片機,片含8kBytes ISP (In-system programmable)的可反復(fù)擦寫1000次的Flash只讀程序存儲器,器件采用ATMEL公司的高密度、非易失性存儲技術(shù)制造,兼容標(biāo)準(zhǔn)MCS-51指令系統(tǒng)與80C51引腳結(jié)構(gòu),芯片集成了通用8位中央處理器和ISP Flash存儲單元,功能強大的微型計算機的AT89S52可為許多嵌入式控制應(yīng)用系統(tǒng)提供高性價比的解決方案。AT89S52具有如下特點:40個引腳,8k Bytes Flash片程序存儲器,256 bytes的隨機存取數(shù)據(jù)存儲器
18、(RAM),32個外部雙向輸入/輸出(I/O)口,5個中斷優(yōu)先級2層中斷嵌套中斷,2個16位可編程定時計數(shù)器,2個全雙工串行通信口,看門狗(WDT)電路,片時鐘振蕩器。此外,AT89S52設(shè)計和配置了振蕩頻率可為0Hz并可通過軟件設(shè)置省電模式。空閑模式下,CPU暫停工作,而RAM定時計數(shù)器,串行口,外中斷系統(tǒng)可繼續(xù)工作,掉電模式凍結(jié)振蕩器而保存RAM的數(shù)據(jù),停止芯片其它功能直至外中斷激活或硬件復(fù)位。(2)AT89S52的部結(jié)構(gòu)圖AT89S52的部結(jié)構(gòu)圖如圖3.1所示:圖3.1 AT89S52部結(jié)構(gòu)圖3.1.2 溫度傳感器芯片(1)單線溫度傳感器DS18B20介紹DS18B20溫度傳感器是美國D
19、ALLAS半導(dǎo)體公司最新推出的一種改進型智能溫度傳感器,與傳統(tǒng)的熱敏電阻等測溫元件相比,它能直接讀出被測溫度,并且可根據(jù)實際要求通過簡單的編程實現(xiàn)912位的數(shù)字值讀數(shù)方式。DS18B20的性能特點如下:獨特的單線接口僅需要一個端口引腳進行通信;多個DS18B20可以并聯(lián)在惟一的三線上,實現(xiàn)多點組網(wǎng)功能;無須外部器件;可通過數(shù)據(jù)線供電,電壓圍為3.05.5;零待機功耗;溫度以9或12位數(shù)字;用戶可定義報警設(shè)置;報警搜索命令識別并標(biāo)志超過程序限定溫度(溫度報警條件)的器件;負(fù)電壓特性,電源極性接反時,溫度計不會因發(fā)熱而燒毀,但不能正常工作; 圖3.2 DSl8B20的引腳圖DSl8B20數(shù)字溫度計
20、提供9位(二進制)溫度讀數(shù),指示器件的溫度。信息經(jīng)過單線接口送入DSl8B20或從DSl8B20送出,因此從主機CPU到DSl8B20僅需一條線(和地線)。DSl8B20的電源可以由數(shù)據(jù)線本身提供而不需要外部電源。因為每一個DSl8B20在出廠時已經(jīng)給定了唯一的序號,因此任意多個DSl8B20可以存放在同一條單線總線上。這允許在許多不同的地方放置溫度敏感器件。DSl8B20的測量圍從-55攝式度到+125攝式度,增量值為0.5攝式度,可在l s(典型值)把溫度變換成數(shù)字。每一個DSl8B20包括一個唯一的64位長的序號,該序號值存放在DSl8B20部的ROM(只讀存貯器)中。開始8位是產(chǎn)品類型
21、編碼(DSl8B20編碼均為10H)。接著的48位是每個器件唯一的序號。最后8位是前面56位的CRC(循環(huán)冗余校驗)碼。DSl8B20中還有用于存儲測得的溫度值的兩個8位存貯器RAM,編號為0號和1號。1號存貯器存放溫度值的符號,如果溫度為負(fù)(攝式度),則1號存貯器8位全為1,否則全為0。0號存貯器用于存放溫度值的補碼,LSB(最低位)的1表示0.5攝式度。將存貯器中的二進制數(shù)求補再轉(zhuǎn)換成十進制數(shù)并除以2就得到被測溫度值(-55攝式度-125攝式度)。DSl8B20的引腳如圖3.2所示。每只DS18B20都可以設(shè)置成兩種供電方式,即數(shù)據(jù)總線供電方式和外部供電方式。采取數(shù)據(jù)總線供電方式可以節(jié)省一
22、根導(dǎo)線,但完成溫度測量的時間較長:采取外部供電方式則多用一根導(dǎo)線,但測量速度較快。(2) DS18B20的測溫原理器件中低溫度系數(shù)晶振的振蕩頻率受溫度的影響很小,用于產(chǎn)生固定頻率的脈沖信號送給減法計數(shù)器1;高溫度系數(shù)晶振隨溫度變化其振蕩頻率明顯改變,所產(chǎn)生的信號作為減法計數(shù)器2的脈沖輸入。器件中還有一個計數(shù)門,當(dāng)計數(shù)門打開時,DS18B20就對低溫度系數(shù)振蕩器產(chǎn)生的時鐘脈沖進行計數(shù)進而完成溫度測量。計數(shù)門的開啟時間由高溫度系數(shù)振蕩器來決定,每次測量前,首先將55所對應(yīng)的一個基數(shù)分別置入減法計數(shù)器1、溫度寄存器中,計數(shù)器1和溫度寄存器被預(yù)置在55所對應(yīng)的一個基數(shù)值。減法計數(shù)器1對低溫度系數(shù)晶振產(chǎn)
23、生的脈沖信號進行減法計數(shù),當(dāng)減法計數(shù)器1的預(yù)置值減到0時,溫度寄存器的值將加1,減法計數(shù)器1的預(yù)置將重新被裝入,減法計數(shù)器1重新開始對低溫度系數(shù)晶振產(chǎn)生的脈沖信號進行計數(shù),如此循環(huán)直到減法計數(shù)器計數(shù)到0時,停止溫度寄存器的累加,此時溫度寄存器中的數(shù)值就是所測溫度值。其輸出用于修正減法計數(shù)器的預(yù)置值,只要計數(shù)器門仍未關(guān)閉就重復(fù)上述過程,直到溫度寄存器值大致被測溫度值。另外,由于DS18B20單線通信功能是分時完成的,它有嚴(yán)格的時隙概念,因此讀寫時序很重要。系統(tǒng)對DS18B20的各種操作按協(xié)議進行。操作協(xié)議為:初使化DS18B20(發(fā)復(fù)位脈沖)發(fā)ROM功能命令發(fā)存儲器操作命令處理數(shù)據(jù)。DS18B2
24、0采用3腳PR35封裝或8腳SOIC封裝,其部結(jié)構(gòu)框圖如圖3.3所示。圖3.3 DS18B20的部結(jié)構(gòu)圖64位ROM的結(jié)構(gòu)開始8位是產(chǎn)品類型的編號,接著是每個器件的惟一的序號,共有48位,最后8位是前面56位的CRC檢驗碼,這也是多個DS18B20可以采用一線進行通信的原因。溫度報警觸發(fā)器和,可通過軟件寫入戶報警上下限。(3)溫度計算1、DS18B20用9位存貯溫值度,最高位為符號位,如表3.1為DS18B20的溫度存儲方式,負(fù)溫度S=1,正溫度S=0。如:00AAH為+85攝式度,0032H為25攝式度,F(xiàn)F92H為55攝式度表3.1 18B20用9位的溫度存儲方式2、DS18B20用12位
25、存貯溫值度,最高位為符號位,如表3.2為DS18B20的溫度存儲方式,負(fù)溫度S=1,正溫度S=0。如:0550H為+85攝式度,0191H為25.0625攝式度,FC90H為-55攝式度。 表3.2 18B20用12位的溫度存儲方式DS18B20溫度傳感器的部存儲器還包括一個高速暫存RAM和一個非易失性的可電擦除的EEROM。高速暫存RAM的結(jié)構(gòu)為8字節(jié)的存儲器,結(jié)構(gòu)如圖3.4所示。頭2個字節(jié)包含測得的溫度信息,第3和第4字節(jié)和的拷貝,是易失的,每次上電復(fù)位時被刷新。第5個字節(jié),為配置寄存器,它的容用于確定溫度值的數(shù)字轉(zhuǎn)換分辨率。圖3.4 DS18B20存儲器結(jié)構(gòu)DS18B20工作時寄存器中的
26、分辨率轉(zhuǎn)換為相應(yīng)精度的溫度數(shù)值。該字節(jié)各位的定義如圖3.2所示。低5位一直為,是工作模式位,用于設(shè)置DS18B20在工作模式還是在測試模式,DS18B20出廠時該位被設(shè)置為0,用戶要去改動,R1和R0決定溫度轉(zhuǎn)換的精度位數(shù),來設(shè)置分辨率。由表3.3可見,DS18B20溫度轉(zhuǎn)換的時間比較長,而且分辨率越高,所需要的溫度數(shù)據(jù)轉(zhuǎn)換時間越長。因此,在實際應(yīng)用中要將分辨率和轉(zhuǎn)換時間權(quán)衡考慮。表3.3 DS18B20溫度轉(zhuǎn)換時間表高速暫存RAM的第6、7、8字節(jié)保留未用,表現(xiàn)為全邏輯1。第9字節(jié)讀出前面所有8字節(jié)的CRC碼,可用來檢驗數(shù)據(jù),從而保證通信數(shù)據(jù)的正確性。當(dāng)DS18B20接收到溫度轉(zhuǎn)換命令后,開
27、始啟動轉(zhuǎn)換。轉(zhuǎn)換完成后的溫度值就以16位帶符號擴展的二進制補碼形式存儲在高速暫存存儲器的第1、2字節(jié)。單片機可以通過單線接口讀出該數(shù)據(jù),讀數(shù)據(jù)時低位在先,高位在后,數(shù)據(jù)格式以0.0625LSB形式表示。當(dāng)符號位S0時,表示測得的溫度值為正值,可以直接將二進制位轉(zhuǎn)換為十進制;當(dāng)符號位S1時,表示測得的溫度值為負(fù)值,要先將補碼變成原碼,再計算十進制數(shù)值;表3.4為部分溫度值對應(yīng)的二進制溫度數(shù)據(jù):表3.4 部分溫度值對應(yīng)的二進制溫度數(shù)據(jù)溫度/二進制表示十六進制表示+1250000 0111 1101 000007D0H+850000 0101 0101 00000550H+25.06250000 0
28、001 1001 00000191H+10.1250000 0000 1010 000100A2H+0.50000 0000 0000 00100008H00000 0000 0000 10000000H-0.51111 1111 1111 0000FFF8H-10.1251111 1111 0101 1110FF5EH-25.06251111 1110 0110 1111FE6FH-551111 1100 1001 0000FC90H3.1.3 時鐘芯片DS1302(1)時鐘芯片DS1302的性能DS1302 是DALLAS 公司推出的涓流充電時鐘芯片含有一個實時時鐘/日歷和31 字節(jié)靜態(tài)R
29、AM 通過簡單的串行接口與單片機進行通信實時時鐘/日歷電路提供秒分時日日期月年的信息每月的天數(shù)和閏年的天數(shù)可自動調(diào)整時鐘操作可通過AM/PM 指示決定采用24 或12 小時格式DS1302 與單片機之間能簡單地采用同步串行的方式進行通信僅需用到三個口線1 RES 復(fù)位2 I/O 數(shù)據(jù)線3 SCLK串行時鐘時鐘/RAM 的讀/寫數(shù)據(jù)以一個字節(jié)或多達(dá)31 個字節(jié)的字符組方式通信DS1302 工作時功耗很低保持?jǐn)?shù)據(jù)和時鐘信息時功率小于1mW。實時時鐘具有能計算2100 年之前的秒、分、時、日、日期、星期、月、年的能力還有閏年調(diào)整的能力318 位暫存數(shù)據(jù)存儲RAM串行I/O 口方式使得管腳數(shù)量 最少寬
30、圍工作電壓2.0 5.5V工作電流2.0V 時,小于300nA讀/寫時鐘或RAM 數(shù)據(jù)時有兩 種傳送方式單字節(jié)傳送和多字 圖3.5 DS1302的封裝與引腳功能節(jié)傳送字符組方式8 腳DIP 封裝或可選的8 腳SOIC 封裝根據(jù)表面裝配,如圖3.5所示簡單3 線接口與TTL 兼容Vcc=5V可選工業(yè)級溫度圍-40 +85(2)時鐘芯片DS1302的工作原理DS1302在每次進行讀、寫程序前都必須初始化,先把SCLK端置 “0”,接著把RST端置“1”,最后才給予SCLK脈沖;表3.5為DS1302的控制字,此控制字的位7必須置1,若為0則不能把對DS1302進行讀寫數(shù)據(jù)。對于位6,若對程序進行讀
31、/寫時RAM=1,對時間進行讀/寫時,CK=0。位1至位5指操作單元的地址。位0是讀/寫操作位,進行讀操作時,該位為1;該位為0則表示進行的是寫操作??刂谱止?jié)總是從最低位開始輸入/輸出的。“CH”是時鐘暫停標(biāo)志位,當(dāng)該位為1時,時鐘振蕩器停止,DS1302處于低功耗狀態(tài);當(dāng)該位為0時,時鐘開始運行?!癢P”是寫保護位,在任何的對時鐘和RAM的寫操作之前,WP必須為0。當(dāng)“WP”為1時,寫保護位防止對任一寄存器的寫操作。a.DS1302的控制字節(jié)DS1302的控制字如表3.5所示??刂谱止?jié)的高有效位(位7)必須是邏輯1,如果它為0,則不能把數(shù)據(jù)寫入DS1302中,位6如果0,則表示存取日歷時鐘數(shù)
32、據(jù),為1表示存取RAM數(shù)據(jù);位5至位1指示操作單元的地址;最低有效位(位0)如為0表示要進行寫操作,為1表示進行讀操作,控制字節(jié)總是從最低位開始輸出表3.5 DS1302的控制字b.數(shù)據(jù)輸入輸出(I/O)在控制指令字輸入后的下一個SCLK時鐘的上升沿時,數(shù)據(jù)被寫入DS1302,數(shù)據(jù)輸入從低位即位0開始。同樣,在緊跟8位的控制指令字后的下一個SCLK脈沖的下降沿讀出DS1302的數(shù)據(jù),讀出數(shù)據(jù)時從低位0位到高位7。如下圖3.6所示:圖3.6 DS1302讀/寫時序圖c.DS1302的數(shù)據(jù)讀寫DS1302單字節(jié)讀寫的波形如圖3.6所示。由波形可以看出,無論是從DS1302中讀一個數(shù)據(jù),還是寫一個字
33、節(jié)數(shù)據(jù)到DS1302中,都要先寫一個命令字到DS1302中。即通過SCLK引腳(7號引腳)向DS1302輸入8個脈沖,把I/O引腳(6號引腳)上的命令字寫入DS1302。為了啟動數(shù)據(jù)傳輸,引腳(5號引腳)應(yīng)為高電平。在將由0置1的過程中,SCLK引腳必須為邏輯0。然后才能進行讀寫操作。I/O引腳上的數(shù)據(jù)在SCLK的上升沿串行輸入(寫數(shù)據(jù)到DS1302),在SCLK的下降沿串行輸出(讀數(shù)據(jù))。d.DS1302的寄存器DS1302有12個寄存器,其中有7個寄存器與日歷、時鐘相關(guān),存放的數(shù)據(jù)位為BCD碼形式,其日歷、時間寄存器與其控制字見表3.6所示:寫寄存器讀寄存器Bit7Bit6Bit5Bit4
34、Bit3Bit2Bit1Bit080H81HCH10秒秒82H83H10分分84H85H12/010時時/PM86H87H0010日日88H89H00010月月8AH8BH00000星期8CH8DH10 年年8EH8FHWP0000000表3.6 DS1302的日歷、時間寄存器此外,DS1302 還有年份寄存器、控制寄存器、充電寄存器、時鐘突發(fā)寄存器與與RAM相關(guān)的寄存器等。時鐘突發(fā)寄存器可一次性順序讀寫除充電寄存器外的所有寄存器容。 DS1302與RAM相關(guān)的寄存器分為兩類:一類是單個RAM單元,共31個,每個單元組態(tài)為一個8位的字節(jié),其命令控制字為C0HFDH,其中奇數(shù)為讀操作,偶數(shù)為寫操
35、作;另一類為突發(fā)方式下的RAM寄存器,此方式下可一次性讀寫所有的RAM的31個字節(jié),命令控制字為FEH(寫)、FFH(讀)。 3.1.4 16*2LCD液晶顯示1602(1)1602采用標(biāo)準(zhǔn)的16腳接口,其中:第1腳:VSS為地電源。第2腳:VDD接5V正電源。第3腳:V0為液晶顯示器對比度調(diào)整端,接正電源時對比度最弱,接地電源時對比度最高,對比度過高時會產(chǎn)生“鬼影”,使用時可以通過一個10K的電位器調(diào)整對比度。第4腳:RS為寄存器選擇,高電平時選擇數(shù)據(jù)寄存器、低電平時選擇指令寄存器。第5腳:RW為讀寫信號線,高電平時進行讀操作,低電平時進行寫操作。當(dāng)RS和RW共同為低電平時可以寫入指令或者顯
36、示地址,當(dāng)RS為低電平RW為高電平時可以讀忙信號,當(dāng)RS為高電平RW為低電平時可以寫入數(shù)據(jù)。第6腳:E端為使能端,當(dāng)E端由高電平跳變成低電平時,液晶模塊執(zhí)行命令。第714腳:D0D7為8位雙向數(shù)據(jù)線。第1516腳:空腳。指令RSR/WD7D6D5D4D3D2D1D0清顯示0000000001光標(biāo)返回000000001*置輸入模式000000011/DS顯示開/關(guān)控制0000001DCB光標(biāo)或字符移位000001S/CR/L*置功能00001DLNF*置字符發(fā)生存貯器地址0001字符發(fā)生存貯器地址(AGG)置數(shù)據(jù)存貯器地址001顯示數(shù)據(jù)存貯器地址(ADD)讀忙標(biāo)志或地址01BF計數(shù)器地址(AC)
37、寫數(shù)到CGRAM或DDRAM10要寫的數(shù)從CGRAM或DDRAM讀數(shù)11讀出的數(shù)據(jù)(2)1602液晶模塊部的控制器共有11條控制指令,如表3.7所示:表3.7 控制指令它的讀寫操作、屏幕和光標(biāo)的操作都是通過指令編程來實現(xiàn)的。(說明:1為高電平、0為低電平)指令1:清顯示,指令碼01H,光標(biāo)復(fù)位到地址00H位置。指令2:光標(biāo)復(fù)位,光標(biāo)返回到地址00H。指令3:光標(biāo)和顯示模式設(shè)置 I/D:光標(biāo)移動方向,高電平右移,低電平左移 S:屏幕上所有文字是否左移或者右移。高電平表示有效,低電平則無效。指令4:顯示開關(guān)控制。 D:控制整體顯示的開與關(guān),高電平表示開顯示,低電平表示關(guān)顯示 C:控制光標(biāo)的開與關(guān),
38、高電平表示有光標(biāo),低電平表示無光標(biāo) B:控制光標(biāo)是否閃爍,高電平閃爍,低電平不閃爍。指令5:光標(biāo)或顯示移位 S/C:高電平時移動顯示的文字,低電平時移動光標(biāo)。指令6:功能設(shè)置命令 DL:高電平時為4位總線,低電平時為8位總線 N:低電平時為單行顯示,高電平時雙行顯示 F: 低電平時顯示5*7的點陣字符,高電平時顯示5*10的點陣字符。指令7:字符發(fā)生器RAM地址設(shè)置。指令8:DDRAM地址設(shè)置。指令9:讀忙信號和光標(biāo)地址 BF:為忙標(biāo)志位,高電平表示忙,此時模塊不能接收命令或者數(shù)據(jù),如果為低電平表示不忙。指令10:寫數(shù)據(jù)。指令11:讀數(shù)據(jù)。(3)DM-162液晶顯示模塊可以和單片機AT89C5
39、2直接接口,電路如圖3.7所示:圖3.7 接口電路液晶顯示模塊是一個慢顯示器件,所以在執(zhí)行每條指令之前一定要確認(rèn)模塊的忙標(biāo)志為低電平,表示不忙,否則此指令失效。要顯示字符時要先輸入顯示字符地址,也就是告訴模塊在哪里顯示字符,表3.8是DM-162的部顯示地址。表3.8 DM-16的部顯示地址比如第二行第一個字符的地址是40H,那么是否直接寫入40H就可以將光標(biāo)定位在第二行第一個字符的位置呢?這樣不行,因為寫入顯示地址時要求最高位D7恒定為高電平1所以實際寫入的數(shù)據(jù)應(yīng)該是01000000B(40H)+10000000B(80H)=11000000B(C0H)(4)基本操作時序如圖3.8所示:讀狀
40、態(tài)輸入:RS=L,RW=H,E=H 輸出:DB0DB7=狀態(tài)字寫指令輸入:RS=L,RW=L,E=下降沿脈沖,DB0DB7=指令碼讀數(shù)據(jù) 輸入:RS=H,RW=H,E=H 輸出:DB0DB7=數(shù)據(jù)寫數(shù)據(jù)輸入:RS=H,RW=L,E=下降沿脈沖,DB0DB7=數(shù)據(jù)圖3.8 LCD的讀寫時序4 硬件電路4.1 單片機主控制模塊的設(shè)計AT89S52單片機為40引腳雙列直插芯片, MCS-51單片機共有4個8位的I/O口(P0、P1、P2、P3),每一條I/O線都能獨立地作輸出或輸入。單片機的最小系統(tǒng)如下圖所示,18引腳和19引腳接時鐘電路,XTAL1接外部晶振和微調(diào)電容的一端,在片它是振蕩器倒相放大
41、器的輸入,XTAL2接外部晶振和微調(diào)電容的另一端,在片它是振蕩器倒相放大器的輸出.第9引腳為復(fù)位輸入端,接上電容,電阻與開關(guān)后夠上電復(fù)位電路,20引腳為接地端,40引腳為電源端. 如圖4.1所示:圖4.1 單片機最小系統(tǒng)4.2 時鐘電路模塊的設(shè)計圖4.2是 DS1302與單片機的連接,其中Vcc1為后備電源,Vcc2為主電源。在主電源關(guān)閉的情況下,也能保持時鐘的連續(xù)運行。DS1302由Vcc1或Vcc2兩者中的較大者供電。當(dāng)Vcc2大于Vcc1+0.2V時,Vcc2給DS1302供電。當(dāng)Vcc2小于Vcc1時,DS1302由Vcc1供電。X1和X2是振蕩源,外接32.768KHz晶振。RST是
42、復(fù)位/片選線,通過把RST輸入驅(qū)動置高電平來啟動所有的數(shù)據(jù)傳送。RST輸入有兩種功能:首先,RST接通控制邏輯,允許地址/命令序列送入移位寄存器;其次,RST提供終止單字節(jié)或多字節(jié)數(shù)據(jù)的傳送手段。當(dāng)RST為高電平時,所有的數(shù)據(jù)傳送被初始化,允許對DS1302進行操作。如果在傳送過程中RSTS置為低電平,則會終止此次數(shù)據(jù)傳送,I/O引腳變?yōu)楦咦钁B(tài)。上電動行時,在Vcc大于等于2.5V之前,RST必須保持低電平。中有在SCLK 為低電平時,才能將RST置為高電平,I/O為串行數(shù)據(jù)輸入端(雙向)。SCLK始終是輸入端。圖4.2 時鐘芯片與單片機的連接4.3 溫度采集模塊設(shè)計如圖4.3所示,采用數(shù)字式
43、溫度傳感器DS18B20,它是數(shù)字式溫度傳感器,具有測量精度高,電路連接簡單特點,此類傳感器僅需要一條數(shù)據(jù)線進行數(shù)據(jù)傳輸,使用2.4與DS18B20的I/O口連接加一個上拉電阻,Vcc接電源,Vss接地。圖4.3 溫度傳感器與單片機的連接4.4 功能按鈕設(shè)計當(dāng)按鈕被按下時,該按鈕對應(yīng)的I/O口被拉為低電平,松開時按鈕對應(yīng)的I/O口由部的上拉電阻將該I/O拉為高電平,如圖4.4所示:圖4.4 功能按鍵電路4.5 16*2 LCD1602液晶顯示電路設(shè)計根據(jù)其讀寫的時序模擬總線的方式與單片機進行數(shù)據(jù)的通訊,首先將數(shù)據(jù)從I/O口讀入或送出,再選擇R/W 和RS的電平進行不同的操作,在使能端E下降沿時
44、觸發(fā)數(shù)據(jù)的讀入或送出。注意P0口要接上拉電阻,如圖4.5所示:圖4.5 LCD液晶顯示屏與單片機的連接4.6總體電路圖本設(shè)計的具在溫度指示的數(shù)字萬年歷的總體電路圖如圖4.6所示:圖4.6 總體電路圖5 系統(tǒng)軟件設(shè)計5.1 系統(tǒng)模塊的功能分劃分萬年歷程序設(shè)計總體上分為四個大模塊,分別是DS1302時鐘程序模塊、DS18B20測溫模塊、LCD顯示模塊、鍵盤功能模塊。a. DS1302時鐘程序模塊包括設(shè)置DS1302初始時間、從DS1302 讀時間子程序、寫1302一字節(jié)子程序、讀1302一字節(jié)、關(guān)閉寫保護、開啟寫保護、關(guān)閉時鐘、延時子100MS程序。b. DS18B20測溫模塊包括DS18B20的
45、初始化子程序、DS18B20數(shù)據(jù)處理子程序、讀出溫度值的子程序、DS18B20復(fù)位子程序、寫DS18B20的1位字節(jié)子程序、讀DS18B20的1個字節(jié)子程序。c. LCD顯示模塊包括LCD初始化子程序、寫入控制命令的子程序、判斷LCD顯示器是否忙的子程序、向LCD中的DDRAM中寫數(shù)據(jù)、查詢LCD字符表、調(diào)整模式的顯示子程序、正常模式LCD顯示子程序。d. 鍵盤功能模塊包括模式選擇按鍵SET子程序、調(diào)整模式選擇子程序、OUT鍵掃描子程序、UP按鍵掃描子程序、DOWN按鍵掃描子程序。5.2 總體程序流程框圖本設(shè)計中,實現(xiàn)功能的總體程序流程框圖如下圖5.1所示:調(diào)用調(diào)整模式模塊NO停止時鐘,置時鐘
46、停止標(biāo)志位YESCOUNT值賦給A調(diào)用JMP A+DPTR散轉(zhuǎn)指令散轉(zhuǎn)到8個跳轉(zhuǎn)首地址由COUNT的值轉(zhuǎn)入秒/分/時/星期/日期/月/年的修改位的操作掃描OUT、UP、DOWN三個按鍵OUT、UP、DOWN三個按鍵如果有按下,執(zhí)行相應(yīng)的功能調(diào)用調(diào)整模式下的顯示子程序返回標(biāo)志位DONE的查詢當(dāng)前時鐘停止嗎?標(biāo)志位DONE=1嗎?NO調(diào)用LCD顯示模塊掃描SET按鈕清時鐘停止、調(diào)整模式標(biāo)志位4個模塊的初始化程序開始SET鍵有按下COUNT加1YES圖5.1 總體程序流程框圖5.3 時鐘調(diào)整時間的流程圖時鐘調(diào)整時間的流程圖5.2所示:YES時鐘顯示開始判斷SET鍵是否有按下?COUNT計算按鍵的次數(shù)
47、1次,進入秒調(diào)整2次,進入分調(diào)整3次,進入時調(diào)整等待按鍵等待按鍵等待按鍵UP有效DOWN有效OUT有效DOWN有效UP有效DOWN有效UP有效OUT有效OUT有效加1減1加1減1加1減1NO4、57次同理周、日/月/年的調(diào)整退出時間調(diào)整圖5.2時鐘調(diào)整時間的流程5.4 修改鍵“UP”的功能流程圖修改鍵“UP”的功能流程圖如圖5.3所示:開始端口寫1,并掃描UP鍵是否有按下?退出UP鍵的掃描NOA賦給秒的單元內(nèi)容秒對應(yīng)的單元內(nèi)容賦給A,A再加1年位的加1操作加1后秒內(nèi)容溢出嗎?BCD碼調(diào)整溢出置0退出秒的加1操作YE溫度轉(zhuǎn)換讀取溫度數(shù)值流程圖SNO散轉(zhuǎn)指令JMP A+DPTR賦跳轉(zhuǎn)的表頭給DPT
48、RA的值為0是退出秒位的加1操作分位的加1操作時位的加1操作星期位的加1操作日位的加1操作月位的加1操作圖5.3修改鍵“UP”的功能流程圖YES延時,將COUNT的值賦給A5.5溫度轉(zhuǎn)換流程圖初始化DS18B20開始應(yīng)答脈沖發(fā)起Skip Rom命令發(fā)起Convert命令延時1S等待溫度轉(zhuǎn)換完成初始化DS18B20應(yīng)答脈沖發(fā)起Read Seratchpad命令讀取第1、2字節(jié)即為溫度數(shù)據(jù)NOYESYESNO單片機實現(xiàn)對溫度傳感器DS18B20的溫度轉(zhuǎn)換讀取溫度數(shù)值流程圖如下圖5.4所示:圖5.4溫度轉(zhuǎn)換讀取溫度數(shù)值流程圖6 系統(tǒng)仿真測試首先把各個模塊的程序編好,在偉福W6000中調(diào)試沒有錯誤后,
49、再到Protues 7.1中畫好并連接電路圖進行程序仿真。各個部分的功能后再把它們綜合到一個主程序中去,在偉福W6000中調(diào)試通過后再把它用Keil uVision2軟件把程序生成hex格式最后到Protues 7.1中仿真。在綜合到一起的時候,出現(xiàn)了RAM分配錯誤的問題,因為原先是一個模塊子程序在運行,RAM的分配只要不要跟子程序中的分配不沖突就可以了,但是在綜合各個模塊子程序的時候就會出現(xiàn)RAM分配沖突的問題。最好是在設(shè)計程序之前先把RAM的空間分配好。6.1 KEIL的使用Keil uVision2是目前使用廣泛的單片機開發(fā)軟件,它集成了源程序編輯和程序調(diào)試于一體,支持匯編、C、PL/M
50、語言。keil C51 v6.12 的使用: 點擊桌面快捷圖標(biāo),如圖6.1所示,可以直接進入主畫面:在Keil系統(tǒng)中,每做個獨立的程序,都視為工程(或者叫項目)。首先從菜但的“工程”中“新建工程.”,建立我們圖6.1 快捷圖標(biāo)將要做的工程項目如圖6.2所示:圖6.2 新建建工程新建的工程要起個與工程項目意義一致的名字,可以是中文名;我們這里的程序是實驗測試程序,所以起的名字為 Test ,并將 Test 工程“保存”到 D:Keil 下如圖6.3所示:圖6.3 新建名工程窗口接下來,Keil環(huán)境要求我們?yōu)?Test 工程選擇一個單片機型號;我們選擇 Atmel 公司的 89C52(雖然我們使用
51、的是89S52,但由于89S52與89C52、外部結(jié)構(gòu)完全一樣,所以這里依然選擇“89C52”),如圖6.4所示: 圖6.4選擇工程項目“確定”后工程項目就算建立了。立了工程項目,肯定要實施這個工程,現(xiàn)在就為工程添加程序;點擊“文件”中的“新建”,新建一個空白文檔,如圖6.5所示;這個空白文檔就是讓我們編寫單片機程序的場所。在這里你可以進行編輯、修改等操作。圖6.5 新建文件寫完后再檢查一下,并保存文件,保存文件時,其文件名最好與前面建立的工程名一樣(當(dāng)然這里為 Test 了),其擴展名必須為 .Asm !“文件名”中一定要寫全,如:Test.Asm ;保存后的文檔彩色語法會起作用,將關(guān)鍵字實
52、行彩色顯示,如圖6.6所示:圖6.6 保存文檔保存了Asm文件后,還要將其添加到工程中。具體做法如下:(如下圖6.7所示)鼠標(biāo)右鍵點擊 “Source Group 1”,在彈出的菜單中選“增加文件到組 Source Group 1”圖6.7 添加文件在接下來出現(xiàn)的窗口中,選擇“文件類型”為“Asm源文件(*.a*,*.src)”(由于我們使用的是匯編語言,所以選擇Asm源文件),選中剛才保存的 Test.Asm,按“Add”,再按“關(guān)閉”,文件就添加到了工程中,如圖6.8所示:圖6.8 添加到工程中向工程添加了源文件后,鼠標(biāo)右鍵點擊 “TarGet 1” ,在彈出的菜單中選“目標(biāo) Target
53、 1 屬性”:在打開的話框中,選擇“輸出”選項卡,在這個選項卡中,“E生成HEX文件”選項前要打勾,按“確定”退出,如圖6.9所示。圖6.9 目標(biāo)TarGet 1屬性最后,從菜單的“工程”中執(zhí)行“R重新構(gòu)造所有目標(biāo)”(或者按下圖紅圈中的按鈕),匯編、連接、創(chuàng)建Hex文件一氣呵成;在工程文件的目錄下就會生成與工程名一樣的一些文件,其部分文件我們并不必關(guān)心,而生成的 Hex 文件是我們需要的!它是要燒寫到單片機中的最終代碼,也就是單片機可以執(zhí)行的程序。 這里生成的是 Test.HEX ,稍后就寫入。若在下面的狀態(tài)窗中有錯誤提示,就需要再次編輯、修改源程序(如語法、字符有錯等)、保存、構(gòu)造所有。直至
54、沒有錯誤,如圖6.10所示:圖6.10生成hex格式接下來,我們啟動 Protues軟件仿真,將剛剛生成的 Test.Hex 燒寫到單片機芯片,在實驗板上實際驗證一下。6.2 Protues軟件仿真Proteus ISIS是英國Labcenter公司開發(fā)的電路分析與實物仿真軟件。它運行于Windows操作系統(tǒng)上,可以仿真、分析(SPICE)各種模擬器件和集成電路,該軟件的特點是:實現(xiàn)了單片機仿真和SPICE電路仿真相結(jié)合。具有模擬電路仿真、數(shù)字電路仿真、單片機與其外圍電路組成的系統(tǒng)的仿真、RS232動態(tài)仿真、I2C調(diào)試器、SPI調(diào)試器、鍵盤和LCD系統(tǒng)仿真的功能;有各種虛擬儀器,如示波器、邏輯
55、分析儀、信號發(fā)生器等。支持主流單片機系統(tǒng)的仿真。目前支持的單片機類型有:68000系列、8051系列、AVR系列、PIC12系列、PIC16系列、PIC18系列、Z80系列、HC11系列以與各種外圍芯片。提供軟件調(diào)試功能。在硬件仿真系統(tǒng)中具有全速、單步、設(shè)置斷點等調(diào)試功能,同時可以觀察各個變量、寄存器等的當(dāng)前狀態(tài),因此在該軟件仿真系統(tǒng)中,也必須具有這些功能;同時支持第三方的軟件編譯和調(diào)試環(huán)境,如Keil C51 uVision2等軟件。具有強大的原理圖繪制功能??傊撥浖且豢罴瘑纹瑱C和SPICE分析于一身的仿真軟件,功能極其強大。(1)進入Proteus ISIS雙擊桌面上的ISIS 6
56、Professional圖標(biāo)或者單擊屏幕左下方的“開始”“程序”“Proteus 6 Professional”“ISIS 6 Professional”,出現(xiàn)如圖6.11所示屏幕,表明進入Proteus ISIS集成環(huán)境。 圖6.11 啟動屏幕(2)工作界面Proteus ISIS的工作界面是一種標(biāo)準(zhǔn)的Windows界面,如圖4-2所示。包括:標(biāo)題欄、主菜單、標(biāo)準(zhǔn)工具欄、繪圖工具欄、狀態(tài)欄、對象選擇按鈕、預(yù)覽對象方位控制按鈕、仿真進程控制按鈕、預(yù)覽窗口、對象選擇器窗口、圖形編輯窗口,如圖6.12所示:圖6.12 工作界面根據(jù)設(shè)計原理畫出仿真原理圖(如附錄二),檢查電路連接無誤后,雙擊單片機芯
57、片AT89S52,如圖6.13所示:圖6.13 燒寫程序把生成的 Test.Hex 燒寫到單片機芯片,點擊仿真進程控制按鈕,點擊運行,觀看LCD液晶顯示效果,若在實驗板上實際驗證的并不是我們預(yù)期的效果,那么,就需要再次返回到編輯、修改源程序那一步,修改后再構(gòu)造所有,再次將生成的Hex文件在51ISP中燒寫、實驗,直至成功!如下圖6.14是本設(shè)計測試的效果顯示。圖6.14 測試結(jié)果顯示致 本次設(shè)計是我們遇到過的較大的設(shè)計,所以遇到的問題也比較的多,尤其是以前沒有接觸過如此復(fù)雜的硬件電路以與軟件編程,在軟、硬件設(shè)計和調(diào)試中遇到了不少的困難,在建軍老師的耐心指導(dǎo)下和同學(xué)的幫助才逐一克服了難題,學(xué)習(xí)到
58、了不少的專業(yè)知識。在整個設(shè)計過程之前,我已經(jīng)在網(wǎng)上找了相關(guān)方面的資料,萬事開始難,一開始不知道從哪里下手。后來慢慢學(xué)會分析系統(tǒng),將系統(tǒng)模塊化,各個模塊可以在軟件或者硬件上實現(xiàn)。在確保各個模塊的硬件電路和與之相搭配的程序能夠正常工作后在把它們組成一個系統(tǒng)。由于我的理論知識水平有限,實踐能力和設(shè)計經(jīng)驗不足,在設(shè)計的過程中難免還存在一些問題甚至是錯誤。懇請各位老師批評指導(dǎo),以便我在以后的學(xué)習(xí)和工作中加以改正。我要衷心的感我的指導(dǎo)老師和在這三年中辛勤培育過我的所有老師與領(lǐng)導(dǎo),希望我的畢業(yè)設(shè)計能給各位老師交上一份滿意的答卷,也為我這三年的大學(xué)生活畫上一個圓滿的句號!本次畢業(yè)設(shè)計能夠順利完成離不開我的指導(dǎo)
59、老師建軍老師的幫助,在老師的細(xì)心指導(dǎo)下,本設(shè)計得以順利完成,在這里對他的幫助表示衷心的感。當(dāng)然也離不開同學(xué)對我的大力支持,在此一并對他們表示感!在指導(dǎo)老師的幫助下,我能夠認(rèn)清自己的不足,并能很好的解決這些問題。在今后的日子里,我會進一步加強自己的動手能力,豐富自己的知識面,并在以后工作崗位中發(fā)揮我所長,為社會作出貢獻。參考文獻朝青.單片機原理與接口技術(shù)M,:航天航空大學(xué),2005廣弟.單片機基礎(chǔ)M,:航空航天大學(xué),2000萬光毅.單片機實驗與實踐教程M,:航空航天大學(xué),2003唐亞平、移倫.單片機原理實訓(xùn)與學(xué)習(xí)指導(dǎo)M,:中南大學(xué),2006軍.單片機原理與接口技術(shù)M,華東理工大學(xué),2006自美.
60、電子線路設(shè)計、實驗、測試M,:華中理工大學(xué),2000附錄一 總體電路的PCB板圖附錄二 設(shè)計電路的仿真電路圖附錄二 萬年歷源程序COUNT EQU 67H ;SET鍵按下的次數(shù)DONE BIT 40H ;進入調(diào)整狀態(tài)的標(biāo)志位FLAG BIT 41H ;時鐘停止標(biāo)志位SETS BIT P2.0 ;SET鍵UP BIT P2.1 ;UP鍵DOWN BIT P2.2 ;DOWN鍵OUT BIT P2.3 ;OUT鍵RS BIT P3.5 ; LCD1602數(shù)據(jù)/命令選擇端RW BIT P3.6 ; LCD1602讀寫選擇端E BIT P3.7 ; LCD1602使能端DAT BIT P2.4 ;DS
溫馨提示
- 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)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 拳館踢館合同協(xié)議書
- 惠農(nóng)補貼分戶協(xié)議書
- 拓展業(yè)務(wù)承包協(xié)議書
- 房屋終止出租協(xié)議書
- 故意損壞調(diào)解協(xié)議書
- 承包土地劃分協(xié)議書
- 房子欠款抵押協(xié)議書
- 平利生意轉(zhuǎn)讓協(xié)議書
- 房產(chǎn)同價置換協(xié)議書
- 放棄財產(chǎn)份額協(xié)議書
- EOP II溝通交流環(huán)節(jié)藥學(xué)專業(yè)主要考慮-新藥3期臨床試驗前藥學(xué)溝通交流技術(shù)要求及案例分析
- 2024年第三季度意識形態(tài)分析研判報告5篇
- DB43T 2558-2023 城鎮(zhèn)低效用地識別技術(shù)指南
- DB11T 1320-2023 危險場所電氣防爆安全檢測技術(shù)規(guī)范
- 2024年時事政治考點大全(173條)
- 施工場地治安保衛(wèi)管理計劃
- 6《夜間飛行的秘密》(課件)統(tǒng)編版語文四年級上冊
- 3.5 鼓樂鏗鏘 課件高中音樂人音版(2019) 必修 音樂鑒賞
- 成人中心靜脈導(dǎo)管(CVC)堵塞風(fēng)險評估及預(yù)防-2024團體標(biāo)準(zhǔn)
- 《聲聲慢(尋尋覓覓)》課件
- 2024年秋季新人教版八年級上冊物理全冊教案(2024年新教材)
評論
0/150
提交評論