标题: 单片机数码管显示闪烁程序 [打印本页]

作者: dismami    时间: 2020-10-9 22:35
标题: 单片机数码管显示闪烁程序
include<reg51.h>
#include<stdio.h>
#include<string.h>
#define uchar unsigned char
#define uint unsigned int

uchar code led_m[]={0x3F,0x6,0x5B,0x4F,0x66,0x6D,0x7D,0x7,0x7F,0x6F,} ;
sbit duanxuan =P2^5;
sbit weixuan =P2^6;
uchar num,num1=60,num2,shi,ge;
void Init()                                                   
{
        TMOD=0X01;                                          
        TH0=(65536-50000)/256;                  
        TL0=(65536-50000)%256;
        EA=1;                                             
        ET0=1;                                                  
        TR0=1;                                                
}

void delay_ms(uint xms)                              
{
        uint i,j;
        for(i=xms;i>0;i--)
        for(j=110;j>0;j--);
}
void shumaguan()           //?????1???
{
                duanxuan=0;
    weixuan=0;
                P0=led_m[shi];//?????
    duanxuan=1;
    duanxuan=0;
    P0=0x00;
    P0=0x02;
    weixuan=1;
    weixuan=0;
               delay_ms(60);
       P0=0x00;
       P0=led_m[ge];//?????
    duanxuan=1;
    duanxuan=0;
    P0=0x00;
    P0=0x01;
    weixuan=1;
    weixuan=0;
    P0=0x00;
               delay_ms(60);
}
void main()
{ Init();   
  while(1)
{
    shumaguan();
       }

}

void Timer0()interrupt 1                           
{
        TH0=(65536-50000)/256;                     
        TL0=(65536-50000)%256;
        num++;
        if(num==20)                                             
        {
                num=0;                                               
                num1--;                                                
                if(num1==0)
                num1=60;
                shi=num1/10;                              
                ge=num1%10;                                       
        }
}






欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1