找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 3379|回復(fù): 7
打印 上一主題 下一主題
收起左側(cè)

單片機(jī)LED數(shù)字日歷鬧鐘設(shè)計(jì)的一系列問(wèn)題求解

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:275735 發(fā)表于 2018-1-14 01:45 來(lái)自觸屏版 | 只看該作者 |只看大圖 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
用C52單片機(jī)+DS1302+74HC595+4個(gè)四位共陽(yáng)數(shù)碼管實(shí)現(xiàn) 年月日時(shí)分秒顯示 并用四位獨(dú)立按鍵控制 以及設(shè)置兩路鬧鐘  如何用DS1302讀取年月日時(shí)分秒?
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:164602 發(fā)表于 2018-1-14 08:48 | 只看該作者
DS1302時(shí)鐘芯片
一、硬件簡(jiǎn)介:
    1、DS1302是一種高性能、低功耗的實(shí)時(shí)時(shí)鐘芯片,附加31字節(jié)靜態(tài)RAM,采用SPI三線接口與CPU進(jìn)行通信,并可采用突發(fā)方式一次傳送多個(gè)字節(jié)的時(shí)鐘信號(hào)和RAM數(shù)據(jù)。實(shí)時(shí)時(shí)鐘可提供秒、分、時(shí)、日、月、星期和年,一個(gè)月小與31天時(shí)可以自動(dòng)調(diào)整,且具有閏年補(bǔ)償功能。工作電壓寬達(dá)2.55.5V。采用雙電源供電(主電源和備用電源),可設(shè)置備用電源充電方式,提供了對(duì)后備電源進(jìn)行涓細(xì)電流充電的能力。
    2、HC6800ESV2.0電路圖

    3、芯片管腳說(shuō)明:
1腳:芯片備用電源,可以用電池或大容量電容供電,在主電源掉電時(shí),仍可以工作計(jì)時(shí)。
23腳:外部晶振接口。芯片就是根據(jù)這個(gè)晶振的頻率進(jìn)行計(jì)時(shí)的。
4腳:接地。
5腳:芯片使能信號(hào),由主機(jī)控制,高電平有效。
6腳:與主機(jī)的數(shù)據(jù)交流口。
7腳:數(shù)據(jù)傳輸時(shí)鐘,由主機(jī)控制。
8腳:芯片主電源。
二、與控制芯片的相關(guān)的知識(shí):
    1、SPI總線通訊協(xié)議:
    SPI接口的全稱是“Serial Peripheral Interface”,意為串行外圍接口。SPI接口是在CPU和外圍低速器件之間進(jìn)行同步串行數(shù)據(jù)傳輸,在主器件的移位脈沖下,數(shù)據(jù)按位傳輸,低位在前,高位在后;時(shí)鐘上升沿主機(jī)發(fā)送數(shù)據(jù),下降沿從機(jī)接收數(shù)據(jù)(595類似)
    DS1302時(shí)鐘芯片,有1個(gè)控制寄存器,12個(gè)日歷、時(shí)鐘寄存器,31個(gè)RAM可以進(jìn)行讀寫操作,只要能操作上述寄存器,就可以控制這塊芯片了。
    2、控制寄存器:
    控制寄存器用于存放DS1302的控制命令字節(jié),DS1302CE引腳回到高電平后寫入的第一個(gè)字就為控制命令。它用于對(duì)DS1302讀寫過(guò)程進(jìn)行控制,它的格式如下:
  
  
D7
D6
D5
D4
D3
D2
D1
D0
功能
1
RAM/CK
A4
A3
A2
A1
A0
R/W
RAM/CK1——對(duì)RAM操作,0——對(duì)時(shí)鐘寄存器進(jìn)行操作。
R/W1——讀操作,0——寫操作。
A4~A0:地址,如下表:
  
寄存器名稱
  
D7
D6
D5
D4
D3
D2
D1
D0
1
RAM/CK
A4
A3
A2
A1
A0
R/W
1
0
0
0
0
0
0
1/0
1
0
0
0
0
0
1
1/0
小時(shí)
1
0
0
0
0
1
0
1/0
1
0
0
0
0
1
1
1/0
1
0
0
0
1
0
0
1/0
星期
1
0
0
0
1
0
1
1/0
1
0
0
0
1
1
0
1/0
寫保護(hù)
1
0
0
0
1
1
1
1/0
慢充電
1
0
0
1
0
0
0
1/0
時(shí)鐘突發(fā)模式
1
0
1
1
1
1
1
1/0
RAM0
1
1
0
0
0
0
0
1/0
1
1
1/0
RAM30
1
1
1
1
1
1
0
1/0
RAM突發(fā)模式
1
1
1
1
1
1
1
1/0
    3、時(shí)鐘寄存器:
  
寄存器
  
名稱
  
取值范圍
D7
D6
D5
D4
D3
D2
D1
D0
0~59
CH
秒的十位
秒的個(gè)位
0~59
0
分的十位
分的個(gè)位
小時(shí)
0~12
  
0~23
12/24
0
P/A
小時(shí)高位
小時(shí)的個(gè)位
0~31
0
0
日的十位
日的個(gè)位
0~12
0
0
0
0/1
月的個(gè)位
星期
0~7
0
0
0
0
星期幾
0~99
年的十位
年的個(gè)位
寫保護(hù)
WP
0
0
0
0
0
0
0
慢充電
TCS
TCS
TCS
TCS
DS
DS
RS
RS
突發(fā)
說(shuō)明:
(1)時(shí)鐘數(shù)據(jù),都是以BCD碼形式保存。
    BCD碼是通過(guò)4位二進(jìn)制碼來(lái)表示1位十進(jìn)制中的0~910個(gè)數(shù)碼。二進(jìn)制碼轉(zhuǎn)換為BCD碼的方式為:4位二進(jìn)制碼大于1001時(shí),加6(110)
(2)小時(shí)寄存器的D7位為12小時(shí)制/24小時(shí)制的選擇位,當(dāng)為1時(shí)選12小時(shí)制,當(dāng)為0時(shí)選24小時(shí)制。當(dāng)12小時(shí)制時(shí),D5位為0是上午,D5位為1是下午,D4為小時(shí)的十位。當(dāng)24小時(shí)制時(shí),D5、D4位為小時(shí)的十位。
(3)秒寄存器中的CH位為時(shí)鐘暫停位,當(dāng)為1時(shí)鐘暫停,為0時(shí)鐘開始啟動(dòng)。
(4)寫保護(hù)寄存器中的WP為寫保護(hù)位,當(dāng)WP=1,寫保護(hù),當(dāng)WP=0未寫保護(hù),當(dāng)對(duì)日歷、時(shí)鐘寄存器或片內(nèi)RAM進(jìn)行寫時(shí)WP應(yīng)清零,當(dāng)對(duì)日歷、時(shí)鐘寄存器或片內(nèi)RAM進(jìn)行讀時(shí)WP一般置1。
(5)慢充電寄存器的TCS位為控制慢充電的選擇,當(dāng)它為1010才能使慢充電工作。DS為二極管選擇位。DS01選擇一個(gè)二極管,DS10選擇二個(gè)二極管,DS1100充電器被禁止,與TCS無(wú)關(guān)。RS用于選擇連接在VCC2VCC1之間的電阻,RS00,充電器被禁止,與TCS無(wú)關(guān),電阻選擇情況見(jiàn)表。
三、讀寫數(shù)據(jù)編程:
    DS1302是通過(guò)SPI串行總線跟單片機(jī)通信的,當(dāng)進(jìn)行一次讀寫操作時(shí)最少得讀寫兩個(gè)字節(jié),第一個(gè)字節(jié)是控制字節(jié),就是一個(gè)命令(單字節(jié)讀寫時(shí)),告訴DS1302是讀還是寫操作,是對(duì)RAM還是對(duì)CLOK寄存器操作。第二個(gè)字節(jié)就是要讀或?qū)懙臄?shù)據(jù)了。
    1、單字節(jié)讀:
    單字節(jié)讀:只有在SCLK為低電平時(shí),才能將CE置為高電平。所以在進(jìn)行操作之前先將SCLK置低電平,然后將CE置為高電平,接著開始在IO上面放入要傳送的電平信號(hào),然后跳變SCLK。數(shù)據(jù)在SCLK上升沿時(shí),DS1302讀取數(shù)據(jù),在SCLK下降沿時(shí),DS1302放置數(shù)據(jù)到IO
    詳見(jiàn)例子程序。
    2、單字節(jié)寫:
    單字節(jié)寫:只有在SCLK為低電平時(shí),才能將RST置為高電平。說(shuō)以在進(jìn)行操作之前先將SCLK置低電平,然后將RST置為高電平,開始在IO上面放入要傳送的電平信號(hào),然后跳變SCLK。數(shù)據(jù)在SCLK上升沿時(shí),DS1302讀取數(shù)據(jù),在SCLK下降沿時(shí),DS1302放置數(shù)據(jù)到IO
    詳見(jiàn)例子程序。
    3、常見(jiàn)命令、地址集合:


評(píng)分

參與人數(shù) 1黑幣 +90 收起 理由
admin + 90 回帖助人的獎(jiǎng)勵(lì)!

查看全部評(píng)分

回復(fù)

使用道具 舉報(bào)

板凳
ID:23606 發(fā)表于 2018-1-14 08:52 | 只看該作者
先把你的圖畫出來(lái),論壇1302的程序很多,多參考
回復(fù)

使用道具 舉報(bào)

地板
ID:275076 發(fā)表于 2018-1-14 10:22 | 只看該作者
很詳細(xì),謝謝了
回復(fù)

使用道具 舉報(bào)

5#
ID:275735 發(fā)表于 2018-1-14 10:34 來(lái)自觸屏版 | 只看該作者
YJGG 發(fā)表于 2018-1-14 08:52
先把你的圖畫出來(lái),論壇1302的程序很多,多參考

這種數(shù)碼管顯示模塊 用DS1302讀取年月日時(shí)分秒 并用按鍵控制

4f82ebbeb7f07367.png (84.54 KB, 下載次數(shù): 38)

4f82ebbeb7f07367.png
回復(fù)

使用道具 舉報(bào)

6#
ID:111634 發(fā)表于 2018-1-14 13:21 | 只看該作者
實(shí)例94  模擬電子鐘(由80C51定時(shí)器產(chǎn)生秒時(shí)基)
Proteus仿真一下,確認(rèn)有效。
實(shí)例94 模擬電子鐘(由80C51定時(shí)器產(chǎn)生秒時(shí)基).rar (43.05 KB, 下載次數(shù): 5)

以上摘自張志良編著《80C51單片機(jī)仿真設(shè)計(jì)實(shí)例教程——基于Keil CProteus》清華大學(xué)出版社ISBN 978-7-302-41682-1,內(nèi)有常用的單片機(jī)應(yīng)用100案例,用于仿真實(shí)驗(yàn)操作,電路與程序真實(shí)可靠可信可行。書中電路和程序設(shè)計(jì)有詳細(xì)說(shuō)明,程序語(yǔ)句條條有注解。仿真電路和Hex文件能在清華出版社網(wǎng)站免費(fèi)下載,程序源代碼只能到書上看了。到圖書館借,或到新華書店翻閱,或到網(wǎng)上書店打折購(gòu)買。
回復(fù)

使用道具 舉報(bào)

7#
ID:275850 發(fā)表于 2018-1-14 15:19 | 只看該作者
HC6800-ES-V2.0 發(fā)表于 2018-1-14 08:48
DS1302時(shí)鐘芯片一、硬件簡(jiǎn)介:    1、DS1302是一種高性能、低功耗的實(shí)時(shí)時(shí)鐘芯片,附加31字節(jié)靜態(tài)RAM,采用 ...

很詳細(xì),謝謝了
回復(fù)

使用道具 舉報(bào)

8#
ID:111634 發(fā)表于 2018-1-21 19:23 | 只看該作者
本帖最后由 zl2168 于 2018-1-21 19:25 編輯

實(shí)例93  具有校正功能的時(shí)鐘1302(LED數(shù)碼管顯示)
Proteus仿真一下,確認(rèn)有效。
實(shí)例93 帶校正時(shí)分秒的時(shí)鐘1302(6位LED數(shù)碼管顯示).rar (732.75 KB, 下載次數(shù): 6)

以上摘自張志良編著《80C51單片機(jī)仿真設(shè)計(jì)實(shí)例教程——基于Keil CProteus》清華大學(xué)出版社ISBN 978-7-302-41682-1內(nèi)有常用的單片機(jī)應(yīng)用100案例,用于仿真實(shí)驗(yàn)操作,電路與程序真實(shí)可靠可信可行。仿真電路和Hex文件能在清華出版社網(wǎng)站免費(fèi)下載,程序源代碼只能到書上看了。到圖書館借,或到新華書店翻閱,或到網(wǎng)上書店打折購(gòu)買。
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表