久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 12985|回復: 30
收起左側(cè)

DS1302數(shù)碼管顯示時間,帶Protues仿真 程序 適合初學者

  [復制鏈接]
ID:103824 發(fā)表于 2016-1-19 21:49 | 顯示全部樓層 |閱讀模式
DS1302數(shù)碼管顯示時間,初學者適用
1.png 0.png

源程序和仿真文件下載: DS1302數(shù)碼管萬年歷.zip (74.07 KB, 下載次數(shù): 360)

部分源碼預覽:
  1. #include"DS1302.h"
  2. uchar code READ_RTC_ADDR[7] = {0x81, 0x83, 0x85, 0x87, 0x89, 0x8b, 0x8d};
  3. uchar code WRITE_RTC_ADDR[7] = {0x80, 0x82, 0x84, 0x86, 0x88, 0x8a, 0x8c};
  4. uchar  TIME[7]={0, 0, 0x12, 0x01, 0x01, 0x02, 0x13};
  5. //---DS1302時鐘初始化2013年1月1日星期二12點00分00秒。---//
  6. //---存儲順序是秒分時日月周年,存儲格式是用BCD碼---//
  7. /*******************************************************************************
  8. * 函 數(shù) 名         : Ds1302Write
  9. * 函數(shù)功能                   : 向DS1302命令(地址+數(shù)據(jù))
  10. * 輸    入         : addr,dat
  11. * 輸    出         : 無
  12. *******************************************************************************/

  13. void Ds1302Write(uchar addr, uchar dat)
  14. {
  15.         uchar n;
  16.          RST=0;
  17.         _nop_();

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

  22.         for (n=0; n<8; n++)//開始傳送八位地址命令
  23.         {
  24.                 DSIO = addr & 0x01;//數(shù)據(jù)從低位開始傳送
  25.                 addr >>= 1;
  26.                 SCLK = 1;//數(shù)據(jù)在上升沿時,DS1302讀取數(shù)據(jù)
  27.                 _nop_();
  28.                 SCLK = 0;
  29.                 _nop_();
  30.         }
  31.         for (n=0; n<8; n++)//寫入8位數(shù)據(jù)
  32.         {
  33.                 DSIO = dat & 0x01;
  34.                 dat >>= 1;
  35.                 SCLK = 1;//數(shù)據(jù)在上升沿時,DS1302讀取數(shù)據(jù)
  36.                 _nop_();
  37.                 SCLK = 0;
  38.                 _nop_();       
  39.         }       
  40.                  
  41.         RST = 0;//傳送數(shù)據(jù)結(jié)束
  42.         _nop_();
  43. }

  44. /*******************************************************************************
  45. * 函 數(shù) 名         : Ds1302Read
  46. * 函數(shù)功能                   : 讀取一個地址的數(shù)據(jù)
  47. * 輸    入         : addr
  48. * 輸    出         : dat
  49. *******************************************************************************/

  50. uchar Ds1302Read(uchar addr)
  51. {
  52.         uchar n,dat,dat1;
  53.         RST = 0;
  54.         _nop_();

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

  59.         for(n=0; n<8; n++)//開始傳送八位地址命令
  60.         {
  61.                 DSIO = addr & 0x01;//數(shù)據(jù)從低位開始傳送
  62.                 addr >>= 1;
  63.                 SCLK = 1;//數(shù)據(jù)在上升沿時,DS1302讀取數(shù)據(jù)
  64.                 _nop_();
  65.                 SCLK = 0;//DS1302下降沿時,放置數(shù)據(jù)
  66.                 _nop_();
  67.         }
  68.         _nop_();
  69.         for(n=0; n<8; n++)//讀取8位數(shù)據(jù)
  70.         {
  71.                 dat1 = DSIO;//從最低位開始接收
  72.                 dat = (dat>>1) | (dat1<<7);
  73.                 SCLK = 1;
  74.                 _nop_();
  75.                 SCLK = 0;//DS1302下降沿時,放置數(shù)據(jù)
  76.                 _nop_();
  77.         }

  78.         RST = 0;
  79.         _nop_();        //以下為DS1302復位的穩(wěn)定時間,必須的。
  80.         SCLK = 1;
  81.         _nop_();
  82.         DSIO = 0;
  83.         _nop_();
  84.         DSIO = 1;
  85.         _nop_();
  86.         return (dat>>4)*10+(dat&0x0f);       
  87. }

  88. /*******************************************************************************
  89. * 函 數(shù) 名         : Ds1302Init
  90. * 函數(shù)功能                   : 初始化DS1302.
  91. * 輸    入         : 無
  92. * 輸    出         : 無
  93. *******************************************************************************/

  94. void Ds1302Init()
  95. {
  96.         uchar n;
  97.         Ds1302Write(0x8E,0X00);                 //禁止寫保護,就是關(guān)閉寫保護功能
  98.         for (n=0; n<7; n++)//寫入7個字節(jié)的時鐘信號:分秒時日月周年
  99.         {
  100.                 Ds1302Write(WRITE_RTC_ADDR[n],TIME[n]);       
  101.         }
  102.         Ds1302Write(0x8E,0x80);                 //打開寫保護功能
  103. }

  104. /*******************************************************************************
  105. * 函 數(shù) 名         : Ds1302ReadTime
  106. * 函數(shù)功能                   : 讀取時鐘信息
  107. * 輸    入         : 無
  108. * 輸    出         : 無
  109. *******************************************************************************/

  110. void Ds1302ReadTime()
  111. {
  112.         uchar n;
  113.         for (n=0; n<7; n++)//讀取7個字節(jié)的時鐘信號:分秒時日月周年
  114.         {
  115.                 TIME[n] = Ds1302Read(READ_RTC_ADDR[n]);
  116.         }
  117.                
  118. }
復制代碼


評分

參與人數(shù) 2黑幣 +53 收起 理由
下一頁面 + 3 很給力!
admin + 50 共享資料的黑幣獎勵!

查看全部評分

回復

使用道具 舉報

ID:103832 發(fā)表于 2016-1-19 22:23 | 顯示全部樓層
下來看看,51黑有你更精彩!
回復

使用道具 舉報

ID:103832 發(fā)表于 2016-1-19 22:24 | 顯示全部樓層
東西不錯哦!
回復

使用道具 舉報

ID:110866 發(fā)表于 2016-4-12 18:24 | 顯示全部樓層
為什么我的不顯示電腦時間
回復

使用道具 舉報

ID:115477 發(fā)表于 2016-4-20 16:33 | 顯示全部樓層
想下載,沒有黑幣啊
回復

使用道具 舉報

ID:125986 發(fā)表于 2016-6-9 16:02 | 顯示全部樓層
有錯誤是怎么回事
回復

使用道具 舉報

ID:110835 發(fā)表于 2016-6-11 11:18 | 顯示全部樓層
論壇里誰有51單片機DS3231時鐘595鎖存的數(shù)碼管顯示萬年歷程序啊
回復

使用道具 舉報

ID:126485 發(fā)表于 2016-6-13 23:06 | 顯示全部樓層
感謝樓主分享謝謝
回復

使用道具 舉報

ID:122366 發(fā)表于 2016-9-25 11:08 | 顯示全部樓層
下來看看
回復

使用道具 舉報

ID:140489 發(fā)表于 2016-9-26 11:47 | 顯示全部樓層
沒有黑幣,下不了
回復

使用道具 舉報

ID:155842 發(fā)表于 2016-12-21 12:28 | 顯示全部樓層
課設需要  不錯不錯  感謝樓主
回復

使用道具 舉報

ID:75057 發(fā)表于 2016-12-27 10:29 | 顯示全部樓層
非常感謝最近干好用到
回復

使用道具 舉報

ID:95090 發(fā)表于 2017-1-7 15:30 | 顯示全部樓層
東西不錯哦
回復

使用道具 舉報

ID:160661 發(fā)表于 2017-1-7 21:25 | 顯示全部樓層
茜柑工霜期地
回復

使用道具 舉報

ID:119290 發(fā)表于 2017-4-13 10:04 | 顯示全部樓層
下下來再說,應該有用!
回復

使用道具 舉報

ID:175885 發(fā)表于 2017-4-19 08:26 | 顯示全部樓層
好貼要頂
回復

使用道具 舉報

ID:171060 發(fā)表于 2017-11-25 00:53 | 顯示全部樓層
感謝分享
回復

使用道具 舉報

ID:103824 發(fā)表于 2018-1-21 23:53 | 顯示全部樓層
櫻淺依 發(fā)表于 2016-6-9 16:02
**** 作者被禁止或刪除 內(nèi)容自動屏蔽 ****

很久沒看了,哪里有錯誤
回復

使用道具 舉報

ID:291815 發(fā)表于 2018-6-14 16:11 | 顯示全部樓層
感謝分享
回復

使用道具 舉報

ID:352518 發(fā)表于 2018-6-15 15:42 來自手機 | 顯示全部樓層
哇  賊好用
回復

使用道具 舉報

ID:352645 發(fā)表于 2018-6-15 18:37 | 顯示全部樓層
感謝分享,學習,在看源碼
回復

使用道具 舉報

ID:353236 發(fā)表于 2018-6-17 14:35 | 顯示全部樓層
感謝大佬分享
回復

使用道具 舉報

ID:269609 發(fā)表于 2018-6-22 23:19 | 顯示全部樓層
打開可以 直接運行嗎
回復

使用道具 舉報

ID:359102 發(fā)表于 2018-6-29 10:15 | 顯示全部樓層
謝謝奉獻
回復

使用道具 舉報

ID:362254 發(fā)表于 2018-6-30 14:02 | 顯示全部樓層
如何獲得黑幣順便感謝樓主
回復

使用道具 舉報

ID:233756 發(fā)表于 2018-7-10 15:27 | 顯示全部樓層
我自己寫的程序無法設置時間,但是可以讀取時間,所以用了你的寫數(shù)據(jù),把相關(guān)定義修改了,但在我的實物上也無法設置時間
回復

使用道具 舉報

ID:370269 發(fā)表于 2018-7-12 15:46 | 顯示全部樓層
數(shù)電資料
回復

使用道具 舉報

ID:539741 發(fā)表于 2019-9-23 20:23 | 顯示全部樓層
只能顯示時間,無法顯示日期  尷尬  要下載的人可要注意了
回復

使用道具 舉報

ID:103824 發(fā)表于 2020-4-18 23:54 | 顯示全部樓層
spendell 發(fā)表于 2019-9-23 20:23
只能顯示時間,無法顯示日期  尷尬  要下載的人可要注意了

查看一下time數(shù)組,time數(shù)組定義了7位,分別是年月日周時分秒,我只是在顯示的時候只顯示了時分秒,想要年月日,自行顯示time數(shù)組剩下的數(shù)據(jù)即可
回復

使用道具 舉報

ID:897047 發(fā)表于 2021-5-31 14:55 | 顯示全部樓層
求51單片機DS3231時鐘595鎖存的數(shù)碼管顯示萬年歷工程
回復

使用道具 舉報

ID:865733 發(fā)表于 2021-6-1 11:30 | 顯示全部樓層
求基于單片機的通用智能儀表設計
回復

使用道具 舉報

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

本版積分規(guī)則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 欧美一区二区三区视频 | 91中文字幕在线观看 | 一区二区三区四区不卡 | 午夜在线小视频 | 成人午夜视频在线观看 | 亚洲一区二区久久久 | 九九热免费视频在线观看 | 在线中文视频 | 一级a爱片性色毛片免费 | 国产成人在线视频 | 97av视频在线| 欧美成人精品 | 日本不卡一区二区三区 | 久久久在线视频 | 欧美亚洲激情 | 久久久婷 | 毛片视频网址 | 亚洲精品一区二区二区 | 视频一区 亚洲 | 美女日批免费视频 | 久久久久久久久久久久一区二区 | 天堂一区二区三区 | 日本精品免费在线观看 | 国产日韩精品一区 | 精品在线一区二区三区 | 一区二区三区在线观看视频 | 成人在线观看欧美 | av影音资源| 欧美精品一区在线 | 亚洲乱码国产乱码精品精的特点 | 午夜电影福利 | 国产欧美性成人精品午夜 | 日韩精品1区2区3区 成人黄页在线观看 | 日韩在线观看网站 | japan21xxxxhd美女| 日韩电影免费在线观看中文字幕 | 国产一区在线免费观看 | 亚洲成人精品在线 | 国产欧美一区二区三区在线看 | 日韩精品视频网 | 亚洲欧美日韩精品久久亚洲区 |