找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 28472|回复: 31
打印 上一主题 下一主题
收起左侧

单片机00~99秒表显示全套资料

  [复制链接]
楼主
ID:250700 发表于 2019-1-31 16:09 | 显示全部楼层

#include<reg52.h>   // 单片机0000~9999秒表
#define uint unsigned int
#define uchar unsigned char
uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};
uchar bai,shi;
uint a1,a2;
sbit D1=P3^0;
sbit D2=P3^1;
sbit D3=P3^2;
sbit D4=P3^3;
sbit key=P3^5;
sbit key1=P3^7;
bit   j        ;
uint  y        ;
void main()
  {
  TMOD=0x01;
  TH0=(65536-10000)/256;
  TL0=(65536-10000)%256;
  EA=1;
  ET0=1;
  TR0=1;
  bai=0;
  shi=0;
  while(1)
    {
    if(key==0)
          {
          j=0;
          }
        if(key1==0)
          {
         j=1; a2=0;
          }
    }
  }
void timer0()interrupt 1
  {
  TH0=(65536-10000)/256;
  TL0=(65536-10000)%256;
  a1++;
  y++;
  if(a1==100)            //  100
    {
        a1=0;
        if(j==1)  a2++;
        if(a2>=10000) a2=0;    // 10000
        }
  D1 = 1; D2 = 1; D3 = 1; D4 = 1;
  if(y==1)
    {
    P1=table[a2%10000/1000];   //   10000
    D4=0;
    }
  if(y==2)
    {
    P1=table[a2%1000/100];   //  1000
    D3=0;
    }
  if(y==3)
    {
    P1=table[a2%100/10];   //  100
    D2=0;
    }
  if(y==4)
    {
    P1=table[a2%10];      //  10
    D1=0;
        y=0;
    }
  }

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表