找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2572|回復: 2
收起左側

單片機+ds1302+仿真程序 用三個按鍵調(diào)時間

[復制鏈接]
回帖獎勵 1 黑幣 回復本帖可獲得 1 黑幣獎勵! 每人限 1 次(中獎概率 10%)
ID:907317 發(fā)表于 2021-4-24 17:42 | 顯示全部樓層 |閱讀模式
仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)
0{)(7}_O833`0EEVNL(~}@9.png

單片機源程序如下:
  1. #include <REGX52.H>
  2. #define uchar unsigned char
  3. #define uint unsigned int
  4. #define data8 P0
  5. sbit rst=P1^0;
  6. sbit sck=P1^1;
  7. sbit sda=P1^2;
  8. sbit rs=P1^3;
  9. sbit rw=P1^4;
  10. sbit e=P1^5;
  11. sbit key1=P2^0;
  12. sbit key2=P2^1;
  13. sbit key3=P2^2;
  14. sbit start= P2^3;
  15. sbit ale=P1^6;
  16. sbit eoc=P1^7;
  17. sbit oe=P2^4;
  18. uchar table1[]="TIME:";
  19. uchar table2[]="DATE:";
  20. uchar table[]="0123456789:-";
  21. uchar code chuzhi[]={0x80,0x34,0x18,0x15,0x04,0x04,0x21,0x00};
  22. uchar code dizhi[]={0x80,0x82,0x84,0x86,0x88,0x8a,0x8c,0x80};
  23. uchar code chushi1602[]={0x38,0x0c,0x01};
  24. uchar chuncu[7]={0};
  25. uchar song,temp1,adc;
  26. void delayms(uint xms)
  27. {
  28.         uchar i;uint j;
  29.         for(j=xms;j>0;j--)
  30.                 for(i=110;i>0;i--);
  31. }
  32. void ad();
  33. void t0()
  34. {
  35.     TMOD = 0x01;
  36.     TH0 = 0x0FE;
  37.     TL0 = 0x0C;
  38.     EA = 1;
  39.     ET0 = 1;
  40.     TR0 = 1;
  41. }
  42. void zl1602(uchar zlduan)
  43. {
  44.         rs=0;
  45.         rw=0;
  46.         data8=zlduan;
  47.         delayms(1);
  48.         e=1;
  49.         delayms(5);
  50.         e=0;

  51. }  
  52. void sj1602(uchar sjduan)
  53. {
  54.         rs=1;
  55.         rw=0;
  56.         data8=table[sjduan];
  57.         delayms(1);
  58.         e=1;
  59.         delayms(5);
  60.         e=0;

  61. }
  62. void sc1602(uchar sjduan)
  63. {
  64.         rs=1;
  65.         rw=0;
  66.         data8=sjduan;
  67.         delayms(1);
  68.         e=1;
  69.         delayms(5);
  70.         e=0;
  71. }
  72. void cs1602()
  73. {
  74.         uchar i;
  75.         for(i=0;i<3;i++)
  76.         {
  77.                 zl1602(chushi1602[i]);        
  78.         }
  79. }


  80. void cs1302()
  81. {
  82.         rst=0;
  83.         sck=0;
  84.         rst=1;
  85. }
  86. void xie1302(uchar temp) //1000 0000
  87. {
  88.         uchar i;
  89.         for(i=8;i>0;i--)
  90.         {
  91.                 sda=temp&0x01;   //0
  92.                 sck=0;
  93.                 sck=1;
  94.                 temp>>=1;           //0100 0000
  95.         }
  96. }
  97. uchar song1302()
  98. {
  99.         uchar i;
  100.         for(i=0;i<8;i++)
  101.         {
  102.                
  103.                 if(sda)
  104.                 {
  105.                         song|=0x80;
  106.                 }
  107.                         sck=1;
  108.                         sck=0;
  109.                          song>>=1;
  110.         }
  111.                 return(song);
  112. }
復制代碼

51hei.png

全部資料51hei下載地址:
ds1302+仿真.zip (53.81 KB, 下載次數(shù): 48)

評分

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

查看全部評分

回復

使用道具 舉報

ID:78901 發(fā)表于 2021-4-24 22:43 | 顯示全部樓層
經(jīng)過仿真,設置超出設置范圍出錯
回復

使用道具 舉報

ID:28992 發(fā)表于 2021-4-25 04:15 | 顯示全部樓層
excellent work, thank you sir!
回復

使用道具 舉報

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

本版積分規(guī)則

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

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

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