|
Altium Designer畫的DS1302時鐘模塊原理圖和PCB圖如下:(51hei附件中可下載工程文件)
0.png (33.08 KB, 下載次數(shù): 66)
下載附件
2018-2-24 02:34 上傳
0.png (51.57 KB, 下載次數(shù): 69)
下載附件
2018-2-24 02:34 上傳
0.png (53.5 KB, 下載次數(shù): 71)
下載附件
2018-2-24 02:35 上傳
芯片簡介: 介紹美國DALLAS 公司推出的具有涓細(xì)電流充電能力的低功耗實時時鐘電路DS1302 的結(jié)構(gòu)、工作原理及其在實時顯示時間中的應(yīng)用。它可以對年、月、日、周、日、時、分、秒進(jìn)行計時,且具有閏年補償?shù)榷喾N功能。
image003.png (451.48 KB, 下載次數(shù): 70)
下載附件
2018-2-24 00:55 上傳
image014.jpg (35.37 KB, 下載次數(shù): 73)
下載附件
2018-2-24 00:55 上傳
image008.jpg (91.94 KB, 下載次數(shù): 68)
下載附件
2018-2-24 00:55 上傳
image010.jpg (31.76 KB, 下載次數(shù): 61)
下載附件
2018-2-24 00:55 上傳
單片機源程序如下:
- /********************************************************
- 實現(xiàn)功能:DS1302測試程序
- 使用芯片:AT89S52
- 晶振:11.0592MHZ
- 編譯環(huán)境:Keil
- 作者:zhangxinchunleo
- 【聲明】此程序僅用于學(xué)習(xí)與參考,引用請注明版權(quán)和作者信息!
- ********************************************************/
- /*********************************包含頭文件********************************/
- #include "reg52.h"
- #include <intrins.h>
- /*********************************端口定義**********************************/
- sbit DS1302_CLK = P1^0;
- sbit DS1302_IO = P1^1;
- sbit DS1302_RST = P1^2;
- /*******************************共陽LED段碼表*******************************/
- unsigned char code tab[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
- unsigned char wei[4]={0XEf,0XDf,0XBf,0X7f}; //位的控制端
- /******************************定義全局變量*********************************/
- unsigned char second,minute,hour,week,day,month,year; //秒、分、時、星期、日、月、年
- unsigned char time[]={0x06,0x03,0x14,0x03,0x12,0x30,0x00}; //初始時間數(shù)組
- /****************************************************************************
- 函數(shù)功能:數(shù)碼管掃描延時子程序
- 入口參數(shù):
- 出口參數(shù):
- ****************************************************************************/
- void delay1(void)
- {
- int k;
- for(k=0;k<400;k++);
- }
- /****************************************************************************
- 函數(shù)功能:數(shù)碼管顯示子程序
- 入口參數(shù):k
- 出口參數(shù):
- ****************************************************************************/
- void display(void)
- {
- P2=0XFF;
- P0=tab[minute/16];
- P2=wei[0];
- delay1();
- P2=0XFF;
- P0=tab[minute%16];
- P2=wei[1];
- delay1();
- P2=0XFF;
- P0=tab[second/16];
- P2=wei[2];
- delay1();
- P2=0XFF;
- P0=tab[second%16];
- P2=wei[3];
- delay1();
- P2=0XFF;
- }
- /*****************************************************************************
- 函數(shù)功能:向DS1302送一字節(jié)數(shù)據(jù)子程序
- 入口參數(shù):
- 出口參數(shù):
- *****************************************************************************/
- void InputByte(unsigned char byte1)
- {
- char i;
- for(i=8;i>0;i--)
- {
- DS1302_IO=(bit)(byte1&0x01);
- DS1302_CLK=1;
- _nop_();
- DS1302_CLK=0;
- byte1>>=1;
- }
- return;
- }
- /*****************************************************************************
- 函數(shù)功能:讀DS1302一個字節(jié)子程序
- 入口參數(shù):
- 出口參數(shù):
- *****************************************************************************/
- unsigned char outputbyte(void)
- {
- unsigned char i;
- unsigned ucdat=0;
- for(i=8;i>0;i--)
- {
- DS1302_IO=1;
- ucdat>>=1;
- if(DS1302_IO)ucdat|=0x80;
- DS1302_CLK=1;
- _nop_();
- DS1302_CLK=0;
- }
- return(ucdat);
- }
- /*****************************************************************************
- 函數(shù)功能:向DS1302某地址寫一字節(jié)數(shù)據(jù)子程序
- 入口參數(shù):addr,TDat
- 出口參數(shù):
- *****************************************************************************/
- void write_ds1302(unsigned char addr,unsigned char TDat)
- {
- DS1302_RST=0;
- _nop_();
- DS1302_CLK=0;
- _nop_();
- DS1302_RST=1;
- InputByte(addr);
- _nop_();
- InputByte(TDat);
- DS1302_CLK=1;
- _nop_();
- DS1302_RST=0;
- }
- /*****************************************************************************
- 函數(shù)功能:讀DS1302地址子程序
- 入口參數(shù):add
- 出口參數(shù):timedata
- *****************************************************************************/
- unsigned char read_ds1302(unsigned char addr)
- {
- unsigned char timedata;
- DS1302_RST=0;
- _nop_();
- DS1302_CLK=0;
- _nop_();
- DS1302_RST=1;
- InputByte(addr);
- timedata=OutputByte();
- DS1302_CLK=1;
- _nop_();
- DS1302_RST=0;
- return(timedata);
- }
- /*****************************************************************************
- 函數(shù)功能:初始化DS1302子程序
- 入口參數(shù):time[](全局變量)
- 出口參數(shù):
- *****************************************************************************/
- void initial_ds1302()
- {
- write_ds1302(0x8e,0x00); //寫保護(hù)寄存器,在對時鐘或RAM寫前WP一定要為0
- write_ds1302(0x8c,time[0]); //年
- write_ds1302(0x88,time[1]); //月
- write_ds1302(0x86,time[2]); //日
- write_ds1302(0x8A,time[3]); //星期
- write_ds1302(0x84,time[4]); //時
- write_ds1302(0x82,time[5]); //分
- write_ds1302(0x80,time[6]); //秒
- write_ds1302(0x8e,0x80); //寫保護(hù)寄存器
- }
- /*****************************************************************************
- 函數(shù)功能:讀DS1302時間子程序
- 入口參數(shù):
- 出口參數(shù):全局變量(second,minute,hour,week,day,month,year)
- *****************************************************************************/
- void read_time()
- {
- second=read_ds1302(0x81); //秒寄存器
- minute=read_ds1302(0x83); //分
- hour=read_ds1302(0x85); //時
- week=read_ds1302(0x8B); //星期
- day=read_ds1302(0x87); //日
- month=read_ds1302(0x89); //月
- year=read_ds1302(0x8d); //年
- }
- /*****************************************************************************
- 函數(shù)功能:主程序
- 入口參數(shù):
- 出口參數(shù):
- *****************************************************************************/
- void main(void)
- {
- initial_ds1302(); //初始化DS1302
- while(1)
- {
- read_time(); //讀取時間
- display(); //顯示時間
- }
- }
復(fù)制代碼
簡要說明: 一、尺寸:全長26mm寬23mm高10mm 二、主芯片:DS1302 三、工作電壓:直流5V 四、特點:電路簡單實用,接線簡單,地面有3V電池座,使用32.768khz晶振。
適用場合:單片機學(xué)習(xí)、電子競賽、產(chǎn)品開發(fā)、畢業(yè)設(shè)計。。。
所有資料51hei提供下載:
|
-
-
DS1302時鐘模塊DXP資料.rar
2018-2-24 00:56 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
80.82 KB, 下載次數(shù): 112, 下載積分: 黑幣 -5
-
-
DS1302測試程序.rar
2018-2-24 00:56 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
209.4 KB, 下載次數(shù): 71, 下載積分: 黑幣 -5
-
-
DS1302時鐘模塊產(chǎn)品使用手冊.rar
2018-2-24 00:56 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
3.23 MB, 下載次數(shù): 37, 下載積分: 黑幣 -5
-
-
DS1302時鐘模塊相關(guān)資料.rar
2018-2-24 00:56 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
1.69 MB, 下載次數(shù): 49, 下載積分: 黑幣 -5
-
-
DS1302時鐘模塊原理圖.doc
2018-2-24 00:56 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
26 KB, 下載次數(shù): 52, 下載積分: 黑幣 -5
|