51��Ƭ�C�Д�Ԕ�⣨�£�
һ.���r�����P(gu��n)�Ĵ���
������ʽ�Ĵ���(TMOD)
ԓ�Ĵ��������O(sh��)�ö��r/Ӌ��(sh��)���Ĺ�����ʽ������λ���ڶ��r��0������λ���ڶ��r��1��
GATE���T��λ��GATE=0�r��ֻҪ��ܛ��ʹTCON�е�TR0��TR1��1���Ϳ��Ԇ��Ӷ��r/Ӌ��(sh��)������;GATA=1�r��Ҫ��ܛ��ʹTR0��TR1��1��ͬ�r�ⲿ�Д����_INT0/1Ҳ����ƽ�r�����܆��Ӷ��r/Ӌ��(sh��)�����������˕r���r���Ć��ӗl����������INT0/1���_����ƽ�@һ�l����
C/T:���r/Ӌ��(sh��)ģʽ�x��λ��C/T=0�鶨�rģʽ;C/T=1��Ӌ��(sh��)ģʽ��
���r��/Ӌ��(sh��)�����ƼĴ������ƼĴ���(TCON)
ԓ�Ĵ����ĵ�4λ���ڿ����ⲿ�Д�,����ǰ���B����4λ���ڿ��ƶ��r/Ӌ��(sh��)���Ć��Ӻ��Д���Ո��
TF1��T1����Д�Ո���־λ��T1Ӌ��(sh��)����r��Ӳ���Ԅ���TF1��1��CPU푑�(y��ng)�Д��TF1��Ӳ���Ԅ���0��
TR1��T1�\�п���λ��TR1��1�r��T1�_ʼ����;TR1��0�r��T1ֹͣ������TR1��ܛ����1����0����������ܛ���ɿ��ƶ��r/Ӌ��(sh��)���Ć����cֹͣ��
TF0��T0����Д�Ո���־λ���书���cTF1�ͬ��
TR0��T0�\�п���λ���书���cTR1�ͬ��
�Д����S���ƼĴ���(IE)
ET0�����r/Ӌ��(sh��)��T0�Д����Sλ;
ET1�����r/Ӌ��(sh��)��T1�Д����Sλ;
EA ��CPU�Д����S(�����S)λ��
��.���r������Д��̎���^��
1���O(sh��)�ö��r��������ʽ
2���鶨�r���b���ֵ
3�����r���Д����Sλ�Þ�1
4���_����
5���_���r�����ȴ��a(ch��n)������Д�Ո��
��.���F(xi��n)���Εr�
�f����
1.ʹ�ÄӑB(t��i)��(sh��)�a���@ʾ
2.�x������ʽ1����16λ�Ķ��r��0�M�й�������TMOD=0x01���Дྎ̖��1;
3.���r50ms����ÿ��50ms�a(ch��n)��һ���Дࣺ
TH0=(65536-50000)/256; //16λ���r���ĸ�8λ
TL0=(65536-50000)%256; //16λ���r���ĵ�8λ
���w�ĕr�g�c��Ƭ�C�ľ������P(gu��n)��Ո�˽�C��������ָ���������r����ڵ����P(gu��n)֪�R��
#include
#define uchar unsigned char
#define uint unsigned int
uchar hour,min,sec;
uchar code wei[8]= {0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f}; //��ꎘO��(sh��)�a��λ�x���a
uchar code duan[11]= {0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x01}; //��ꎘO��(sh��)�a�ܶ��x���a
void delay(uint z)
{
uint i,j;
for(i=z;i>0;i--)
for(j=110;j>0;j--);
}
void timer0_init()
{
TMOD=0X01;
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
ET0=1;
TR0=1;
EA=1;
}
void main()
{
uchar i;
timer0_init();
while(1)
{
num[0]=duan[hour/10];
num[1]=duan[hour%10];
num[2]=0x40; //�@ʾһ�M
num[3]=duan[min/10];
num[4]=duan[min%10];
num[5]=0x40; //�@ʾһ�M
num[6]=duan[sec/10];
num[7]=duan[sec%10];
for(i=0; i<8; i++) //�@ʾ����
{
P0=wei[i]; //λ�x
P1=num[i]; //���x
delay(2);
P1=0x00; //���[
}
}
/*���Ӷ��r�������]��Ӌ��(sh��)����͕��M���Д����(w��)����(sh��)�������x��ֵ�����M��Ӌ��(sh��)�����_�����r��Ч��*/
void timer0() interrupt 1 //���r�������(w��)����(sh��)
{
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
t++;
if(hour==24)
hour=0;
if(min==60)
{
hour++;
min=0;
}
if(sec==60)
{
min++;
sec=0;
}
if(t==20)
{
sec++;
t=0;
}
}

����admin ����ĕr�g��2018-05-18