1 / 43
文档名称:

12013136.[].基于51单片机的1302时钟芯片C程序.doc

格式:doc   页数:43
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

12013136.[].基于51单片机的1302时钟芯片C程序.doc

上传人:wiztre 2013/11/6 文件大小:0 KB

下载得到文件列表

12013136.[].基于51单片机的1302时钟芯片C程序.doc

文档介绍

文档介绍:/*============================================================
使用1602液晶显示DS1302+c51时钟
[注:AT89C51使用12M晶振]
=============================================================*/
#include <>
#include <>
#include < >
#define delayNOP(); {_nop_() ;_nop_() ;_nop_() ;_nop_() ;} ;
#define LCM_RW P2_5 //定义引脚
#define LCM_RS P2_4
#define LCM_E P2_6
#define LCM_Data P0
#define Busy 0x80 //用于检测LCM状态字中的Busy标识
#define uchar unsigned char
#define uint unsigned int
sbit T_CLK=P3^5;
sbit T_IO =P3^6;
sbit T_RST=P3^7;
sbit ACC0=ACC^0;
sbit ACC7=ACC^7;
sbit LED=P1^6; //背光灯输出(因本实验板无此功能所以此项功能无效)
sbit system=P2^0; //模式
sbit TimerUp=P2^2; //时间减
sbit TimerDown=P2^1; //时间加
sbit k1=P2^3;
sbit k2=P2^7;
sbit k3=P3^0;
sbit k4=P3^1;
sbit D1=P3^2;
sbit D2=P3^3;
sbit D3=P3^4;
sbit Speaker=P1^5; //蜂鸣器
sbit ds18b20=P1^7;
/*************ds1302函数声明************/
void Set(uchar,uchar); //根据选择调整相应项目
void RTInputByte(uchar); //输入 1Byte */
uchar RTOutputByte(void); //输出 1Byte */
void W1302(uchar, uchar); //向DS1302写入一个字节
uchar R1302(uchar); //从DS1302读出一个字节
void Set1302(uchar * ); //设置时间
void KeySound(); //按键音
void ClockSound(); //闹铃蜂鸣声
/**************温度函数声明************/
void display_tem();
uint read_tmp();
void tmpchange();
void tmpwrite(uchar dat);
uchar tmpread_byte();
bit tmpread_bit();
void dsreset();
void delay2(uint z);
//void time_LCM(uchar);
void keyscan();
uchar id,msec,model,LedTime,flag,d,num1,num2,num3,c1,c2,c3,flag1;
bit a,b;

uchar inittime[7]={0x00,0x00,0x12,0x20,0x07,0x02,0x10}; //初始化后设置为:2010年7月20日星期2 12点0分0秒
void Out_LCM(void); //显示屏幕
void model0(void); //显示输出
void model1(void);
void model2(void);
void model3(void);
void model4(void);
void model5(void);
void model6(void);
void mode1();
void mode2();
void mode3();
void mode4();
void mode5();
void mode6();
void mode7();
void mode8();

void id_case1_key(); //项目调整
void Modset(); //模式键处理
void WriteDataLCM(uchar WDLCM);
void mandLCM(uchar WCLCM,BuysC