打印
[疑难问答]

我会单个数码管显示0到9,如何在这基础上显示0-99或0-999?

[复制链接]
3845|8
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
androidbus|  楼主 | 2016-12-30 20:56 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

#include<reg52.h>
sbit WEI = P1^6;
sbit DU = P1^7;
unsigned char code Disp_Tab[10] = {0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};        //段选
#define uchar unsigned char //  8bit, 0 ~     255
#define uint  unsigned int  // 16bit, 0 ~  65,535
void delayms(uint m)    // 11.0592MHz 晶振ms延时,偏差小于1%
{
    uint i, j;
    for(i=m; i>0; i--)
        for(j=114; j>0; j--);
}


void main()
{
   unsigned char i = 0;  
   WEI = 1;
   P0 = 0X7f;
   WEI = 0;               
   DU = 1;
        while(1)
        {
                for(i = 0; i < 10; i++)                //循环10次
                {
                        P0 =  Disp_Tab[i];
                        delayms(500);
                }
        }
}
沙发
litengg| | 2016-12-30 21:01 | 只看该作者
数码管显示0-99,显示过程不停得闪烁到了99溢出,延时怎样修改和到了99怎样暂停或者返回到00.

使用特权

评论回复
板凳
qiangweii| | 2016-12-30 21:03 | 只看该作者
如果真理解了0~9显示,那么就一定会0~999显示。不会0~999显示,就一定没有真理解了0~9显示。

使用特权

评论回复
地板
shashaa| | 2016-12-30 21:08 | 只看该作者
从个十百依次自加,逢九清零前位加一

使用特权

评论回复
5
xia00| | 2016-12-30 21:10 | 只看该作者

while(1)
        {
                for(i = 0; i < 10; i++)                //循环10次
                {
                    WEI = 1;
                    P0 = 0x7f;
                    WEI = 0;               
                    DU = 1;
                    P0 =  DISP_smg;
                    delayms(400);              
                    WEI = 1;
                    P0 = 0xbf;
                    WEI = 0;
                    DU = 1;
                    P0        =  DISP_smg[C0];
                   删掉试试看 0-9      

使用特权

评论回复
6
hfdy01| | 2016-12-30 21:14 | 只看该作者

添加循环嵌套,
继续计数。

使用特权

评论回复
7
CallReceiver| | 2016-12-30 21:16 | 只看该作者

分离出个位十位百位等,当各位加到10时候十位进一,个位清零

使用特权

评论回复
8
boy1990| | 2016-12-30 21:20 | 只看该作者

两种方法,一种是从0-99,然后这个数字对10取整,将这个数字显示在十位数的数码管,对10取余,将这个数字显示在十位数的数码管,持续刷新,多少次后,数字加1,对100进行取余,保证数字只有0-100。
一种是0-9显示,每次对10取余,取余结果在个位上显示,当取余结果为0时,十位数的数字加1,十位数对10取余,取余结果在十位上显示。

使用特权

评论回复
9
sourceInsight| | 2016-12-30 21:22 | 只看该作者
根据经侦,中断计算一显示时间,然后根据时间,终断,进行编程。。。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

181

主题

1597

帖子

3

粉丝