時鐘芯片DS1302實驗指導(dǎo)書_第1頁
時鐘芯片DS1302實驗指導(dǎo)書_第2頁
時鐘芯片DS1302實驗指導(dǎo)書_第3頁
時鐘芯片DS1302實驗指導(dǎo)書_第4頁
時鐘芯片DS1302實驗指導(dǎo)書_第5頁
已閱讀5頁,還剩6頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

SKIPIF1<0《單片機原理技術(shù)》實驗十一《單片機原理技術(shù)》實驗十一SKIPIF1<0頁實驗十一時鐘芯片DS1302實驗一、知識準備DS1302

是美國DALLAS公司推出的一種高性能、低功耗、帶RAM的實時時鐘電路芯片,通過DS1302時鐘芯片獲取準確詳細的時間(年、月、日、周、日、時、分、秒準確時間)。1.DS1302的寄存器這張表呢是DS1302內(nèi)部的7個與時間、日期有關(guān)的寄存器圖和一個寫保護。寄存器,我們要做的就是將初始設(shè)置的時間、日期數(shù)據(jù)寫入這幾個寄存器,然后再不斷地讀取這幾個寄存器來獲取實時時間和日期。這幾個寄存器的說明如下:(1)秒寄存器(81h、80h)的位7定義為時鐘暫停標志(CH)。當(dāng)初始上電時該位置為1,時鐘振蕩器停止,DS1302處于低功耗狀態(tài);只有將秒寄存器的該位置改寫為0時,時鐘才能開始運行。(2)小時寄存器(85h、84h)的位7用于定義DS1302是運行于12小時模式還是24小時模式。當(dāng)為高時,選擇12小時模式。在12小時模式時,位5是,當(dāng)為1時,表示PM。在24小時模式時,位5是第二個10小時位(3)控制寄存器(8Fh、8Eh)的位7是寫保護位(WP),其它7位均置為0。在任何的對時鐘和RAM的寫操作之前,WP位必須為0。當(dāng)WP位為1時,寫保護位防止對任一寄存器的寫操作。也就是說在電路上電的初始態(tài)WP是1,這時是不能改寫上面任何一個時間寄存器的,只有首先將WP改寫為0,才能進行其它寄存器的寫操作。1.1DS1302的讀寫DS1302的數(shù)據(jù)讀寫是通過I/O串行進行的。當(dāng)進行一次讀寫操作時最少得讀寫兩個字節(jié),第一個字節(jié)是控制字節(jié),就是一個命令,告訴DS1302是讀還是寫操作,是對RAM還是對CLOK寄存器操作,以及操作的地址。第二個字節(jié)就是要讀或?qū)懙臄?shù)據(jù)了。我們先看單字節(jié)寫:在進行操作之前先得將CE(也可說是RST)置高電平,然后單片機將控制字的位0放到I/O上,當(dāng)I/O的數(shù)據(jù)穩(wěn)定后,將SCLK置高電平,DS1302檢測到SCLK的上升沿后就將I/O上的數(shù)據(jù)讀取,然后單片機將SCLK置為低電平,再將控制字的位1放到I/O上,如此反復(fù),將一個字節(jié)控制字的8個位傳給DS1302。接下來就是傳一個字節(jié)的數(shù)據(jù)給DS1302,當(dāng)傳完數(shù)據(jù)后,單片機將CE置為低電平,操作結(jié)束。單字節(jié)讀操作的一開始寫控制字的過程和上面的單字節(jié)寫操作是一樣,但是單字節(jié)讀操作在寫控制字的最后一個位,SCLK還在高電平時,DS1302就將數(shù)據(jù)放到I/O上,單片機將SCLK置為低電平后數(shù)據(jù)鎖存,單機機就可以讀取I/O上的數(shù)據(jù)。如此反復(fù),將一個字節(jié)的數(shù)據(jù)讀入單片機。讀與寫操作的不同就在于,寫操作是在SCLK低電平時單片機將數(shù)據(jù)放到IO上,當(dāng)SCLK上升沿時,DS1302讀取。而讀操作是在SCLK高電平時DS1302放數(shù)據(jù)到IO上,將SCLK置為低電平后,單片機就可從IO上讀取數(shù)據(jù)??刂谱謨?nèi)容如下表:位0就是讀寫位,當(dāng)位0為1時,就是告訴DS1302,下面是進行讀出操作,而當(dāng)位0為0時就是寫入操作。位0-位5是要進行操作的DS1302寄存器地址。位6就是告訴DS1302,是要對RAM進行操作還是對CLK寄存器進行操作,0就是對時間寄存器操作,一般我們都是對時間寄存器進行操作。位7就是固定的1。為什么是1呢。還記得上面說的單字節(jié)讀操作嗎?在寫控制字的最后一個位也就是位7時,DS1302已將它的寄存器數(shù)據(jù)位0放到IO上了,要是控制字的位7是0的話,DS1302就無法將它的隨后的數(shù)據(jù)放到IO上了。這樣你現(xiàn)在就知道為什么控制字80H是寫秒寄存器,而80H是讀秒寄存器了吧!80H換成二進制就是10000000。而81H的二進制就是10000001,一個是寫操作,另一個是讀操作嘛!2.接口芯片DS1302是美國DALLAS公司推出的一種高性能、低功耗的實時時鐘芯片,附加31字節(jié)靜態(tài)RAM,采用SPI三線接口與CPU進行同步通信,并可采用突發(fā)方式一次傳送多個字節(jié)的時鐘信號和RAM數(shù)據(jù)。實時時鐘可提供秒、分、時、日、星期、月和年,一個月小與31天時可以自動調(diào)整,且具有閏年補償功能。工作電壓寬達2.5~5.5V。采用雙電源供電(主電源和備用電源),可設(shè)置備用電源充電方式,提供了對后背電源進行涓細電流充電的能力。下表說明了DS1302芯片的引腳功能。Vcc主電源X1,X2接32768Hz晶振GND地線CE復(fù)位I/0數(shù)據(jù)輸入輸出SCLK串行時鐘Vccl后備電源圖1-1接口電路圖如下,可以看到DS1302的數(shù)據(jù)引腳接在P1.1上,串行時鐘接在P1.2上,CE接在P3.4上圖1-2二、實驗?zāi)康恼莆誅S1302時鐘芯片的運用。三、實驗內(nèi)容編寫程序把時鐘芯片DS1302的時間顯示在LCD上。四、實驗設(shè)備硬件設(shè)備:51單片機開發(fā)版、USB線一根,12v電源適配器一個。圖1-3軟件工具:STC-ISP-15XX-V6.82,keil。五、核心代碼分析voidRun_DS1302(void){ ucharsec,min,hour,day,month,year; v_W1302(0x8f,0); sec=bcdtodec(uc_R1302(0x81)); /*讀出DS1302中的秒,BCD碼轉(zhuǎn)成十進制*/ v_W1302(0x8f,0); min=bcdtodec(uc_R1302(0x83)); /*讀出DS1302中的分,BCD碼轉(zhuǎn)成十進制*/ v_W1302(0x8f,0); hour=bcdtodec(uc_R1302(0x85));/*讀出DS1302中的小時,BCD碼轉(zhuǎn)成十進制*/ /**/ v_W1302(0x8f,0); day=bcdtodec(uc_R1302(0x87)); /*讀出DS1302中的日,BCD碼轉(zhuǎn)成十進制*/ v_W1302(0x8f,0); month=bcdtodec(uc_R1302(0x89));/*讀出DS1302中的月,BCD碼轉(zhuǎn)成十進制*/ v_W1302(0x8f,0); year=bcdtodec(uc_R1302(0x8d));/*讀出DS1302中的年,BCD碼轉(zhuǎn)成十進制*/ L1602_char(2,8,hour/10%10+48);//小時的十位顯示 L1602_char(2,9,hour%10+48);//小時的個位顯示 L1602_char(2,10,'-'); L1602_char(2,11,min/10%10+48);//分鐘的十位顯示 L1602_char(2,12,min%10+48);//分鐘的個位顯示 L1602_char(2,13,'-'); L1602_char(2,14,sec/10%10+48);//秒鐘的十位顯示 L1602_char(2,15,sec%10+48);//秒鐘的個位顯示 L1602_char(1,9,year/10%10+48);//年的十位顯示 L1602_char(1,10,year%10+48);//年的個位顯示 L1602_char(1,11,'-'); L1602_char(1,12,month/10%10+48);//月份的十位顯示 L1602_char(1,13,month%10+48);//月份的個位顯示 L1602_char(1,14,'-'); L1602_char(1,15,day/10%10+48);//日的十位顯示 L1602_char(1,16,day%10+48); //日的個位顯示}六、實驗步驟連接設(shè)備,將USB線一端接PC,一端接單片機開發(fā)板,開發(fā)板接12V電源,打開電源開關(guān)圖1-4打開STC-ISP下載工具圖1-5選擇好單片機型號STC89C52RC,掃描串口號,其他設(shè)置為默認;然后點擊打開程序文件,出現(xiàn)下圖圖1-6進入

溫馨提示

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

評論

0/150

提交評論