51單片機(jī)多功能電子時鐘_第1頁
51單片機(jī)多功能電子時鐘_第2頁
已閱讀5頁,還剩16頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、常熟理工學(xué)院電氣與自動化工程學(xué)院單片機(jī)設(shè)計(jì)與應(yīng)用課程設(shè)計(jì)題目:51單片機(jī)多功能電子時鐘姓 名:鄧才明_學(xué) 號:040111102_班 級:1601112_指導(dǎo)教師:_起止日期:_常熟理工電氣與自動化工程學(xué)院課程設(shè)計(jì)-2 -51單片機(jī)多功能電子時鐘鄧才明常熟理工電氣與自動化工程學(xué)院,20130922摘要:本設(shè)計(jì)開發(fā)了一款具有日期、時間、星期和氣溫同步顯示功能的電子時鐘,并且能設(shè)置鬧鐘、轉(zhuǎn)換農(nóng)歷、顯示相關(guān)節(jié)日工作原理是主控 MC(AT89C52 讀取實(shí)時 時鐘芯片 DS12CR887 獲取時間信息,由全數(shù)字單總線結(jié)構(gòu)溫度傳感器DS18B20讀取溫度信息,經(jīng) MCU 處理,送 LCD12864 顯示

2、;利用三線串口控制語音模塊WT-588D-20S 刖定時讀出時間和響應(yīng)鬧鈴。關(guān)鍵字:DS12CR887 DS18B20 WT-588D-20SS 12864 1 方案比較與論證當(dāng)下,日歷芯片很多,萬年歷實(shí)現(xiàn)方案很多,我們根據(jù)自己實(shí)際情況,提出如下方案.1.1 時間部分:方案一、利用單片機(jī)內(nèi)部定時器產(chǎn)生秒信號,通過軟件處理得到時間信息,送LCD顯示.方案二、利用通用串行實(shí)時時鐘芯片 DS1302 產(chǎn)生時間信息,利用 MCU 賣取時間信 息,送 LCD 顯示.方案三、通過實(shí)時時鐘芯片 DS12CR88,獲取時間信息,經(jīng) MCI 處理,送 LCD 顯示. 方案一電路結(jié)構(gòu)簡單,可控性強(qiáng),但斷電后時間數(shù)

3、據(jù)完全消失,再次上電后需重新 設(shè)定,且由于電路本身缺陷和附加干擾較多,時間誤差較大 .方案二電路結(jié)構(gòu)簡單, 時間精度較高,由于使用串行數(shù)據(jù)傳輸,節(jié)省MCU 資源,但 DS1302 無內(nèi)置電池,掉電后,數(shù)據(jù)丟失,重新上電后需對時.方案三采用實(shí)時時鐘芯片 DS12CR88,其內(nèi) 部具有內(nèi)置鋰電池,在掉電的情況下可以正常工作 10 年以上,且?guī)в蟹且资?RAM 可以保證在掉電的情況下,用戶的定時信息不會丟失;帶有溫度補(bǔ)償,保證時間數(shù) 據(jù)的準(zhǔn)確.經(jīng)過綜合考慮,我們認(rèn)為方案三滿足設(shè)計(jì)需求.1.2 溫度部分由于只是測量氣溫,用數(shù)字溫度傳感器單總線結(jié)構(gòu)DS18B20 即可滿足要求,該器件采用單總線結(jié)構(gòu),且

4、數(shù)字傳輸,可以與 CPU 直接接口,電路結(jié)構(gòu)簡便,可靠性 好.1.3 主控部分選用單片微控制器 AT89C52 作為主控.系統(tǒng)方案方框圖如圖 2.1 所示常熟理工電氣與自動化工程學(xué)院課程設(shè)計(jì)-3 -圖 1.1 系統(tǒng)方案2.方案實(shí)現(xiàn)2.1 器件簡介(1) AT89C52AT89C52 是 ATMEL 公司生產(chǎn)的通用低功耗 8 位 CMO 微控器, 具有 8051 內(nèi)核和 8KB的可編程 Flash 程序存儲空間以及 256 字節(jié) RAM 有 32 個通用 10 口線和全雙工 串口,兩個數(shù)據(jù)指針、兩個 16 位可編程計(jì)數(shù)器/定時器、8 個 2 級優(yōu)先級中斷源, 具有片內(nèi)時鐘電路,通過簡單的外接器件

5、即可實(shí)現(xiàn)時鐘電路(2) DS12CR887引腳結(jié)構(gòu)及其功能如圖 3.1.Vcc sawNCNCNCIRQRESETDSNCRMAS圖 2.1 DS12CR887 弓 I 腳結(jié)構(gòu)AD0-AD7 地址/數(shù)據(jù)總線NCNCADDAD1AD2AD3AD4AD5AD6AD7GfJD常熟理工電氣與自動化工程學(xué)院課程設(shè)計(jì)-4 -NCMOT:空腳:總線模式選擇常熟理工電氣與自動化工程學(xué)院課程設(shè)計(jì)-5 -CS :片選信號AS :地址鎖存信號R/W :寫信號(intel 總線模式下) DS :讀信號(in tel 總線模式下)RESET :復(fù)位信號IRQ :中斷請求輸岀VCC : +5V 電源 GND :電源地DS

6、12CR88 是美國 DALLAS導(dǎo)體公司生產(chǎn)的實(shí)時時鐘芯片.采用 24 引腳雙列 直插式的圭寸裝形式.芯片的晶體振蕩器、振蕩電路、充電電路和可充電鋰電池等一 起封裝在芯片內(nèi)部,組成一個加厚的集成電路模塊.電路通電時,其內(nèi)部充電電路 便自動對其內(nèi)部電池充電.可保證時鐘數(shù)據(jù) 10 年內(nèi)不會丟失.DS12C887 內(nèi)部設(shè)有 方便的接口電路,接口設(shè)計(jì)簡便,使其與各種微處理器的接口大大簡化.使用時無需外圍電路元件,通過對 MOT 引腳的電平控制,可以實(shí)現(xiàn)與不同的計(jì)算機(jī)總線連接.DS12C887 能夠自動存取并更新當(dāng)前的時間,CPU 可通過讀取 DS12CR887 勺內(nèi) 部時標(biāo)寄存器得到當(dāng)前的時間和日歷

7、,也可通過選擇二進(jìn)制碼或BCD 碼初始化芯片的 10 個時標(biāo)寄存器.其中 114 字節(jié)的非易失性靜態(tài) RAM 可供用戶使用,可以在 控制器掉電的情況下,保存一些重要的數(shù)據(jù).DS12C887 的 4 個狀態(tài)寄存器用來控 制和指出DS12CR887 模塊當(dāng)前的工作狀態(tài),除數(shù)據(jù)更新周期外,程序可隨時讀寫 這 4 個寄存器.其內(nèi)部結(jié)構(gòu)如下圖 3.2.DS18B20圖 2.2 DS12CR887 內(nèi)部結(jié)構(gòu)常熟理工電氣與自動化工程學(xué)院課程設(shè)計(jì)-6 -DS18B2Q 是美國 DALLAS 半導(dǎo)體公司生產(chǎn)的可組網(wǎng)數(shù)字式溫度傳感器,在其內(nèi) 部使用了在板(ON-B0ARD專利技術(shù).全部傳感元件及轉(zhuǎn)換電路僅集成在形

8、如三極 管的一個集成電路內(nèi).DS18B20 采用單總線接口方式,與微處理器連接時僅需要一 條總線即可實(shí)現(xiàn)微處理器與DS18B20 的雙向通訊;支持多點(diǎn)組網(wǎng)功能,多個DS18B2C 可以并聯(lián)在一條總線上,即可實(shí)現(xiàn)多點(diǎn)測溫;在使用中不需要任何外圍元 件測溫范圍為55C+ 125C,結(jié)果以 9 位數(shù)字量方式串行傳送.DS18B20 測溫 原理如圖 3.3 所示.圖 2.3 DS18B20 內(nèi)部結(jié)構(gòu)圖中低溫度系數(shù)晶振的振蕩頻率受溫度影響很小,用于產(chǎn)生固定頻率的脈沖信 號送給計(jì)數(shù)器1.高溫度系數(shù)晶振隨溫度變化其振蕩率明顯改變,所產(chǎn)生的信號 作為計(jì)數(shù)器 2 的脈沖輸入.計(jì)數(shù)器 1 和溫度寄存器被預(yù)置在-5

9、5E所對應(yīng)的一個 基數(shù)值.計(jì)數(shù)器 1 對低溫度系數(shù)晶振產(chǎn)生的脈沖信號進(jìn)行減法計(jì)數(shù),當(dāng)計(jì)數(shù)器1的預(yù)置值減到 0 時,溫度寄存器的值將加 1 ,計(jì)數(shù)器 1 的預(yù)置將重新被裝入, 計(jì)數(shù)器 1 重新開始對低溫度系數(shù)晶體振蕩器產(chǎn)生的脈沖信號進(jìn)行計(jì)數(shù), 如此循 環(huán)直到計(jì)數(shù)器 2 計(jì)數(shù)到 0 時,停止溫度寄存器值的累加,此時溫度寄存器中的 數(shù)值即為所測溫度.其內(nèi)部帶有非線性修正,確保溫度數(shù)據(jù)的準(zhǔn)確性.DS18B20的測溫分辨率為 0.5C以 9 位數(shù)據(jù)格式表示,其中最低有效位(LSB 由比較器 進(jìn)行 0.25C比較,當(dāng)計(jì)數(shù)器 1 中的余值轉(zhuǎn)化成溫度后低于 0.25C時,清除溫度 寄存器的最低位(LSB,當(dāng)計(jì)

10、數(shù)器 1 中的余值轉(zhuǎn)化成溫度后高于 0.25C,置 位溫度寄存器的最低位(LSB,DS18B20溫度數(shù)據(jù)格式如表 3.1 所示.bit?4bii 3Vic:Lit 1biiOLS2A2。2*2bit ISbit 14bit Hbit 12hit1Lbir L0bit9bitsMS ByteSsSSs2*表 2.1 DS18B20 溫度數(shù)據(jù)格式DS18B2C 采用 12 位二進(jìn)制數(shù)據(jù)表示溫度,分成兩個字節(jié),低字節(jié)低四位為小數(shù) 位,低字節(jié)高四位和高字節(jié)低四位組成溫度信息的8 位整數(shù)位,其中第一位為符號位,為 0 表示溫度為正值,為 1 表示溫度為負(fù)值.當(dāng)溫度為負(fù)值時,數(shù)據(jù)采 用補(bǔ)碼存放.高字節(jié)高四

11、位無效,與符號位保持一致.溫度與數(shù)據(jù)對應(yīng)關(guān)系如表 3.2 所示.常熟理工電氣與自動化工程學(xué)院課程設(shè)計(jì)-7 -TEMFEltATUKEDIGITAL OUTPUT(Biiiiiry)DIGITAL OVTPITCH)+125Xoooooiii noi oooo07D0110000 0101 0101 00000550h+25.0625C0000 0001 0001019lh于O.125C0000 0000 1010001000.4211+0.5C0000 0000 0000 woo00040C0000 0000 0000 0000OOOOliOFCmi mi mi loooFFFSh-lO.!2

12、5aC1J1I 111! 0101 1110FFFEh-25.0625C1111 11100110 1111EE6F11-55C11 I 1100 JOOJ 0000FC9011Ttw powepoa re&et value of rh renipeiamre regi$ti is +S? C表 2.2 部分溫度對應(yīng)數(shù)據(jù)WT588D-20SSWT588D 語音芯片是一款功能強(qiáng)大的可重復(fù)擦除燒寫的語音單片機(jī)芯片。WT588D 讓語音芯片不再為控制方式而尋找合適的外圍單片機(jī)電路,高度集成的單片機(jī)技術(shù)足于取代復(fù)雜的外圍控制電路。配套 WT588DVoiceChip 上位機(jī)操作軟件可隨意更換

13、WT588D語音單片機(jī)芯片的任何一種控制模式,把信息下載到SPI-Flash 上即可。軟件操作方式簡潔易懂,撮合了語音組合技術(shù),大大減少了語音編輯的時間。完全支持在線下載,即便是 WT588D 通電的情況下,一樣可以通 過下載器給關(guān)聯(lián)的 SPI-Flash 下載信息,給 WT588D 語音芯片電路復(fù)位一下,就 能更新到剛下載進(jìn)來的控制模式。 支持插入靜音模式,插入靜音不占用 SPI-Flash 內(nèi)存的容量,一個地址位可插入10ms25min 的靜音。三線串口控制模式和三線串口控制控制端口擴(kuò)展輸出模式之間可通過發(fā)碼切 換,三線串口控制模式下,能控制語音播放、停止、循環(huán)播放和音量大小,或者直 接觸

14、發(fā) 0219 地址位的任意語音,三線串口控制控制端口擴(kuò)展輸出可以擴(kuò)展輸出 8 位,在兩種模式下切換,能讓上一個模式的最后一種狀態(tài)保持著進(jìn)入下一個模式。P13P14P15P16VDD-SIMPOOP01P02P03VDDu;NCVS SPK PWM-VDD_SPKPWM+/DAC VSS/RESET10n 091N COD二P1711常熟理工電氣與自動化工程學(xué)院課程設(shè)計(jì)-8 -WT588D-20SS常熟理工電氣與自動化工程學(xué)院課程設(shè)計(jì)-9 -圖 2.4 WT588D-20SS 引腳2.2 硬件電路設(shè)計(jì)(1)電源部分LM2596 開關(guān)電源芯片是降壓型電源管理單片集成電路,能夠輸出 3A 的驅(qū)動電

15、流,同時具有很好的線性和負(fù)載調(diào)節(jié)特性。固定輸出版本有3.3V、5V、12V,可調(diào)版本可以輸出小于 37V 的各種電壓。圖 2.5-LM2596 轉(zhuǎn)電壓源+5VAT89C52 最小系統(tǒng)電路圖 2.6AT89C52 單片機(jī)最小系統(tǒng)電路由震蕩電路,復(fù)位電路和單片機(jī)構(gòu)成最小系統(tǒng) .震蕩電路為單片機(jī)提供工 作時鐘,由石英晶體和補(bǔ)償電容構(gòu)成.由于語音部分需要 1200bps 波特率,石英晶 體選取11.0592MHz 保證波特率零誤差,補(bǔ)償電容選取 30pF 瓷片電容.復(fù)位電路 在上電時為單片機(jī)提供復(fù)位信號,由 10uF 電容和 10K 電阻構(gòu)成的 RC 充電電路構(gòu) 成,當(dāng)系統(tǒng)復(fù)FeedEsek+VinL

16、iQmH1*C1PIP1 0go 20 0Pl 1iADiipnPI 2P1 3汕工GM*avnRIA-AAA/5VVCC13Itm4wc常熟理工電氣與自動化工程學(xué)院課程設(shè)計(jì)-10 -位上電瞬間,電源通過電阻R 為電容充電,在電阻上得到下降的指數(shù)充電電壓,由高電平經(jīng)過一段時間到達(dá)低電平,提供單片機(jī)需要的高脈沖復(fù)位常熟理工電氣與自動化工程學(xué)院課程設(shè)計(jì)-11 -信號電源部分電容為去耦電容.EA 拉高,MCU 上電后,從內(nèi)部程序存儲器開始執(zhí) 行.圖 2.7DS12CR887 與 AT89C52 接 口電路DS12C887 的 AD0-AD7 為地址 數(shù)據(jù)復(fù)用總線,與控制器地址 數(shù)據(jù)總線(P0 口)直

17、接連接,R2 為上拉電阻;MOT 為總線模式選擇引腳,接地選擇 INTEL 總線連接 方式;R/W 在 INTEL 總線模式下位寫使能,接控制器讀信號 WR(P3.6)端;DS 在 INTEL 總線模式下為讀使能信號,接控制器讀信號RD(P3.6)端;AS 為地址鎖存,接控制器地址鎖存信號 ALE(30 腳)端;RST 接電源拉高,片選 CS 直接接地使能。WT588D-20SS 與 AT89C52 接 口電路設(shè)計(jì)圖 2.8 WT588D-20SS 與 AT89C52 接 口電路軟件設(shè)置:三線串口控制模式57 M2Fli BJJH帀T1TOXIusTCDAlE/fPS EH1LDTi/GVC0

18、0/HOLD7WPCLKGN?D1SPEAKERP13NCP14VS-SPKP15FWM-P16VDD-SPKVDD-SiMPWAIWAtPOOvssP01RESETP02C90P03CDDVDDP17C3I104R3300KI -*DS12CR887 與 AT89C52 接口電路設(shè)計(jì).21I】蜩丄NHHJ ;PIWT*525PXX1TO?201.7址R2 1-r 常熟理工電氣與自動化工程學(xué)院課程設(shè)計(jì)-12 -控制端口定義:P01 為 DATA P02 為 CS P03 為 CLK 由 MCI 發(fā)送信息對 WT588D 進(jìn) 行控制。BUSY 俞出:P17 為 BUSY 亡信號輸出端,可從上位機(jī)

19、軟件端設(shè)置為播放狀態(tài)輸出為 高電平或低電平。高電平時電壓接近 VDD 供電電壓。用于接發(fā)光二極管做放音狀態(tài) 指示或忙信號判斷。_供電電壓:VDD=DC2.&5.5V, VCC=DC2.&3.6V。采用 DC3.3V 供電時,可以直接 短接VDD 跟 VCC 采用 DC5V 供電時,VDD 端接 5V, VCC 端需要從 VDD 端串接兩個 二極管以提供工作電壓。VDD1 為 MCI 工作電壓。如果 VDD1 跟 VDD 存在壓差,需要 在 MCU艮 WT588D-20SS 勺通信線 DATA CS CLK 上串接電阻。音頻輸出:PW 輸出方式,直接接揚(yáng)聲器。此種輸出方式下,PW

20、M+PWM 均不能短接到地或者接電阻電容到地。LCD12864 與 AT89C52 接 口電路設(shè)計(jì)LCDYXD12$4A圖 2.9 LCD12864 與 AT89C52 接 口電路帶中文字庫的 128X64 是一種具有 4 位/8 位并行、2 線或 3 線串行多種接口方 式,內(nèi)部含有國標(biāo)一級、二級簡體中文字庫的點(diǎn)陣圖形液晶顯示模塊;其顯示分 辨率為 128X64, 內(nèi)置 8192 個 16*16 點(diǎn)漢字,和 128 個 16*8 點(diǎn) ASCII 字符集. 利用該模塊靈活的接口方式和簡單、方便的操作指令,可構(gòu)成全中文人機(jī)交互圖 形界面??梢燥@示 8X4 行 16X16 點(diǎn)陣的漢字.也可完成圖形顯

21、示.低電壓低功 耗是其又一顯著特點(diǎn)。由該模塊構(gòu)成的液晶顯示方案與同類型的圖形點(diǎn)陣液晶顯 示模塊相比,不論硬件電路結(jié)構(gòu)或顯示程序都要簡潔得多,且該模塊的價(jià)格也略 低于相同點(diǎn)陣的圖形液晶模塊。3.3 軟件設(shè)計(jì)寸曠,二空52亠亠r f5常熟理工電氣與自動化工程學(xué)院課程設(shè)計(jì)-13 -(1)功能分析根據(jù)課題要求,軟件應(yīng)該能實(shí)現(xiàn)以下功能:1)驅(qū)動 LCD1602 顯示.常熟理工電氣與自動化工程學(xué)院課程設(shè)計(jì)-14 -2) 從 DS12C88 中讀取時間數(shù)據(jù),并寫入調(diào)時信息和鬧鐘信息3)掃描鍵盤, 實(shí)現(xiàn)人機(jī)交互,滿足用戶調(diào)時、定鬧的需求.4) 實(shí)現(xiàn)控制器與 DS18B2C 單總線接口,讀取溫度信息.(2)設(shè)計(jì)

22、流程本課題所有程序均由 C 語言編寫.開發(fā)環(huán)境為 keil uvision4.1)主程序設(shè)計(jì)主程序流程圖如圖所示常熟理工電氣與自動化工程學(xué)院課程設(shè)計(jì)-15 -主程序作用是當(dāng)系統(tǒng)上電后,首先對系統(tǒng)進(jìn)行初始化(包括MCU 的串行通信設(shè)置和 LCD 的初始化)然后讀取時間信息和溫度信息,檢查是否需要更新時間緩 沖存儲區(qū),如果系統(tǒng)處于正常顯示模式,則更新時間緩存區(qū),并同步顯示,若系統(tǒng) 處于調(diào)整時間模式下,則停止對時間緩沖區(qū)的更新,顯示時間與時間緩存區(qū)同步, 當(dāng)退出調(diào)時模式時,更新到 DS12C887 勺時標(biāo)寄存器中.主程序還負(fù)責(zé)檢測當(dāng)前時 間是否為整點(diǎn)或等于設(shè)定報(bào)時時間,在整點(diǎn)或定時時間調(diào)用報(bào)時函數(shù),

23、實(shí)現(xiàn)整點(diǎn) 報(bào)時和定時。2)DS12CR88 接口程序.DS12CR887 與控制器通過總線連接,主控器采取讀寫外部存儲器的方法讀取 時間信息和寫入調(diào)時和定時信息.DS12CR887 的時標(biāo)寄存器地址為 0-13 字節(jié),具 體分布如圖所示.常熟理工電氣與自動化工程學(xué)院課程設(shè)計(jì)-16 -圖 3.14 DS12CR887 存儲器結(jié)構(gòu)其中 10-13 字節(jié)分別為寄存器 A-D.其中寄存器 C D 為只讀. 寄存器 A 機(jī)構(gòu)如圖所示:REGISTER AMSBLSBBIT 7SITEBITSBIT 4BIT 3BIT 2B(T 1BITOUIPDV2DV1DVO0RS2RS1RSO表 3.5 DS12C

24、R887 寄存器 A 結(jié)構(gòu)UIP 為更新標(biāo)志位,標(biāo)志芯片是否即將進(jìn)行更新.當(dāng) UIP 為 1 時,表明更新即 將開始;為 0 時,表示在至少 244 卩 s 內(nèi)芯片不會進(jìn)行更新,此時可以通過讀寫相 應(yīng)字節(jié)獲取時間信息和設(shè)置信息.UIP 位為只讀位且不受復(fù)位信號影響,通過把 B 寄存器中的 SET 位置 1將 UIP 位清零并禁止時間更新.DV0-DV2 用來開關(guān)晶體振蕩 器和復(fù)位分頻器,本課題中不需設(shè)置.RS0-RS3 用于控制分頻器輸出, 設(shè)置成不同的 值可以在 SQV 引腳得到不同的分頻輸出或得到周期性的中斷(通過控制寄存器 B 實(shí)現(xiàn)).由于本設(shè)計(jì)不涉及,具體設(shè)置值與對應(yīng)頻率請參考DS12

25、C887 技術(shù)文檔,不在列舉.寄存器 B 結(jié)構(gòu)如圖所示.REGISTER BMSBLSBBIT 7BITSSITSBIT 4BITSBIT 2arr iBITOSETPIEAJEUIESQWEDM24J12DSE表 3.6 DS12CR887 寄存器 B 結(jié)構(gòu)當(dāng) SET 位為 0 時,時間正常更新;當(dāng) SET 位置 1 時,停止更新,此時,MU(可 以對 DS12C887 進(jìn)行初始化,該位不受復(fù)位信號影響.PIE 位為周期性中斷使能位,該位為常熟理工電氣與自動化工程學(xué)院課程設(shè)計(jì)-17 -1 時,周期性中斷使能;為 0 時禁止中斷.本課題中此位置 0.AIE 位為鬧鐘 中斷使能位本課題中由于沒有

26、使用中斷,該位置0.UIE 為更新完成中斷使能位,本設(shè)計(jì)中不考慮.SQW 為方波使能信號,本設(shè)計(jì)不予處理.DM 位為數(shù)據(jù)格式選擇位, 置1 時時間數(shù)據(jù)以二進(jìn)制格式存放,清 0 后,數(shù)據(jù)以 BCD 碼格式存放.24/12 位為 時間格式設(shè)置位,該位為 1 時,時間為 24 小時格式,為 0 時,時間為 12 小時格 式,該位不受復(fù)位信號影響.DSE 為夏令時使能位,本設(shè)計(jì)不予考慮 寄存器 C 結(jié)構(gòu)如圖所示.REGISTER CMSBLSfiBITTBIT 6BrrsSIT 4BITSBIT 2er 1BfTOIRQFPFAFUF0D00表 3.7 DS12CR887 寄存器 C 結(jié)構(gòu)其中 4 個

27、有效位均為中斷標(biāo)志,本設(shè)計(jì)不予考慮,但當(dāng)初始化完成并禁止中斷時, 應(yīng)將該寄存器讀取清 0.寄存器 D 結(jié)構(gòu)如圖所示REGISTER DMSBLS8SIT 7BITSBIT 4BIT 3BIT 2BIT1BrTOVRT00Q000a表 3.8 DS12CR887 寄存器 D 結(jié)構(gòu)VRT 位指示片內(nèi)鋰電池狀態(tài),當(dāng)為 0 時,說明內(nèi)部鋰電池耗盡,不能保證內(nèi)部 RAM 中數(shù)據(jù)和時間數(shù)據(jù)的正確性.該位只讀.3)DS18B20 接口程序設(shè)計(jì).DS18B2C 設(shè)置寄存器結(jié)構(gòu)如圖 3.9 所示常熟理工電氣與自動化工程學(xué)院課程設(shè)計(jì)-18 -FigureConfiguration Register6IT7 BIT

28、 6 BITS BrT4BIT 3BIT 2 BIT1 BITQ0R1RO11111表 3.9 DS18B20 設(shè)置寄存器結(jié)構(gòu)通過設(shè)置該寄存器中 R1、R0 的不同狀態(tài),可以得到不同的溫度分辨率,分辨 率越高,轉(zhuǎn)換所需時間也越長(見圖) .為簡便起見, 本課題中采用系統(tǒng)復(fù)位后的默 認(rèn)值, 即 R1R0=11分辨率為 12 位數(shù)據(jù).其余位為傳感器內(nèi)部使用,不能進(jìn)行操作.R1R0RESOLITTION(BITS)MAX CONVERSION TIME00993.75ms(tcowS)0110187,5ms(WONV書1011375ms(SONV,2)1112750ms(TCONV)表 3.9 DS

29、18B20 控制寄存器 R0 R1 設(shè)置與分辨率對應(yīng)關(guān)系 由于DS18B2C 數(shù)據(jù)傳送采取單總線方式,所以對操作時序和操作步驟有著嚴(yán)格 的要求,任何不符合步驟的操作,都可能造成DS18B20 不響應(yīng).每次在對 DS18B20進(jìn)行操作時,都要進(jìn)行初始化.初始化時序如圖所示:圖 3.15 DS18B20 初始化時序圖首先,控制器將總線拉低并保持 480 卩 s,釋放總線,等待 15-60 卩 s 后,如果 復(fù)位成功,DS18B2C 會將總線拉低,產(chǎn)生一個 60-240 卩 s 的低脈沖,控制器通過檢 測低脈沖信號確定復(fù)位是否成功.復(fù)位成功后,在上拉電阻的作用下,DS18B20 會 恢復(fù)到高電平靜止

30、狀態(tài).在靜止?fàn)顟B(tài),總線在內(nèi)部上拉電阻作用下,保持高電平. 當(dāng)控制器進(jìn)行讀寫操作時,先將總線拉低 1 卩 s 以上,DS18B2C 回應(yīng)一個高電平應(yīng) 答信號,控制器檢測到應(yīng)答信號后,即可對總線進(jìn)行操作 .向 DS18B20 賣寫一位數(shù)據(jù)時序如圖所示:1-WIRE BUSGNDMASTER T* RESET PULSE# minimum -DS1BB20waits 15-60.LINE TYPELEGtNDBUYmas lor pullinglowDS1AB20puling khv- Restsnw pulkip常熟理工電氣與自動化工程學(xué)院課程設(shè)計(jì)-19 -MASTER READ常常SLOTAUS

31、TEfi:READ 1 SLOTLIMETYPE LEGENDBm m*惱 puing towDStBB2O pulng taw Resrstor pullup圖 3.16 DS18B20 讀寫數(shù)據(jù)時序圖寫” 0”時,控制器將總線拉低 30 卩 s 以上即可,寫” 1”時,控制器將總線拉低 15卩 s,然后釋放總線.讀數(shù)據(jù)時,控制器將總線拉低 15 卩 s,然后釋放總線并讀取 總線上的數(shù)據(jù).4) LCD 顯示驅(qū)動程序a.基本操作時序:讀狀態(tài):輸入:RS=L,RW=H,E=H輸出:D0-D8=狀態(tài)字寫指令:輸入:RS=L,RW=L,D0-D7 指令碼,E=高脈沖輸出:無讀數(shù)據(jù):輸入:RS=H,RW=H,E=H輸出:D0-D7 數(shù)據(jù)寫 數(shù) 據(jù) : 輸 入 : R S = H , R W

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論