17年6个月前IP:未同步
120854
14楼
*****************修改后的代码,感谢RC5的指点,已经简洁多了******************

#include <iom48v.h>
#include <macros.h>
#include "delay.h"        /*拿来主义的延时函数*/  
#include "led_dis.h"      /*LED数码管断码表*/

#define Led_a 0b11111110
#define Led_b 0b11111101
#define Led_M 0b11111111

void main (void)
{
    DDRC=0xFF;
    DDRB=0xFF;
    DDRD=0xFF;
    PORTC=0xFF;
    PORTB=0xFF;
    PORTD=0xFF;
    while(1)
    {
    unsigned char Counter;
    int a=0,b=0,c=0;
    
    for (Counter=10;c<10000;Counter=c++/100)         /*这两个参数决定了计数器的递增频率与总循环数*/
    {
        a=Counter/10;
        PORTD=DisTab[a];
        PORTB=Led_a;                     /*点亮十位数码管*/
        Delay_ms(5);
        b=Counter%10;
        PORTD=DisTab[b];
        PORTB=Led_b;                     /*点亮个位数码管*/
        Delay_ms(5);
        PORTB=Led_M;                    /*关闭所有的数码管*/
        }
    }        
}

************************分割线*********************************

有个问题,就是根据您的建议,我想将循环变量  Counter ,a,b,c 放进初始化表达式中却总是失败,但只放Counter就没问题,是否for函数的初始化表达式只允许放一个变量呢?不解……试了好几次了。
评论
文号 / 120854

万流景仰
名片发私信
学术分 11
总主题 73 帖总回复 986 楼拥有证书:学者 笔友
注册于 2008/03/23 23:15:00最后登录 2026/08/09 08:54:19
主体类型:个人
所属领域:无
认证方式:邮箱
IP归属地:0

个人简介

暂未填写
笔记
{{note.content}}
{{n.user.username}}
{{fromNow(n.toc)}} {{n.status === noteStatus.disabled ? "已屏蔽" : ""}} {{n.status === noteStatus.unknown ? "正在审核" : ""}} {{n.status === noteStatus.deleted ? '已删除' : ''}}
  • 编辑
  • 删除
  • {{n.status === 'disabled' ? "解除屏蔽" : "屏蔽" }}
我也是有底线的