我们从2011年坚守至今,只想做存粹的技术论坛。  由于网站在外面,点击附件后要很长世间才弹出下载,请耐心等待,勿重复点击不要用Edge和IE浏览器下载,否则提示不安全下载不了

 找回密码
 立即注册
搜索
查看: 797|回复: 0

从1自加到9999

[复制链接]

该用户从未签到

135

主题

2418

回帖

6591

积分

二级逆天

积分
6591

社区居民社区劳模原创达人最爱沙发忠实会员终身成就奖优秀斑竹奖

QQ
发表于 2015-3-19 15:57:18 | 显示全部楼层 |阅读模式
#include <reg52.h>
#define uchar unsigned char
#define uint unsigned int
uchar i=0;
uchar Data[]={8,8,8,8,0,0,0,0};
//===========================函数声明================================
void delay(uint Time);
void display(uchar Data[]);
//============================主函数=================================
void main()//主函数
{
   //---------------------------系统初始化--------------------------
         unsignedlong int count=0;
         uintt=0;
         while(1)//死循环
    {        
                   for(t=0;t<10;t++)
                   {
                            display(Data);
                   }
                   //-------------计数自加1--------------
                   Data[7]++;
                   if(Data[7]>9)
                   {
                            Data[7]=0;
                            Data[6]++;
                            if(Data[6]>9)
                            {
                                     Data[6]=0;
                                     Data[5]++;
                                     if(Data[5]>9)
                                      {
                                               Data[5]=0;
                                               Data[4]++;
                                         if(Data[4]>9)
                                               {
                                                        Data[4]=0;
                                               }
                                     }
                            }
                           
                   }
         }
}
void display(uchar Data[])
{
         ucharcode seg[]={
         0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,
         0xa1,0x86,0x8e,0xbf,0xff};
         ucharcode Bit[]={
         0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe};
         uchari=0;//记录显在哪位上。
         ucharTime=0; //延时计数。
         ucharlight=255;
         for(i=0;i<8;i++)//8位数码管
         {
                   //---------段选------------
                   P2=0xf9;//选择段选开关。
                   P0=seg[Data];//送段选码。
                   WR=0;//
                   WR=1;//
                   //---------位选------------
                   P2=0xf8;
                   P0=Bit;
                   WR=0;
                   WR=1;
                   //延时
                   Time=light;
                   while(Time--);
                   light=light/2;
                   //---------消影------------
                   P2=0xf8;
                   P0=0xff;
                   WR=0;
                   WR=1;
         }        
}
回复

使用道具 举报

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

本版积分规则

论坛开启做任务可以
额外奖励金币快速赚
积分升级了


Copyright ©2011-2024 NTpcb.com All Right Reserved.  Powered by Discuz! (NTpcb)

本站信息均由会员发表,不代表NTpcb立场,如侵犯了您的权利请发帖投诉

平平安安
TOP
快速回复 返回顶部 返回列表