基于89C52单片机的时钟程序设计~~硬件下面有图,要软件编程

1、 能够显示小时、分钟、秒钟;

2、 复位后初始时间为12-00-00;

3、 能够设定时分秒。

硬件我已经弄好了,求用C编写的软件程序~~

希望大家一次性给对,按我那给程序,因为要输入~
不好意思,没有~~~硬建就这些了~~

#include "reg52.H"
#include "string.h"
#include "intrins.h"
#define uint unsigned int
#define uchar unsigned char
//模拟量测量::ADC0809
#define ADC P0
sbit ALE = P2^7;
sbit ENABLE = P2^5;
sbit START = P2^4;
sbit EOC = P3^7;
sbit CLK = P3^4;
uchar ADC0809(void)//模拟量采集
{
uchar adc=0;
ALE=1;_nop_();ALE=0;//地址锁存
START=1;_nop_();START=0;//启动转换
wait:if(EOC==0)goto wait;//等待转换结束
_nop_();ENABLE=1;_nop_();//读数据
adc=ADC;_nop_();ENABLE=0;
return adc;//返回转换值
}
void Time0(void) interrupt 1 using 0//ADC0809时钟信号
{
CLK=~CLK;
}
void Timer0Init(void)//定时器T0初始化
{
TMOD = 0x02;
TH0 = 0xce;
TL0 = 0xce;
ET0 = 1;
TR0 = 1;
}
定时器采用模式2,8位自动重装初值方式。
初值计算方法:
时钟频率设计为500kHz,则定时时间t=1/f=1/500k=50us
采用12M晶振,机器周期为1us
根据公式:定时时间t=(2^8-x)*1us
计算初值x=2^8-50/1=256-50=206=0xce
改程序是已经实现过的,希望可以帮助你。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-12-23
电路连接图有没?本回答被网友采纳