📄 ds1302.h
字号:
/*-----------------------------------------------------------
*文 件 名:ds1302.h
*功能描述:
*作 者:
*----------------------------------------------------------*/
//--------------------------------------------------------
//INCLUDES
//--------------------------------------------------------
#include <c8051f020.h>
#include <intrins.h>
//--------------------------------------------------------
//DEFINES
//--------------------------------------------------------
#ifndef BIT0
#define BIT0 0x01
#define BIT1 0x02
#define BIT2 0x04
#define BIT3 0x08
#define BIT4 0x10
#define BIT5 0x20
#define BIT6 0x40
#define BIT7 0x80
#endif
//键值预定义
#define KEY_UP 0x01
#define KEY_DOWN 0x02
#define KEY_LEFT 0x03
#define KEY_RIGHT 0x04
#define KEY_SURE 0x05
#define KEY_UP_DOWN 0x06
sbit DS_RST=P3^1; //实时时钟芯片DS1302的RST
sbit DS_CLK=P3^2; //实时时钟芯片DS1302的CLK
sbit DS_DAT=P3^3; //实时时钟芯片DS1302的DATA
sbit DATA_AB = P2^0; //对应电路图中的CON1
sbit HC164_CLR = P2^1; //对应电路图中的CON2
sbit HC164_CLK = P2^2; //对应电路图中的CON3
//--------------------------------------------------------
//Global CONSTANTS
//--------------------------------------------------------
unsigned char xdata time[7];
//time[0]:年
//time[1]:day(01-07)
//time[2]:月
//time[3]:天(1-29/30/31)
//time[4]:时
//time[5]:分
//time[6]:秒 //以BCD码的格式存放在里面
//unsigned char code LEDtab[11]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff}; //0-9,全灭
unsigned char code LEDtab[11]={0x24,0xaf,0xe0,0xa2,0x2b,0x32,0x30,0xa7,0x20,0x22,0xff}; //,焊反了的库 0-9,全灭
unsigned char xdata modify_timeFlag =0; //是否相应按键的标志位。
//函数modify_time()中
unsigned char xdata temp_time[6]; //显示的时分秒的信息
//--------------------------------------------------------
//Function PROTOTYPES
//--------------------------------------------------------
void init_ds1302();
void reset_ds1302();
void write_byte(unsigned char byte);
unsigned char read_byte();
void display_string(unsigned char xdata *str,unsigned char strlen);
void SendLEDbyte(unsigned char byte);
void modify_time();
void modify_LED_Num();
unsigned char key_analyse();
void read_time();
void write_time();
void desplay_time();
//----------------------------------------------------------------
//extern Function
//-----------------------------------------------------------------
extern void delayms(unsigned int);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -