标题: 8位以内任意计数 单片机程序 [打印本页]

作者: 万老八    时间: 2019-10-15 19:28
标题: 8位以内任意计数 单片机程序
#include <reg51.h>         
#include <intrins.h>
#define uchar unsigned char
#define uint unsigned int
#define ulong unsigned long      
unsigned char SEG[]={0xc0,0xf9,0xa4,0xb0,
    0x99,0x92,0x82,0xf8,0x80,0x90};
void delay(int x)
{
        uint i,j;
        for(i=0;i<x;i++)
        for(j=0;j<123;j++);
}
void dispw(uchar i,uchar j)
{
        P2=_crol_(0x01,i);
        P0=SEG[j];
        delay(1);
        P2=0;
}
void disp(ulong x)
{
        uchar a[8],i,k,n;
        a[7]=x%10;
        a[6]=x%100/10;
        a[5]=x%1000/100;
        a[4]=x%10000/1000;
        a[3]=x%100000/10000;
        a[2]=x%1000000/100000;
        a[1]=x%10000000/1000000;
        a[0]=x%100000000/10000000;
        for(n=0;n<8;n++)
        {
                if(a[n]!=0)
                {
                        if(a[n-1]==0)
                        {
                                k=8-n;
                                break;
                        }
                }
        }
        for(i=0;i<k;i++)
        dispw(7-i,a[7-i]);
}
main()
{
        ulong num;
        uchar m;
        while(1)
        {
                for(num=0;num<88888888;num++)
                {
                for(m=0;m<10;m++)
                {
                disp(num);
                delay(5);
                }
                }
        }
}

8位数以内计数.png (15.88 KB, 下载次数: 47)

8位以内计数

8位以内计数

动态显示.rar

78.9 KB, 下载次数: 3, 下载积分: 黑币 -5

8位以内任意计数






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