在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

對DS1302芯片的一些理解和學習心得

單片機 ? 2017-12-27 14:47 ? 次閱讀

準確地說,我是從2012年的秋天開始接觸DS1302這個芯片的。時年大四,正在做電子專業的專業實習。我們的題目是“智能家居”,其中用到了DS1302這個芯片。當時做下來只是知道了這個東西是干什么用的,至于怎么用,可以說是完全沒弄明白。但當時在網上找了相關的資料,也下載了一些前輩寫的程序,當時扔到Proteus上去仿真,大概知道了改哪條語句可以實現什么功能什么的。時隔一年以后,已經是畢業的人了。剛剛到公司報道,工作還比較閑,晚上或周末就有時間學點電路什么的,就又把DS1302翻了出來。這期間買了IC和關鍵的32.768kHz的晶振。于是就把電路給搭了出來。這次算是一次入門,雖然沒能完全搞透,但知道了以下幾點:

1.DS1302的驅動分為往里寫和往外讀;

2.片內集成了一部分RAM,這部分內容是不受晶振影響的;個人觀點,這部分應用很雞肋。

3.往里寫數據和往外讀數據的時候,IO口方向(input或output)是不同的:在寫數據的時候是先發8位的地址位,再發8位的時間信息(或將要寫入RAM的內容),此過程中,IO口方向一直是output。而讀數據時,同樣也是要先發8位的地址位,但之后要將IO口狀態改為input,這時將開始允許從DS1302傳來信息。這里我只是說允許信息過來,而不是說接收信息,因為信息是一位一位傳過來的,要加以整理并儲存下來才算是接受,這是軟件對應上的事情,但不考慮這些的話,至少此時是有信息過來的,只是你如何讀取并保存的問題。

最近斥資2000元添購了我人生的第一臺示波器。要說示波器大家都很熟悉,學電的沒有沒用過的。但有自己的示波器的人恐怕不多。為什么要強調一下是“我”的示波器呢,這里不免啰嗦幾句,談談我對中國現行教育的一點看法。

我的大學后半程算是在專業知識上下了些工夫的。這從我兩屆大學生電子設計競賽和優秀畢業設計等榮譽上可以驗證。當然,我現在仍要本著學習的態度在這個行業里發展自我,但我認為我在大學里接受到的專業技能方面的資源肯定是大于其他同學的,我經常出入實驗室,示波器,函數發生器也總用,但都是在老師的指導下使用,老師說這個東西要測一下,就去測。至于如果想做一些自己想做的實驗,總是覺得不是很方便。我的母校在我大二的時候,將模電實驗室的示波器全部更新成數字示波器,這些示波器在高校中應該說算數一數二了,但很遺憾,在實驗課之外,這些家伙鮮有人問津。

近幾年我的母校有了很多的課外實踐活動,老師和同學們都開始熱衷做項目。也有相當的一部分實驗資源被共享出來。這是好事。但對于學生來說,不可一味地埋頭在一個項目中,要挑起頭做實驗,廣泛地涉獵,而老師要做的就是引導。

閑話至此。買了示波器以后做的第一個實驗是TDA2030功率放大器的性能測定。發現了不少問題,由于本篇主要講DS1302,所以暫不總結關于TDA2030的東西。第二個實驗就是觀測DS1302的通訊波形。這次終于讓我搞懂了它。以下為DS1302的學習心得:

通過示波器觀察通訊信號的波形是一種必要的手段,尤其是當電路不能正常工作的時候。不能正常工作首先可以去判斷硬件方面是不是OK。一些論壇上有人認為晶振不起振是硬件的問題,個人認為并非是這樣。舉個例子:用DS1302與某單片機連接,為單片機燒寫給DS1302寫入時間信息的軟件,正常動作以后,改燒寫只能讀數據的軟件,(此過程中DS1302一直有電)發現也可正常讀數,但給DS1302斷電再上電,卻發現不能正常讀數。用萬用表測晶振兩端電壓,應該是一端為高電平一端為低電平,證明晶振沒有起振嗎?是和晶振兩端的電容有關嗎?

晶振這里沒有起振是顯然的,但卻不一定是硬件的問題。上例中重新上電以后,單片機沒有執行給DS1302寫入命令的指令,也就造成DS1302上秒寄存器的最高位可能不是0,這一位決定了DS1302是計數還是暫停,為1的話,DS1302是不計數的。當然,是否確實如此還需驗證。關于晶振還有就是其兩端電容究竟用多大,有的資料寫用6pF,有的說用30pF,還有說可以不用的。后兩種我沒試過,第一種是OK的。另兩種會再以后確認一下是否可以。這里有一點,匹配的電容和走時的精準度是有關系的。這里不要妄信一些論壇上是一些人說什么晶振質量不好,什么芯片質量不好的混話。

我測了一下晶振一端的波形,如下圖

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

沒有示波器的話用萬用表量也可以,電壓值是多少并不是關鍵問題,主要是晶振兩端對地的電壓如果相等,那么基本可以斷定晶振是正常工作的。這也說明,在軟件方面,至少寫秒寄存器這部分是OK的。

可能還有人會糾結上拉電阻的問題。有的電路圖上三條通信RST(也稱OE)、SDA和CLK都有上拉電阻(10k左右),有的就只是在SDA線上加了上拉電阻。這里建議大家去研究研究IO口的輸入輸出狀態相關的知識(可以參照本博客中另一篇關于STC12C5410學習筆記的文章,本文不再贅述)。只說一句,現在除了89C51、89C52這種很入門級的單片機,基本都可以通過設定相應的寄存器去控制各個IO口的狀態。由于RST和CLK這兩條線對單片機來說都是輸出線,這樣一般都會將這兩個IO口設定成內部上拉的模式,所以一般外部就不用再加電阻了。

但SDA不同,以為讀和寫數據時,SDA的IO口方向一個是輸入一個是輸出,輸出的話也是用內部上拉模式,但輸入的話一般會選擇高阻模式,此時沒有內部上拉電阻,所以要外接一個上拉電阻來給DS1302這邊提供高電平和電流。這個上拉電阻不要太小,我試過加120Ω的上拉電阻,在51單片機上運行,波形完全走樣。但在arduino上運行似乎還好。原因有可能是兩者IO口低輸出時的對地等效電阻不同。很多資料上都是用的10kΩ的上拉電阻,我測試后也是好用的。

本文中的測試波形都是在arduino平臺上測試得到的,arduino有個好處就是有個很方便的串口查看器,在電腦上可以輕松讀取串口上送多來的信息。但好像目前在工業上的應用很有限,尤其是國內,主要是一些年輕的電子愛好者或一些搞機械或者搞美術的創客們用的多一點。它就是可以設定IO口方向的。但文本給出的程序代碼主要是基于51單片機的,而且是89C52這種不帶IO方向設定功能的。原因就是我也很想搞清楚沒有IO口方向控制時,單片機怎么區分輸出和輸入的操作。我會一邊測試一邊寫這篇筆記。首先來看看正常工作的波形是什么樣的:

圖2 讀取一次完整時間信息的波形(SDA和CLK)

圖2所示是讀取一次完整時間信息的SDA和CLK的波形。通道1表示SDA,通道2表示CLK,從左至右可以看出CLK明顯被分成7份,這些依次代表對秒、分、時、日、月、星期、年這7個信息讀取時的CLK,對應的通道1是SDA(數據)信息。注意,這里都是讀操作。我將讀取秒的那部分波形展開,如圖3.

圖3 秒信息讀取的時序圖

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 示波器
    +關注

    關注

    113

    文章

    6266

    瀏覽量

    185342
  • 晶振
    +關注

    關注

    34

    文章

    2880

    瀏覽量

    68118
  • DS1302
    +關注

    關注

    8

    文章

    449

    瀏覽量

    50729

原文標題:我與DS1302——個人關于DS1302使用的一點心得

文章出處:【微信號:aidanpianji,微信公眾號:單片機】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    起來搞定 ds1302

    ,希望他們能夠獲益,避免走一些彎路...以后也不會有那么多帖子來問ds1302問題。。。。 也希望高手們過來起補充,起討論遇到的問題...更希望曾經研究過這款
    發表于 12-02 16:04

    ds1302 突發模式使用

    今天接觸到ds1302時鐘芯片,看了很多文檔都提到突發模式,講的不是很清楚,也沒找到相關使用突發模式的程序,有沒有大神能提供一些程序學習
    發表于 10-30 21:34

    DS1302芯片驅動的使用

    馬上就要比賽了,畢竟比賽不像是自己在實驗室寫,沒有自己寫好的驅動代碼,不過官方會提供驅動代碼的。以下就是官方的ds1302驅動的使用。DS1302芯片以下是官方提供的ds1302驅動代
    發表于 02-24 06:56

    FIFO_學習心得

    FIFO_學習心得。 FIFO_學習心得
    發表于 11-09 14:07 ?6次下載

    PIC單片機的一些學習心得與總結

    PIC單片機的一些學習心得與總結
    發表于 01-14 12:33 ?12次下載

    基于DS1302芯片的時鐘設計

    基于DS1302芯片的時鐘設計
    發表于 03-01 12:21 ?12次下載

    嵌入式基礎學習心得

    以下是我的嵌入式基礎學習心得,講在嵌入式基礎學習和實踐階段,需要注意的一些東西節和一些習慣,希望看完我的嵌入式基礎學習心得,會對你的嵌入式基
    發表于 09-18 17:36 ?2次下載

    DS1302芯片中文資料

    DS1302芯片中文資料
    發表于 09-21 08:15 ?59次下載
    <b class='flag-5'>DS1302</b><b class='flag-5'>芯片</b>中文資料

    ds1302芯片介紹,ds1302工作原理解

    時鐘小編相信大家見怪不怪了,那么時鐘芯片大家知道是什么嗎?今天我們就來談談最常用時鐘芯片ds1302,主要通過ds1302芯片的介紹和
    發表于 10-18 16:19 ?4.5w次閱讀

    DS1302的內部結構全面剖析

    說起DS1302想必還是有很多人知道的吧,畢竟現在流行的串行時鐘電路有很多DS1302就在其中。對于DS1302小編在《ds1302芯片介紹
    發表于 10-19 09:28 ?6538次閱讀

    DS1302芯片的使用,時鐘芯片DS1302功能匯總

    DS1302大家都知道他是時鐘芯片,知道了原理肯定想知道功能和操作方法,這篇文章就是主要來說DS1302芯片的功能以及時鐘芯片
    發表于 10-19 10:43 ?9554次閱讀

    DS1302時鐘芯片調試經驗,奉上調試時鐘芯片DS1302的程序

     時鐘芯片DS1302目前得到廣泛的應用,但是DS1302的調試還是很有難度的。這篇文章就來說說DS1302時鐘芯片的調試驚艷,奉上時鐘
    發表于 10-19 11:12 ?1.1w次閱讀

    ds1302是什么接口,DS1302時鐘芯片接口分析詳解

    DS1302是達拉斯公司出品的款實時時鐘芯片。主要是針對年、月、日、周、時、分、秒進行計時,且具有閏年補償等多種功能。這篇文章主要就是說DS1302的到底是屬于什么接口的,同時分析詳
    發表于 10-19 14:34 ?1.5w次閱讀

    時鐘芯片DS1302的原理及使用

    .描述DS1302時鐘芯片是由美國DALLAS公司推出的具有涓細電流充電能力的低功耗實時時鐘芯片。它可以對年、月、日、周、時、分、秒進行計時,且具有閏年補償等多種功能。
    發表于 01-17 13:03 ?29次下載
    時鐘<b class='flag-5'>芯片</b><b class='flag-5'>DS1302</b>的原理及使用

    ds1302中文手冊 ds1302時鐘芯片引腳功能

    電子發燒友網站提供《ds1302中文手冊 ds1302時鐘芯片引腳功能.zip》資料免費下載
    發表于 09-15 15:44 ?29次下載
    <b class='flag-5'>ds1302</b>中文手冊 <b class='flag-5'>ds1302</b>時鐘<b class='flag-5'>芯片</b>引腳功能
    主站蜘蛛池模板: 午夜精品视频| 夜夜艹天天干| 久久精品视频5| 久久免费特黄毛片| 精品国产_亚洲人成在线高清| 精品国产欧美一区二区最新| 国产女人伦码一区二区三区不卡| 成人亚洲网站| 特黄aaaaa日本大片免费看 | 日韩怡红院| 美女黄色毛片免费看| 国内精品久久久久久影院老狼| 国产tube| 午夜免费视频观看| 欧美jizzhd精品欧美4k| sihu影院永久在线影院| www.91大神| 一级特黄aa大片免费| 四虎伦理| 国精视频一区二区视频| 夜夜操网站| 成熟女性毛茸茸xx免费视频| 中文字幕一二三区| 一本二卡三卡四卡乱码二百| 色四月婷婷| 国产色系视频在线观看免费| 五月天婷婷在线观看视频| 国产天美| 国产在线精品观看| 日韩精品视频免费在线观看| 国产一区二区三区免费大片天美| 午夜干b| 福利社看片| 国产精品女丝袜白丝袜| 色多多网站| 国产成年女一区二区三区| 天天操天天添| 91在线视频免费| 天堂中文资源在线观看| 激情五月婷婷基地| 女人又色又爽又黄|