標(biāo)題: DS1302一段時(shí)間內(nèi)停止工作 [打印本頁(yè)]

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

謝謝,這方面應(yīng)該是有點(diǎn)問題
順便我測(cè)了一下這回直接掉電以后居然復(fù)位了...我程序估計(jì)還得改改
作者: OHHO    時(shí)間: 2020-5-25 14:40
復(fù)位是DS1302寄存器全清空了 變成2000 1月1日,我寫入初始化標(biāo)志那里應(yīng)該沒問題,不然掉電應(yīng)該回復(fù)位到設(shè)定時(shí)間
作者: OHHO    時(shí)間: 2020-5-25 14:47
還有一個(gè)現(xiàn)象就是我的51是接在最小系統(tǒng)板上,通過USB接口接筆電來為單片機(jī)系統(tǒng)供電
之前測(cè)試時(shí)多使用自鎖開關(guān)來進(jìn)行測(cè)試,DS1302運(yùn)行正常,可是拔掉USB接口,無論是短時(shí)間還是等候長(zhǎng)時(shí)間重新連接時(shí)DS1302都已經(jīng)丟失數(shù)據(jù),這又是什么原因呢,自鎖開關(guān)不是理想的切斷電源的方式嗎?
作者: OHHO    時(shí)間: 2020-5-25 15:01
我又將備用電源CR2032拆除,上電測(cè)試,此時(shí)又讀出原本設(shè)定好的時(shí)間,而在之前帶CR2032時(shí)斷電,讀出的值永遠(yuǎn)是從寄存器全清零的情況下開始計(jì)算的。
這么看來帶備用電池掉電實(shí)際上寄存器的值并沒有清零?而是讀取出現(xiàn)了問題?可是我使用分析儀查看,除了傳遞的值不對(duì),時(shí)序也沒問題。
再研究研究是什么情況。
作者: OHHO    時(shí)間: 2020-5-25 15:11
多次測(cè)試,發(fā)現(xiàn)出現(xiàn)隨機(jī)結(jié)果,與電源貌似無關(guān)。一定概率下讀出正確數(shù)據(jù),一定概率下就是清零的2000.1.1 00:00:00 這其中我并未重新進(jìn)行編程操作
在這里順便先上傳一下源碼,MCU采用STC89C51RC(容量問題注釋掉了部分函數(shù)),OLED使用SPI協(xié)議,將DS1302的數(shù)據(jù)取出來顯示。各管腳等定義已在代碼注釋中顯示。大部分是對(duì)網(wǎng)上各種代碼的修改與整合,感覺還是硬件有問題....

OLED SPI.rar

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


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

你文字說明一堆,卻不把電路圖上傳一下,誰(shuí)能知道怎么回事呢
DS1302是一定匹配電容的
作者: OHHO    時(shí)間: 2020-5-29 17:15
Y_G_G 發(fā)表于 2020-5-29 08:37
你文字說明一堆,卻不把電路圖上傳一下,誰(shuí)能知道怎么回事呢
DS1302是一定匹配電容的

是的,是沒講清楚。
因?yàn)槌鯇W(xué)這個(gè)不清楚這一點(diǎn),信了那個(gè)商家的電路圖,還以為不用匹配電容。
現(xiàn)在知道是有問題的,謝謝指教
作者: robinsonlin    時(shí)間: 2020-5-30 11:21
OHHO 發(fā)表于 2020-5-29 17:15
是的,是沒講清楚。
因?yàn)槌鯇W(xué)這個(gè)不清楚這一點(diǎn),信了那個(gè)商家的電路圖,還以為不用匹配電容。
現(xiàn)在知道 ...

商家的電路圖沒有錯(cuò),實(shí)際電路板上走線,和你用面包板做出來的效果是有區(qū)別的。 匹配電容很小,布線工程師會(huì)利用一段蛇形線就搞定了。 多看看實(shí)際的電路板布線,你就明白了。
作者: OHHO    時(shí)間: 2020-5-30 16:12
robinsonlin 發(fā)表于 2020-5-30 11:21
商家的電路圖沒有錯(cuò),實(shí)際電路板上走線,和你用面包板做出來的效果是有區(qū)別的。 匹配電容很小,布線工程 ...

謝謝,受教了
作者: Y_G_G    時(shí)間: 2020-5-30 17:12
robinsonlin 發(fā)表于 2020-5-30 11:21
商家的電路圖沒有錯(cuò),實(shí)際電路板上走線,和你用面包板做出來的效果是有區(qū)別的。 匹配電容很小,布線工程 ...

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




歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1