资源简介
万年历支持温度农历24节气显示,内含源程序及Proteus仿真文件。
代码片段和文件信息
#include
#include
#include
#include
#include “lcd.h“
#define uchar unsigned char
sbit DS1302_CLK = P2^6; //实时时钟时钟线引脚
sbit DS1302_IO = P2^5; //实时时钟数据线引脚
sbit DS1302_RST = P2^7; //实时时钟复位线引脚
uchar read_1302(void) //从1302中读取一个字节
{
uchar idata_1302;
for(i=0;i<8;i++)
{
data_1302>>=1;
if(DS1302_IO)
{
data_1302|=0x80;
}
DS1302_CLK=1;
DS1302_CLK=0;
}
return (data_1302);
}
void write_1302(uchar data_1302)//向1302中写入一个字节
{
uchar i;
for(i=0;i<8;i++)
{
DS1302_IO=(bit)(data_1302&0x01);
DS1302_CLK=1;
DS1302_CLK=0;
data_1302>>=1;
}
}
//向1302的某一地址中写入一个字节的数据
void write_all_1302(uchar addruchar data_1302)
{
DS1302_RST = 0;
DS1302_CLK = 0;
DS1302_RST = 1;
write_1302(addr);
write_1302(data_1302);
DS1302_CLK = 1;
DS1302_RST = 0;
}
//从1302的某一地址中读取一个字节的数据
uchar read_all_1302(uchar addr)
{
uchar data_1302;
DS1302_RST = 0;
DS1302_CLK = 0;
DS1302_RST = 1;
write_1302(addr|0x01);
data_1302 = read_1302();
DS1302_CLK = 1;
DS1302_RST = 0;
return (data_1302);
}
void DS1302_SetProtect(bit flag) //是否写保护
{
if(flag)
write_all_1302(0x8E0x80); //禁止写
else
write_all_1302(0x8E0x00); //允许写
}
//停止1302时钟
void stop_1302(void)
{
uchar i;
i = read_all_1302(DS1302_SECOND);
i |= 0x80;
write_all_1302(DS1302_SECONDi);
}
//启动1302时钟
void start_1302(void)
{
uchar i;
i = read_all_1302(DS1302_SECOND);
i &= 0x7f;
write_all_1302(DS1302_SECONDi);
}
//读出1302的时间序列
void read_serial(uchar *j)
{
uchar i;
DS1302_RST = 0;
DS1302_CLK = 0;
DS1302_RST = 1;
write_1302(0xbf);//0xbf为连续读出的命令代码
for(i=0;i<8;i++)
{
*(j+i) = read_1302();
nop();
}
DS1302_CLK = 1;
DS1302_RST = 0;
}
//写入1302的时间序列
void write_date_time(uchar *j)
{
uchar i;
DS1302_RST = 0;
DS1302_CLK = 0;
DS1302_RST = 1;
write_1302(0xbe);//0xbe为连续写入的命令代码
for(i=0;i<8;i++)
{
write_1302(*(j+i));
}
DS1302_CLK = 1;
DS1302_RST = 0;
}
void init1302()
{
DS1302_SetProtect(0);
// write_all_1302(0x8c0x00);
// write_all_1302(0x880x05);
// write_all_1302(0x860x25);
// write_all_1302(0x8a0x04);
// write_all_1302(0x840x00);
// write_all_1302(0x820x59);
// write_all_1302(0x800x55);
DS1302_SetProtect(1);
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 125872 2008-07-09 16:58 wangnianli\wnl2.DSN
文件 39026 2008-06-19 10:07 wangnianli\wnl.hex
目录 0 2008-07-09 16:50 wangnianli
文件 2450 2008-07-10 08:38 wangnianli\程序\wnl.plg
文件 1291 2008-06-19 10:03 wangnianli\程序\wnl_main.c
文件 2506 2008-07-10 08:29 wangnianli\程序\ds1302.c
文件 6005 2008-05-23 15:01 wangnianli\程序\LCD.c
文件 2143 2008-06-19 10:05 wangnianli\程序\ds18b20.c
文件 2832 2008-06-19 10:05 wangnianli\程序\lcdshow.c
文件 565 2008-05-24 13:50 wangnianli\程序\ds1302.h
文件 297 2008-05-22 14:34 wangnianli\程序\ds18b20.h
文件 384 2008-06-19 10:07 wangnianli\程序\key.h
文件 590 2008-05-23 15:10 wangnianli\程序\lcd.h
文件 347 2008-06-19 10:06 wangnianli\程序\lcdshow.h
文件 11560 2008-07-10 08:29 wangnianli\程序\key.c
文件 826 2008-05-23 16:07 wangnianli\程序\STARTUP.obj
文件 173 2008-07-10 08:36 wangnianli\程序\wnl.lnp
文件 91101 2008-07-10 08:36 wangnianli\程序\wnl.M51
文件 39283 2008-07-10 08:36 wangnianli\程序\wnl.hex
文件 5662 2008-06-19 09:07 wangnianli\程序\HzCode.h
文件 241 2008-06-19 09:23 wangnianli\程序\ZHnongl.h
文件 17652 2008-06-18 21:37 wangnianli\程序\NLcode.h
文件 20332 2008-06-19 10:07 wangnianli\程序\ZHnongl.OBJ
文件 18612 2008-06-19 10:07 wangnianli\程序\nongli.OBJ
文件 6254 2008-07-10 08:31 wangnianli\程序\lcdshow.LST
文件 11394 2008-07-10 08:31 wangnianli\程序\lcdshow.OBJ
文件 4957 2008-07-10 08:31 wangnianli\程序\ds18b20.LST
文件 6671 2008-07-10 08:31 wangnianli\程序\ds18b20.OBJ
文件 6110 2008-07-10 08:31 wangnianli\程序\ds1302.LST
文件 9011 2008-07-10 08:31 wangnianli\程序\ds1302.OBJ
............此处省略16个文件信息
- 上一篇:围棋棋局识别
- 下一篇:通信电子线路实验指导书
相关资源
- 基于51单片机的NRF24L01双向通信
- 51单片机结合ADC0808电压采集
- 51单片机低频数字相位测量仪
- 基于51单片机的智能交通灯课程设计
- 51单片机两轮平衡小车
- [毕业设计]基于51单片机的太阳能热水
- STC 15XX 单片机Altium Designer元件库封装
- 51单片机编写的基于串口控制的多路舵
- 基于nRF905的公交车自动报站系统
- 基于单片机的红外遥控开关的设计
- 基于89C51单片机开发的数字音乐盒 源
- 51单片机课程设计万年历
- 51单片机课程设计万年历源码和报告
- AVR单片机入门与速成攻略源码.rar
- 单片机通过SPI外扩FLASH程序代码
- 基于PID及单片机控制的智能恒温箱设
- 51单片机对变频器调速系统的控制设计
- 单片机课程设计——电子琴论文及p
- AVRUSB单片机编程与上位机编程教程重
- 信号发生器单片机信号发生器单片机
- 基于MSP430单片机的SD卡读写.pdf
- 51单片机开发板原理图及PCB版图.rar
- 网上买的单片机开发板原理图,非常
- 51常用寄存器.doc
- ATmega8 TQFP32 TQFP32 PCB封装
- AT89C51数字时钟
- 液晶显示广告牌的设计
- zw_DAC0832在proteus中的仿真.zip
- PSoC单片机读秒带LED灯全零闪烁功能时
- 寿星天文历 V5.10 Plus 单文件 (解味石
评论
共有 条评论