美文网首页
24秒计数(&&)0到99计数

24秒计数(&&)0到99计数

作者: tomato_20fc | 来源:发表于2019-03-21 22:29 被阅读0次
  • 用C51做一个24秒计数器
    原理图如下:


    24秒计数器.png

代码如下:

#include <reg52.h>
void delay500ms()
{
    int i,j,k;
    for( i=0;i<10/2;i++)
    {
        for(j=0;j<180;j++)
        {
           for(k=0;k<200;k++)
           {
             
           }
        }
    }

}

void main()                                                       
{
    char table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
    int i;
    int time=0;
    while(1)
    {
        for(i=1;i<=60;i++)
        {
            if(i==60 | (i%10 == 5 && i/10  == 2))
            {
                i=0;
                continue;
            }
            P2=table[i%10];
            P1=table[i/10];
//延时不准,可以用定时器做
            delay500ms();
            //delay500ms();
            }       
    }
}
  • 运用定时器做 从00计数到99 原理图一样
    代码如下:
#include <reg52.h>
#define uint unsigned int;
uint num = 0,num1 = 0;
void init()
{   
      TMOD=0x01;
      TH0=(65536-50000)/256;
    TL0=(65536-50000)%256;
         EA=1;//开总中断
         ET0=1;//开定时器0中断
         TR0=1;//启动定时器0
        while(1);

}

char table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
 
void main()                                               
{   
    init();
    
}

void T0_time() interrupt 1
{
    TMOD=0x01;
    TH0=(65536-50000)/256;
    num++;//
    if(num==20)//
        {              
                              num1++;   
                            P2=table[num1%10];
                          P1=table[num1/10];
                                         num=0;//
                        if (num1/10 == 9  && num1%10 == 9)
                        {
                                num1 = 0;
                        }
        }
}

相关文章

  • 24秒计数(&&)0到99计数

    用C51做一个24秒计数器原理图如下:24秒计数器.png 代码如下: 运用定时器做 从00计数到99 原理图一...

  • GC算法 垃圾收集器

    一、对象存活判断 引用计数:每个对象都有引用计数属性,新增一个引用时计数+1,引用释放时计数-1,当计数为0时可以...

  • CountDownLatch

    计数器,指定计数器的大小,当执行latch.countDown()后计数器减一,当计数器等于0时才能执行latch...

  • 【Leetcode】【Python】350. Intersect

    Counter计数:如果nums2中的元素在counter中计数大于0,则添加到res中,并且计数减1;

  • 二进制妙用之循环计数

    二进制妙用之循环计数 1. 什么是循环计数 从0到n之间循环依次取数,假设 n=3,那么我需要的如下数据 0,1,...

  • 如何判断一个对象可以被回收?

    引用计数法每个对象都有一个私有的引用计数属性,新增一个引用计数+1,释放一个引用时计数-1,引用计数为0则表示对象...

  • 第十三章 定时/计数器

    1.定时/计数器T0、T1的两种工作模式实质上都是对_________进行计数,但计数信号的来源不同。 计数器模式...

  • 程序员的数学-读书笔记

    第1章 0的故事 计数法分为按位计数法和罗马计数法按位计数法常用的有2进制、8进制、10进制、16进制等几种。 理...

  • 命题_第十三章_选择

    定时器/计数器的四种工作方式各有不同,其中()和()计数溢出后,计数器为全“0” A、方式0和方式1 B、方式1和...

  • 第十三章出题—计算

    当定时/计数器在工作方式为方式0的情况下,现需要计数6000,则预置数为多少? 解:当定时/计数器工作在方式0时,...

网友评论

      本文标题:24秒计数(&&)0到99计数

      本文链接:https://www.haomeiwen.com/subject/skphvqtx.html