资源简介
通过设置好的时间,自动运行程序,并实时显示年份、月份、时间,还实行广告的流动……
代码片段和文件信息
/*****************************************************
4字LED点阵屏+DS1302万年历电子钟 C 程序【改模对换/反显】
******************************************************
声明:
本程序中DS1302读写部分是直接引用网上网友提供的共享程序,
本程序供大家学习之用,用勿用于商业用途。尊重作者版权。
编写:邓椿薪
时间:2006年6月9日 晚
邮箱:love2151@xinhuanet.com
网址:www.89s51diy.com
*******************************************************
DS1302 接线图
Vcc2 CLK I/O /RST
| | | |
-------------------
| 8 7 6 5 |
| DS1302 |
| |
| 1 2 3 4 |
-------------------
| | | |
VCC1 GND
1 脚接+5V 2,3脚32768HZ晶振 4脚接地 5脚接S51的P02 6脚接S51的P01 7接S51的P00
8脚接后备电源,可以接老计算机主板上的3.6V电池,也可以通过二级管隔离接一个大容量电解电容
电压在2.5V以上即可维持
595连级输出数据,138行驱动。*/
#include
#define uchar unsigned char
#define uint unsigned int
#define light 3 //定义亮度
uchar code hanzi[]; //汉字字模
uchar code timer[12][16]; //0~9数字
uchar code sw[]; //138驱动数据
void Show_word(); //待机显示按三秒间隔分别显示年、月日、星期、时分秒。
void Show_pass(); //不显示一个字
void Send_data(unsigned char *d); /*串口发送一行*/
/******************************************/
sbit resget=P0^2; //时钟复位
sbit key_moda=P0^3; //模式转换
sbit key_up=P0^4; //时钟加
sbit key_Down=P0^5; //时钟减
sbit T_CLK=P2^3; //DS1302引脚连接
sbit T_IO =P2^2;
sbit T_RST=P2^1;
sbit ACC0=ACC^0; //1bit数据存储位
sbit ACC7=ACC^7;
sbit STR=P1^7; //锁存
sbit CLK=P3^1; //时钟
sbit Data= P3^0; //数据
sbit E=P1^4;
uchar starts_time[7]={0x000x100x220x110x060x070x06}; //初始化后设置
uchar MoveSpeedFlickerlineSecCentHourYearMonthDayWeek; //时间变量
uchar abfhmsecidx; //标志计数器 a为自动转换显示时间,b为手动与自动标志
uint zimuo; //字模计数器
uchar BUFF[10]; //缓存
void RTInputByte(uchar); /* 输入 1Byte */
uchar RTOutputByte(void); /* 输出 1Byte */
void W1302(uchar uchar); // 向DS1302写入一个字节
uchar R1302(uchar); // 从DS1302读出一个字节
void Set1302(uchar *); // 写DS1302时间
void du1302(); // 读时间
void DelayMs(void); // 延时
void Set(ucharuchar ); // 变量调整
void in_data(); // 调整移动数据
void rxd_data(); // 串口发送移动数据
/*主函数*/
void main()
{
Move=0;
zimuo=0;
TMOD=0x01; //16位定时
TH0=0x3c; //25ms晶振为24M
TL0=0xb0;
EA=1;
TR0=1;
ET0=1;
SCON=0; //初始化串口为工作方式0(同步通信方式,TxD输出同步脉冲)
while(zimuo<512)
{
while(Move<16) //数据移位。
{
for(Speed=0;Speed<10;Speed++) //移动速度
{
for(line=0;line<16;line++)
{
in_data(); //调整移动数据
rxd_data();
P1=sw[line];
STR=1;STR=0属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2011-06-04 00:06 4字屏翻页万年历\
文件 181498 2008-07-16 12:43 4字屏翻页万年历\4字时间显示.DSN
文件 1364 2011-06-04 00:03 4字屏翻页万年历\4字时间显示.PWI
文件 181498 2008-07-16 12:41 4字屏翻页万年历\Last Loaded 4字时间显示.DBK
文件 29346 2008-07-16 12:35 4字屏翻页万年历\zsp.c
文件 11349 2008-07-16 12:35 4字屏翻页万年历\zsp.hex
- 上一篇:8051与1601LCD设计的计算器
- 下一篇:ssh双数据源登录.rar
相关资源
- 武汉理工大学 单片机课程设计 16*16点
- STM32F103RBT6驱动UC1698控制芯片的160160黑
- 利用译码器74HC595的点阵显示程序和电
- 16X16点阵程序(附仿真图和源程序)
- 16x16点阵(滚动显示)论文 程序
- 16*16点阵电路图附PCB
- 这是一个字模提取软件,其中可是设
- 基于51单片机的16*16点阵动态显示
- GB2312 8*8点阵字库
- 点阵字库 包含ACSII、字符、文字
- 点阵字库显示中英文
- Linux点阵字库和字库生成器.rar
- 32x16LED汉子点阵显示屏
- 字库工具 guitool(Trial) Setup 1.13.rar
- 单片机 点阵 字模提取软件
- 16x2点阵字符液晶模块设计实现
- 16x16点阵程序
- 16x16点阵提取工具支持ASC字符版
- 16x128LED点阵显示屏横向滚动.zip
- 16X32点阵完整程序
- 16*32点阵显示程序
- 16*16点阵汉字库 32*32点阵汉字库
- 16*16点阵汉字取模
- ( 16×64LED点阵显示屏的设计(附
- 点阵12864 protues仿真+源码
- 基于FPGA的点阵显示
- 基于51单片机的led点阵显示屏设计
- verilog8*8点阵动态图案
- 点阵字体生成器TS4已注册100%无功能限
- HanzFontMaker 最流弊的汉字字库制作工具
川公网安备 51152502000135号
评论
共有 条评论