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

QQ登錄

只需一步,快速開始

搜索
查看: 3859|回復(fù): 12
收起左側(cè)

DS1302一段時(shí)間內(nèi)停止工作

[復(fù)制鏈接]
ID:686782 發(fā)表于 2020-5-24 13:54 | 顯示全部樓層 |閱讀模式
前幾天學(xué)習(xí)了DS1302做了個(gè)簡(jiǎn)易時(shí)鐘,采用向RAM0寫入標(biāo)志的方法檢測(cè)是否初次初始化。單片機(jī)上電斷電大概測(cè)試了兩三天覺得差不多了,就一直放著沒管。單片機(jī)的供電我是直接接在筆電上的。今天開電腦寫文件時(shí)瞥了一眼,發(fā)現(xiàn)時(shí)間居然偏差了39分鐘,這么大的偏差肯定不可能是晶振誤差之類的,于是又用邏輯分析儀測(cè)試數(shù)據(jù)讀取無(wú)誤,說(shuō)明這其中一段時(shí)間DS1302應(yīng)該是停止了工作導(dǎo)致寄存器內(nèi)的數(shù)值一直落后。我猜測(cè)是單片機(jī)斷電的某一段時(shí)間出現(xiàn)了問(wèn)題,可是實(shí)際上時(shí)間雖然有偏差,但是時(shí)鐘仍然能運(yùn)行(除了時(shí)間不對(duì)斷電以后也是繼續(xù)運(yùn)行),說(shuō)明CR2032應(yīng)該還是有電的。想請(qǐng)教一下各位大佬,出現(xiàn)這種現(xiàn)象大概是什么原因呢。大佬們提供一些思路就行,有點(diǎn)找不到分析方向,感覺如果想不明白以后做帶DS1302的項(xiàng)目還是會(huì)出問(wèn)題。
回復(fù)

使用道具 舉報(bào)

ID:420836 發(fā)表于 2020-5-24 23:16 | 顯示全部樓層
備用電池CR2031在電源中斷期間是否有問(wèn)題?
回復(fù)

使用道具 舉報(bào)

ID:686782 發(fā)表于 2020-5-25 14:33 | 顯示全部樓層
TTQ001 發(fā)表于 2020-5-24 23:16
備用電池CR2031在電源中斷期間是否有問(wèn)題?

謝謝,這方面應(yīng)該是有點(diǎn)問(wèn)題
順便我測(cè)了一下這回直接掉電以后居然復(fù)位了...我程序估計(jì)還得改改
回復(fù)

使用道具 舉報(bào)

ID:686782 發(fā)表于 2020-5-25 14:40 | 顯示全部樓層
復(fù)位是DS1302寄存器全清空了 變成2000 1月1日,我寫入初始化標(biāo)志那里應(yīng)該沒問(wèn)題,不然掉電應(yīng)該回復(fù)位到設(shè)定時(shí)間
回復(fù)

使用道具 舉報(bào)

ID:686782 發(fā)表于 2020-5-25 14:47 | 顯示全部樓層
還有一個(gè)現(xiàn)象就是我的51是接在最小系統(tǒng)板上,通過(guò)USB接口接筆電來(lái)為單片機(jī)系統(tǒng)供電
之前測(cè)試時(shí)多使用自鎖開關(guān)來(lái)進(jìn)行測(cè)試,DS1302運(yùn)行正常,可是拔掉USB接口,無(wú)論是短時(shí)間還是等候長(zhǎng)時(shí)間重新連接時(shí)DS1302都已經(jīng)丟失數(shù)據(jù),這又是什么原因呢,自鎖開關(guān)不是理想的切斷電源的方式嗎?
回復(fù)

使用道具 舉報(bào)

ID:686782 發(fā)表于 2020-5-25 15:01 | 顯示全部樓層
我又將備用電源CR2032拆除,上電測(cè)試,此時(shí)又讀出原本設(shè)定好的時(shí)間,而在之前帶CR2032時(shí)斷電,讀出的值永遠(yuǎn)是從寄存器全清零的情況下開始計(jì)算的。
這么看來(lái)帶備用電池掉電實(shí)際上寄存器的值并沒有清零?而是讀取出現(xiàn)了問(wèn)題?可是我使用分析儀查看,除了傳遞的值不對(duì),時(shí)序也沒問(wèn)題。
再研究研究是什么情況。
回復(fù)

使用道具 舉報(bào)

ID:686782 發(fā)表于 2020-5-25 15:11 | 顯示全部樓層
多次測(cè)試,發(fā)現(xiàn)出現(xiàn)隨機(jī)結(jié)果,與電源貌似無(wú)關(guān)。一定概率下讀出正確數(shù)據(jù),一定概率下就是清零的2000.1.1 00:00:00 這其中我并未重新進(jìn)行編程操作
在這里順便先上傳一下源碼,MCU采用STC89C51RC(容量問(wèn)題注釋掉了部分函數(shù)),OLED使用SPI協(xié)議,將DS1302的數(shù)據(jù)取出來(lái)顯示。各管腳等定義已在代碼注釋中顯示。大部分是對(duì)網(wǎng)上各種代碼的修改與整合,感覺還是硬件有問(wèn)題....

OLED SPI.rar

56.09 KB, 下載次數(shù): 6

回復(fù)

使用道具 舉報(bào)

ID:686782 發(fā)表于 2020-5-28 21:17 | 顯示全部樓層
結(jié)貼了。
多次測(cè)試發(fā)現(xiàn)純粹是晶振電路有問(wèn)題,上電走都不穩(wěn)定的。準(zhǔn)時(shí)定時(shí),有時(shí)候能正常工作很久,有時(shí)候馬上走偏2-5分鐘。
CR2032測(cè)試供電正常,推測(cè)晶振起振不穩(wěn)定,斷電停振。我看模塊原理圖貌似沒有匹配電容,不過(guò)一說(shuō)法說(shuō)DS1302內(nèi)部集成了匹配電容。
總之考慮換個(gè)硬件試試。
回復(fù)

使用道具 舉報(bào)

ID:401564 發(fā)表于 2020-5-29 08:37 | 顯示全部樓層
OHHO 發(fā)表于 2020-5-28 21:17
結(jié)貼了。
多次測(cè)試發(fā)現(xiàn)純粹是晶振電路有問(wèn)題,上電走都不穩(wěn)定的。準(zhǔn)時(shí)定時(shí),有時(shí)候能正常工作很久,有時(shí)候 ...

你文字說(shuō)明一堆,卻不把電路圖上傳一下,誰(shuí)能知道怎么回事呢
DS1302是一定匹配電容的
回復(fù)

使用道具 舉報(bào)

ID:686782 發(fā)表于 2020-5-29 17:15 | 顯示全部樓層
Y_G_G 發(fā)表于 2020-5-29 08:37
你文字說(shuō)明一堆,卻不把電路圖上傳一下,誰(shuí)能知道怎么回事呢
DS1302是一定匹配電容的

是的,是沒講清楚。
因?yàn)槌鯇W(xué)這個(gè)不清楚這一點(diǎn),信了那個(gè)商家的電路圖,還以為不用匹配電容。
現(xiàn)在知道是有問(wèn)題的,謝謝指教
回復(fù)

使用道具 舉報(bào)

ID:451718 發(fā)表于 2020-5-30 11:21 | 顯示全部樓層
OHHO 發(fā)表于 2020-5-29 17:15
是的,是沒講清楚。
因?yàn)槌鯇W(xué)這個(gè)不清楚這一點(diǎn),信了那個(gè)商家的電路圖,還以為不用匹配電容。
現(xiàn)在知道 ...

商家的電路圖沒有錯(cuò),實(shí)際電路板上走線,和你用面包板做出來(lái)的效果是有區(qū)別的。 匹配電容很小,布線工程師會(huì)利用一段蛇形線就搞定了。 多看看實(shí)際的電路板布線,你就明白了。
回復(fù)

使用道具 舉報(bào)

ID:686782 發(fā)表于 2020-5-30 16:12 | 顯示全部樓層
robinsonlin 發(fā)表于 2020-5-30 11:21
商家的電路圖沒有錯(cuò),實(shí)際電路板上走線,和你用面包板做出來(lái)的效果是有區(qū)別的。 匹配電容很小,布線工程 ...

謝謝,受教了
回復(fù)

使用道具 舉報(bào)

ID:401564 發(fā)表于 2020-5-30 17:12 | 顯示全部樓層
robinsonlin 發(fā)表于 2020-5-30 11:21
商家的電路圖沒有錯(cuò),實(shí)際電路板上走線,和你用面包板做出來(lái)的效果是有區(qū)別的。 匹配電容很小,布線工程 ...

不行,不要誤導(dǎo)別人
石英的PCB蛇形走線不能代替匹配電容,什么蛇都不行
晶振的走線向來(lái)都是越短越好,從來(lái)沒有聽說(shuō)過(guò)晶振搞什么蛇形走線的
晶振走線:盡量不要用過(guò)孔,走線不要過(guò)長(zhǎng),不要太靠近PCB邊沿,用以減少分布電容,分布電感和MEI
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

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