AVR DS1302 程序

以下资料由微雪电子整理并发布,未经许可不得转载,否则追究相应责任!

/*********************************************************************
 微 雪 电 子   WaveShare   http://www.waveShare.net             
目    的:   建立DS1302操作库
目标系统:   基于AVR单片机                                                
应用软件:   ICCAVR                                                     
版    本:   Version 1.0                                                      
圆版时间:   2005-06-25
开发人员:   SEE
说    明:   若用于商业用途,请保留此段文字或注明代码来源
  深 圳 市 微 雪 电 子 有 限 公 司 保 留 所 有 的 版 权    
*********************************************************************/

/*01010101010101010101010101010101010101010101010101010101010101010101
----------------------------------------------------------------------
版本更新记录:

----------------------------------------------------------------------
实验内容:
初始化、设置时间、获取时间,使用PA口的LED指示获取的时间数据,观测是否正确写入。
----------------------------------------------------------------------
硬件连接:
* 将PA口的LED指示灯使用短路帽短接。
* DS1302与SMK1632的连接如下:
DS1302: VCC、GND、SCK、SIO、~RST
| | | | |
SMK1632:VCC、GND、PD0、PD1、PD2
----------------------------------------------------------------------
注意事项:
(1)若有加载库函数,请将光盘根目录下的“库函数”下的“ICC_H”文件夹拷到D盘
(2)请详细阅读“使用必读”及相关资料。
----------------------------------------------------------------------
10101010101010101010101010101010101010101010101010101010101010101010*/

#include <iom16v.H>
#include "D:\ICC_H\CmmICC.H"

#define OUT_SCK sbi(DDRD,0)
#define OUT_SIO sbi(DDRD,1)
#define OUT_RST sbi(DDRD,2)

#define IN_SIO cbi(DDRD,1)

#define SET_SCK sbi(PORTD,0)
#define SET_SIO sbi(PORTD,1)
#define SET_RST sbi(PORTD,2)

#define CLR_SCK cbi(PORTD,0)
#define CLR_SIO cbi(PORTD,1)
#define CLR_RST cbi(PORTD,2)

#define GET_SIO gbi(PIND,1)

#include "D:\ICC_H\DS1302.H"

#define DISP_DDR DDRA
#define DISP_PORT PORTA

/*--------------------------------------------------------------------
函数全称:DS1302
函数功能:
注意事项:
提示说明:
输 入:
返 回:
--------------------------------------------------------------------*/
void main()
{
uint8 time[3];

DISP_DDR = 0XFF;
OUT_SCK;
OUT_SIO;
OUT_RST;

DS1302_init();
DS1302_setTime(10,20,30); //set time: 10:20:30
while(1)
{
DS1302_getTime(time);
DISP_PORT = time[0];
}
}


 相关AVR资料说明

可作为如下AVR的参考资料: ATtiny13 ATtiny24 ATtiny44 ATtiny84 ATtiny2313 ATtiny26 ATmega48 ATmega88 ATmega168 ATmega8 ATmega16 ATmega32 ATmega64 ATmega128 ATmega162 ATmega169 ATmega169P ATmega8515 ATmega8535

 相关AVR型号资料

ATtiny13 ATtiny24 ATtiny44 ATtiny84 ATtiny26 ATtiny2313
ATmega48 ATmega88 ATmega168 ATmega8 ATmega16 ATmega32
ATmega64 ATmega128 ATmega162 ATmega169 ATmega8515 ATmega8535

AVR DS1302 程序

——