色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
电子发烧友
开通电子发烧友VIP会员 尊享10大特权
海量资料免费下载
精品直播免费看
优质内容免费畅学
课程9折专享价
創作中心

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

3天內不再提示

DS1302時鐘芯片的工作原理

CHANBAEK ? 來源:CSDN-_會飛_的魚 ? 作者:CSDN-_會飛_的魚 ? 2023-03-07 15:01 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

一. 描述

DS1302時鐘芯片是由美國DALLAS公司推出的具有涓細電流充電能力的低功耗實時時鐘芯片。 它可以對年、月、日、周、時、分、秒進行計時,且具有閏年補償等多種功能。

DS1302芯片包含一個用于存儲實時時鐘/日歷的 31 字節的靜態 RAM,可通過簡單的串行接口微處理器通訊,將當前的時鐘存于RAM。 DS1302芯片對于少于 31 天的月份月末會自動調整,并會自動對閏年進行校正。 由于有一個 AM/PM 指示器,時鐘可以工作在 12 小時制或者 24小時制。

二. 芯片參數

1.芯片特點

  • 實時時鐘計算年、月、日、時、分、秒、星 期,直到 2100 年,并有閏年調節功能
  • 31 x 8 位 通用暫存 RAM
  • 串行輸入輸出,使管腳數最少
  • 2.0V 至 5.5V 寬電壓范圍操作
  • 在 2.0V 時工作電流小于 300nA
  • 讀寫時鐘或 RAM 數據時有單字節或多字節(脈沖串模式)數據傳送方式
  • 8 管腳 DIP 封裝或可選的 8 管腳表面安裝 SO 封裝
  • 簡單的 3 線接口
  • 與 TTL 兼容 (VCC = 5V)
  • 可選的工業溫度范圍:-40°C to +85°C

2.引腳說明

截圖20230301181839.png

DS1302采用的是三線接口的雙向數據通信接口RST是片引腳,低電平有效; SCLK是時鐘芯片,為通信提供時鐘源; I/O為數據輸入輸出引腳,用于傳輸及接收數據;

DS1302還采用了雙電源供電模式,VCC1 連接到備用電源,在VCC2主電源失效時保持時間和日期數據.

三. 參考電路

截圖20230301181839.png

DS1302芯片基本電路如上圖,其中Y2為32.768k外部晶振,為芯片提供時鐘源;P2為備用電池,以保證在主電源掉電后,芯片仍可繼續運行;D1為二極管,保證電壓的單向導通,防止主電源電壓過高燒壞備用電池;R6為上拉電阻,增強信號傳輸的穩定性。

四. 控制程序

1.時鐘數據的讀寫地址

截圖20230301181839.png

如上圖,為DS1302芯片的時鐘數據的讀和寫的地址,也就是說要實現對芯片控制,就是往這些地址上寫入或讀出數據。 其中:

讀地址為: 0x81(秒), 0x83(分), 0x85(時), 0x87(日), 0x89(月), 0x8b(星期), 0x8d(年);

寫地址為: 0x80(秒), 0x82(分), 0x84(時), 0x86(日), 0x88(月), 0x8a(星期), 0x8c(年);

2.控制時序

DS1302控制軟件最基本的操作為寫函數和讀函數,其次就是實現初始化函數。

(1)讀時序

截圖20230301181839.png

/*******************************************************************************
* 函數功能       : 讀取一個地址的數據
*******************************************************************************/
uchar Ds1302Read(uchar addr)
{
  uchar n,dat,dat1;
  RST = 0;
  _nop_();




  SCLK = 0;//先將SCLK置低電平。
  _nop_();
  RST = 1;//然后將RST(CE)置高電平。
  _nop_();




  for(n=0; n<8; n++)//開始傳送八位地址命令
  {
    DSIO = addr & 0x01;//數據從低位開始傳送
    addr >>= 1;
    SCLK = 1;//數據在上升沿時,DS1302讀取數據
    _nop_();
    SCLK = 0;//DS1302下降沿時,放置數據
    _nop_();
  }
  _nop_();
  for(n=0; n<8; n++)//讀取8位數據
  {
    dat1 = DSIO;//從最低位開始接收
    dat = (dat>>1) | (dat1<<7);
    SCLK = 1;
    _nop_();
    SCLK = 0;//DS1302下降沿時,放置數據
    _nop_();
  }




  RST = 0;
  _nop_();  //以下為DS1302復位的穩定時間,必須的。
  SCLK = 1;
  _nop_();
  DSIO = 0;
  _nop_();
  DSIO = 1;
  _nop_();
  return dat;  
}

(2)寫時序

截圖20230301181839.png

/*******************************************************************************
* 函數功能       : 向DS1302命令(地址+數據)
*******************************************************************************/
void Ds1302Write(uchar addr, uchar dat)
{
  uchar n;
  RST = 0;
  _nop_();
  SCLK = 0;//先將SCLK置低電平。
  _nop_();
  RST = 1; //然后將RST(CE)置高電平。
  _nop_();




  for (n=0; n<8; n++)//開始傳送八位地址命令
  {
    DSIO = addr & 0x01;//數據從低位開始傳送
    addr >>= 1;
    SCLK = 1;//數據在上升沿時,DS1302讀取數據
    _nop_();
    SCLK = 0;
    _nop_();
  }
  for (n=0; n<8; n++)//寫入8位數據
  {
    DSIO = dat & 0x01;
    dat >>= 1;
    SCLK = 1;//數據在上升沿時,DS1302讀取數據
    _nop_();
    SCLK = 0;
    _nop_();  
  }




  RST = 0;//傳送數據結束
  _nop_();
}

(3)初始化

/*******************************************************************************
* 函數功能       : 初始化DS1302.
*******************************************************************************/
void Ds1302Init()
{
  uchar n;
  Ds1302Write(0x8E,0X00);     //禁止寫保護,就是關閉寫保護功能
  for (n=0; n<7; n++)//寫入7個字節的時鐘信號:分秒時日月周年
  {
    Ds1302Write(WRITE_RTC_ADDR[n],TIME[n]);  
  }
  Ds1302Write(0x8E,0x80);     //打開寫保護功能
}

3. 參考示例

實現了DS1302的驅動程序,接下來就可以實現DS1302的報時功能了。




//---DS1302寫入和讀取時分秒的地址命令---//
//---秒分時日月周年 最低位讀寫位;-------//
uchar code READ_RTC_ADDR[7] = {0x81, 0x83, 0x85, 0x87, 0x89, 0x8b, 0x8d}; 
uchar code WRITE_RTC_ADDR[7] = {0x80, 0x82, 0x84, 0x86, 0x88, 0x8a, 0x8c};




//---DS1302時鐘初始化2013年1月1日星期二12點00分00秒。---//
//---存儲順序是秒分時日月周年,存儲格式是用BCD碼---//
uchar TIME[7] = {0, 0, 0x12, 0x01, 0x01, 0x02, 0x13};




/*******************************************************************************
* 函數功能       : 讀取時鐘信息
*******************************************************************************/
void Ds1302ReadTime()
{
  uchar n;
  for (n=0; n<7; n++)//讀取7個字節的時鐘信號:分秒時日月周年
  {
    TIME[n] = Ds1302Read(READ_RTC_ADDR[n]);
  }  
}




void main()
{
  LcdInit();
  Ds1302Init();
  while(1)
  {  
    Ds1302ReadTime();       //讀取此時的時間
    LcdDisplay();                 //顯示時間
  }
}
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 電源
    +關注

    關注

    185

    文章

    18380

    瀏覽量

    256479
  • 芯片
    +關注

    關注

    460

    文章

    52543

    瀏覽量

    441591
  • 接口
    +關注

    關注

    33

    文章

    9012

    瀏覽量

    153812
  • 時鐘芯片
    +關注

    關注

    2

    文章

    271

    瀏覽量

    40840
  • DS1302
    +關注

    關注

    8

    文章

    451

    瀏覽量

    51939
收藏 0人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

  • goshaoqi1
  • jf_127561991

評論

相關推薦
熱點推薦

何為DS1302時鐘芯片

標題 單片機外設之一(時鐘芯片DS1302)何為DS1302?DS1302是由美國DALLAS公司推出的具有涓細電流充電能力的低功耗實時
發表于 12-08 08:15

DS1302 的基本組成和工作原理

DS1302 的基本組成和工作原理DS1302 的基本組成和工作原理DS1302 的管腳排列及描述如下圖及表所示
發表于 01-14 13:27 ?17次下載
<b class='flag-5'>DS1302</b> 的基本組成和<b class='flag-5'>工作原理</b>

時鐘芯片DS1302及其在數據記錄中的應用

時鐘芯片DS1302及其在數據記錄中的應用:介紹了美國DALLAS公司推出的低功耗時鐘芯片DS1302
發表于 05-22 08:35 ?140次下載

基于DS1302芯片時鐘設計

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

基于實時時鐘模塊 時鐘芯片DS1302

基于實時時鐘模塊 時鐘芯片DS1302
發表于 10-16 11:35 ?40次下載
基于實時<b class='flag-5'>時鐘</b>模塊 <b class='flag-5'>時鐘</b><b class='flag-5'>芯片</b><b class='flag-5'>DS1302</b>

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

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

DS1302的內部結構全面剖析

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

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

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

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

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

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

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

時鐘芯片DS1302工作原理和應用資料下載

電子發燒友網為你提供時鐘芯片DS1302工作原理和應用資料下載的電子資料下載,更有其他相關的電路圖、源代碼、課件教程、中文資料、英文資料、參考設計、用戶指南、解決方案等資料,希望可以
發表于 04-22 08:41 ?5次下載
<b class='flag-5'>時鐘</b><b class='flag-5'>芯片</b><b class='flag-5'>DS1302</b>的<b class='flag-5'>工作原理</b>和應用資料下載

時鐘芯片DS1302的原理及使用

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

基于單片機的DS1302實時時鐘實驗 實時時鐘芯片DS1302工作原理

在許多系統當中都需要精確的時鐘功能,因此時鐘芯片孕育而生。其中美國達拉斯 DALLAS 公司設計的 DS1302 是一款非常流行的數字時鐘
的頭像 發表于 07-27 18:27 ?8728次閱讀
基于單片機的<b class='flag-5'>DS1302</b>實時<b class='flag-5'>時鐘</b>實驗 實時<b class='flag-5'>時鐘</b><b class='flag-5'>芯片</b><b class='flag-5'>DS1302</b>的<b class='flag-5'>工作原理</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><b class='flag-5'>芯片</b>引腳功能

DS1302時鐘芯片工作原理

DS1302時鐘芯片是一種實時時鐘芯片,采用三線串行接口與微處理器相連,可以提供年、月、日、時、分、秒等時間信息。
的頭像 發表于 11-18 09:39 ?6203次閱讀
主站蜘蛛池模板: 亚洲欧洲免费三级网站 | 草莓湿漉漉是好事还是恶性 | 国产自啪偷啪视频在线 | 9420高清完整版在线电影免费观看 | 最近中文字幕免费高清MV视频 | 亚洲另类中文字幕 | 国产在线AV一区二区香蕉 | 伊人久久大香线蕉综合bd高清 | 亚洲一区二区三区高清网 | 亚洲AV色香蕉一区二区三区 | 驯服有夫之妇HD中字日本 | 秋霞伦理机在线看片 | 久久爱狠狠综合网 | 99精品国产在热 | 国产精品久久久久久久久免费下载 | 在线中文字幕视频 | FREE性丰满白嫩白嫩的HD | 亚洲444777KKK在线观看 | 男人都懂www深夜免费网站 | 不卡的在线AV网站 | 久久中文字幕综合不卡一二区 | 在线一本码道高清 | 100国产精品人妻无码 | 中国比基尼美女 | 日日干日日操日日射 | 国产产一区二区三区久久毛片国语 | 大胆国模一区二区三区伊人 | 另类欧美尿交 | 玖玖爱这里只有精品视频 | 校园纯肉H教室第一次 | 丰满女朋友在线观看中文 | 亚洲精品AV无码重口另类 | 99久久精品费精品蜜臀AV | 国产午夜福利100集发布 | 免费人成网站在线观看10分钟 | 挺进老师的紧窄小肉六电影完整版 | 精品国产三级a | 99热久久久无码国产精品性麻豆 | 国产精品日韩欧美一区二区三区 | 在线播放无码字幕亚洲 | 黄色亚洲片 |

電子發燒友

中國電子工程師最喜歡的網站

  • 2931785位工程師會員交流學習
  • 獲取您個性化的科技前沿技術信息
  • 參加活動獲取豐厚的禮品