欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 12872|回復: 17
打印 上一主題 下一主題
收起左側

我與DS1302——個人關于DS1302使用的一點心得

  [復制鏈接]
跳轉到指定樓層
樓主
ID:262 發(fā)表于 2014-6-10 03:42 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式
準確地說,我是從2012年的秋天開始接觸DS1302這個芯片的。時年大四,正在做電子專業(yè)的專業(yè)實習。我們的題目是“智能家居”,其中用到了DS1302這個芯片。當時做下來只是知道了這個東西是干什么用的,至于怎么用,可以說是完全沒弄明白。但當時在網上找了相關的資料,也下載了一些前輩寫的程序,當時扔到Proteus上去仿真,大概知道了改哪條語句可以實現(xiàn)什么功能什么的。時隔一年以后,已經是畢業(yè)的人了。剛剛到公司報道,工作還比較閑,晚上或周末就有時間學點電路什么的,就又把DS1302翻了出來。這期間買了IC和關鍵的32.768kHz的晶振。于是就把電路給搭了出來。這次算是一次入門,雖然沒能完全搞透,但知道了以下幾點:1.DS1302的驅動分為往里寫和往外讀;
2.片內集成了一部分RAM,這部分內容是不受晶振影響的;
3.往里寫數(shù)據(jù)和往外讀數(shù)據(jù)的時候,IO口方向(input或output)是不同的:在寫數(shù)據(jù)的時候是先發(fā)8位的地址位,再發(fā)8位的時間信息(或將要寫入RAM的內容),此過程中,IO口方向一直是output。而讀數(shù)據(jù)時,同樣也是要先發(fā)8位的地址位,但之后要將IO口狀態(tài)改為input,這時將開始允許從DS1302傳來信息。這里我只是說允許信息過來,而不是說接收信息,因為信息是一位一位傳過來的,要加以整理并儲存下來才算是接受,這是軟件對應上的事情,但不考慮這些的話,至少此時是有信息過來的,只是你如何讀取并保存的問題。
最近斥資2000元添購了我人生的第一臺示波器。要說示波器大家都很熟悉,學電的沒有沒用過的。但有自己的示波器的人恐怕不多。為什么要強調一下是“我”的示波器呢,這里不免啰嗦幾句,談談我對中國現(xiàn)行教育的一點看法。
我的大學后半程算是在專業(yè)知識上下了些工夫的。這從我兩屆大學生電子設計競賽和優(yōu)秀畢業(yè)設計等榮譽上可以驗證。當然,我現(xiàn)在仍要本著學習的態(tài)度在這個行業(yè)里發(fā)展自我,但我認為我在大學里接受到的專業(yè)技能方面的資源肯定是大于其他同學的,我經常出入實驗室,示波器,函數(shù)發(fā)生器也總用,但都是在老師的指導下使用,老師說這個東西要測一下,就去測。至于如果想做一些自己想做的實驗,總是覺得不是很方便。我的母校在我大二的時候,將模電實驗室的示波器全部更新成數(shù)字示波器,這些示波器在高校中應該說算數(shù)一數(shù)二了,但很遺憾,在實驗課之外,這些家伙鮮有人問津。
近幾年我的母校有了很多的課外實踐活動,老師和同學們都開始熱衷做項目。也有相當?shù)囊徊糠謱嶒炠Y源被共享出來。這是好事。但對于學生來說,不可一味地埋頭在一個項目中,要挑起頭做實驗,廣泛地涉獵,而老師要做的就是引導。
閑話至此。買了示波器以后做的第一個實驗是TDA2030功率放大器的性能測定。發(fā)現(xiàn)了不少問題,由于本篇主要講DS1302,所以暫不總結關于TDA2030的東西。第二個實驗就是觀測DS1302的通訊波形。這次終于讓我搞懂了它。以下為DS1302的學習心得:
通過示波器觀察通訊信號的波形是一種必要的手段,尤其是當電路不能正常工作的時候。不能正常工作首先可以去判斷硬件方面是不是OK。一些論壇上有人認為晶振不起振是硬件的問題,個人認為并非是這樣。舉個例子:用DS1302與某單片機連接,為單片機燒寫給DS1302寫入時間信息的軟件,正常動作以后,改燒寫只能讀數(shù)據(jù)的軟件,(此過程中DS1302一直有電)發(fā)現(xiàn)也可正常讀數(shù),但給DS1302斷電再上電,卻發(fā)現(xiàn)不能正常讀數(shù)。用萬用表測晶振兩端電壓,應該是一端為高電平一端為低電平,證明晶振沒有起振嗎?是和晶振兩端的電容有關嗎?
晶振這里沒有起振是顯然的,但卻不一定是硬件的問題。上例中重新上電以后,單片機沒有執(zhí)行給DS1302寫入命令的指令,也就造成DS1302上秒寄存器的最高位可能不是0,這一位決定了DS1302是計數(shù)還是暫停,為1的話,DS1302是不計數(shù)的。當然,是否確實如此還需驗證。關于晶振還有就是其兩端電容究竟用多大,有的資料寫用6pF,有的說用30pF,還有說可以不用的。后兩種我沒試過,第一種是OK的。另兩種會再以后確認一下是否可以。這里有一點,匹配的電容和走時的精準度是有關系的。這里不要妄信一些論壇上是一些人說什么晶振質量不好,什么芯片質量不好的混話。
我測了一下晶振一端的波形,如下圖

圖1 DS1302晶振一側波形(1通道)

沒有示波器的話用萬用表量也可以,電壓值是多少并不是關鍵問題,主要是晶振兩端對地的電壓如果相等,那么基本可以斷定晶振是正常工作的。這也說明,在軟件方面,至少寫秒寄存器這部分是OK的。
可能還有人會糾結上拉電阻的問題。有的電路圖上三條通信線RST(也稱OE)、SDA和CLK都有上拉電阻(10k左右),有的就只是在SDA線上加了上拉電阻。這里建議大家去研究研究IO口的輸入輸出狀態(tài)相關的知識(可以參照本博客中另一篇關于STC12C5410學習筆記的文章,本文不再贅述)。只說一句,現(xiàn)在除了89C51、89C52這種很入門級的單片機,基本都可以通過設定相應的寄存器去控制各個IO口的狀態(tài)。由于RST和CLK這兩條線對單片機來說都是輸出線,這樣一般都會將這兩個IO口設定成內部上拉的模式,所以一般外部就不用再加電阻了。但SDA不同,以為讀和寫數(shù)據(jù)時,SDA的IO口方向一個是輸入一個是輸出,輸出的話也是用內部上拉模式,但輸入的話一般會選擇高阻模式,此時沒有內部上拉電阻,所以要外接一個上拉電阻來給DS1302這邊提供高電平和電流。
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏2 分享淘帖 頂 踩
回復

使用道具 舉報

沙發(fā)
ID:9542 發(fā)表于 2014-6-10 16:14 | 只看該作者
在學校時,使用STC單片機DS1302沒上拉,結果出現(xiàn)奇數(shù)秒有問題,偶數(shù)秒正常,那時調試到崩潰。
回復

使用道具 舉報

板凳
ID:36319 發(fā)表于 2014-6-13 08:59 | 只看該作者
好文章,心得體會,頂
回復

使用道具 舉報

地板
ID:63731 發(fā)表于 2014-7-7 21:48 | 只看該作者
謝謝分享
回復

使用道具 舉報

5#
ID:65877 發(fā)表于 2014-9-6 17:45 | 只看該作者
經驗就是經驗。
回復

使用道具 舉報

6#
ID:48439 發(fā)表于 2014-10-10 23:56 | 只看該作者
#在這里快好東西 頂頂帶走。
回復

使用道具 舉報

7#
ID:67370 發(fā)表于 2014-10-14 17:37 | 只看該作者
好像意猶未盡,還有呢?
回復

使用道具 舉報

8#
ID:78314 發(fā)表于 2015-4-29 08:45 | 只看該作者
樓主還沒說完呢?等等  我們繼續(xù)聆聽教誨
回復

使用道具 舉報

9#
ID:77498 發(fā)表于 2017-5-1 20:38 | 只看該作者
經驗就是經驗
回復

使用道具 舉報

10#
ID:166645 發(fā)表于 2017-9-22 11:51 | 只看該作者
很有用的知識,,謝謝樓主
回復

使用道具 舉報

11#
ID:234890 發(fā)表于 2017-9-22 14:41 | 只看該作者
好文章啊!學習了
回復

使用道具 舉報

12#
ID:261381 發(fā)表于 2017-12-14 08:40 | 只看該作者
心得在哪里
回復

使用道具 舉報

13#
ID:354482 發(fā)表于 2019-12-12 12:52 | 只看該作者
謝謝分享,很有用
回復

使用道具 舉報

14#
ID:452928 發(fā)表于 2020-3-29 15:16 | 只看該作者
dongmaowan 發(fā)表于 2014-6-10 16:14
在學校時,使用STC單片機DS1302沒上拉,結果出現(xiàn)奇數(shù)秒有問題,偶數(shù)秒正常,那時調試到崩潰。

請問是RST、IO、SCLK三個口都要上拉么,還是僅僅IO口上拉呢,我現(xiàn)在也遇到和你一樣的問題,有時候秒會跳得很快,但是整體是沒問題的(就是用手機定時一分鐘,顯示器也對得上)
回復

使用道具 舉報

15#
ID:644425 發(fā)表于 2020-4-12 23:56 來自觸屏版 | 只看該作者
nls 發(fā)表于 2020-3-29 15:16
請問是RST、IO、SCLK三個口都要上拉么,還是僅僅IO口上拉呢,我現(xiàn)在也遇到和你一樣的問題,有時候秒會跳 ...

上拉不是關鍵,讀之前rst多復位一次,就解決了,即rst=1,clk=1,這里delay1us以上然后,rst=0,clk=0,再rst=1,就能確保正常讀數(shù)了。
回復

使用道具 舉報

16#
ID:644425 發(fā)表于 2020-4-12 23:58 來自觸屏版 | 只看該作者
nls 發(fā)表于 2020-3-29 15:16
請問是RST、IO、SCLK三個口都要上拉么,還是僅僅IO口上拉呢,我現(xiàn)在也遇到和你一樣的問題,有時候秒會跳 ...

另外,走著走著忽然秒快跳好幾秒,一般是晶振外殼沒有接地造成的。
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表