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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

DS1302使用手冊縮減版

[復制鏈接]
跳轉到指定樓層
樓主
ID:421049 發表于 2019-3-8 20:47 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
DS1302使用手冊縮減版,自己整理的,帶例程。

  • 特征

實時時鐘(RTC)計秒、分、時、日期、月、星期和年,并且帶閏年,有效補償到2100年

寬范圍工作電壓

2.0V到5.5V,可選工業級溫度范圍:-40℃到+85℃
二、典型工作電路及外部引腳分布圖

                        

三、引腳描述

  • VCC2接5V主電源
  • X1,X2是振蕩源,外接32.768kHz晶振6pf電容一起工作。
  • GND電源地
  • RST是復位/片選線,通過把RST輸入驅動置高電平來啟動所有的數據傳送。當RST為高電平時,所有的數據傳送被初始化,允許對DS1302進行操作。如果在傳送過程中RST置為低電平,則會終止此次數據傳送,I/O引腳變為高阻態。上電運行時,在Vcc>2.0V之前,RST必須保持低電平。
  • I/O為串行數據輸入輸出端(雙向)
  • SCLK為時鐘輸入端。
  •   VCC1為后備電源。外接3V紐扣電池,在主電源關閉的情況下,也能保持時鐘的連續運行。

注:RST、I/O、SCLK視情況需要上拉電阻

  • 寄存器

小時寄存器(85h、84h)的位7用于定義 DS1302是運行于12小時模式還是24小時模式。當為高時,選擇12小時模式。在12小時模式時,位5是AM/PM,當為1時,表示 PM。(24小時寫入11:00--0x84,0x11;

12小時寫入11:00--0x84,0x91;

12小時寫入23:00--0x84,0xb1;)

秒寄存器(81h、80h)的位7定義為時鐘暫停標志(CH)當該位置為1時,時鐘振蕩器停止,DS1302處于低功耗狀態;當該位置為 0時,時鐘開始運行。

控制寄存器(8Fh、8Eh)的位7是寫保護位(WP),其它7位均置為0。在任何的對時鐘和 RAM 的寫操作之前,WP 位必須為0。當 WP 位為1時,寫保護位防止對任一寄存器的寫操作。

(write_1302(0x8e,0x00)-----禁止寫保護,就是關閉寫保護功能

write_1302(0x8e,0x00-----打開寫保護功能 )



位7:必須是1,如果它為0,則不能把數據寫入到 DS1302 中;

位5至位1(A4~A0):指示操作單元的地址;

位6:如果為0,則表示存取日歷時鐘數據,為1表示存取 RAM 數據;

位0:為0表示要進行寫操作,為1表示進行讀操作。

  • 讀寫時序

注:讀一個字節,SCLK=1,SCLK=0

寫一個字節,SCLK=0,SCLK=1

表中CE為文中的RST;

寫入時需要將十進制轉換成BCD碼

#程序參考#


  1. void write_byte(uchar dat)//寫一個字節
  2. {

  3.               ACC=dat;
  4.               RST=1;
  5.               for(a=8;a>0;a--)

  6.               {
  7.                             IO=ACC0;
  8.                             SCLK=0;
  9.                             SCLK=1;
  10.                             ACC=ACC>>1;
  11.               }
  12. }

  13. uchar read_byte()//讀一個字節

  14. {

  15.               RST=1;

  16.               for(a=8;a>0;a--)

  17.               {

  18.                             ACC7=IO;
  19.                             SCLK=1;
  20.                             SCLK=0;
  21.                             ACC=ACC>>1;



  22.               }

  23.               return (ACC);

  24. }

  25. //-----------------------------------------------------------------------------------------------------------------------

  26. void write_1302(uchar add,uchar dat)//向1302芯片寫數據函數,寫入指定地址、數據

  27. {
  28.               RST=0;
  29.               SCLK=0;
  30.               RST=1;
  31.               write_byte(add);  //寫入地址
  32.               write_byte(dat);  //寫入數據
  33.               SCLK=1;         //視情況決定寫不寫
  34.               RST=0;
  35. }

  36. uchar read_1302(uchar add)//向1302芯片讀數據函數



  37. {
  38.               uchar temp;
  39.               RST=0;
  40.               SCLK=0;
  41.               RST=1;
  42.               write_byte(add);    //讀地址
  43.               temp=read_byte();  //讀數據
  44.               SCLK=1;           //視情況決定寫不寫



  45.               RST=0;
  46.               return(temp);
  47. }
復制代碼

完整的Word格式文檔51黑下載地址:
DS1302使用手冊縮減版.docx (328.51 KB, 下載次數: 11)

評分

參與人數 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

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