简单程序不知道有什么问题

[复制链接]
2160|5
 楼主| hufa123 发表于 2009-9-16 22:19 | 显示全部楼层 |阅读模式
我控制LED从0到7   烧程序就出现乱的 本人看上去没什么问题  给意见 新手
口下留情 谢谢

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
 楼主| hufa123 发表于 2009-9-16 22:20 | 显示全部楼层
不用下了  就下面的简单程序
#include<reg52.h>
unsigned char a;
sbit dula=P2^6;
sbit wela=P2^7;
void delay(char z);
unsigned char code table[]={
0x3f,0x06,0x5b,0x4f,
0x66,0x6d,0x7d,0x07,
0x7f,0x6f,0x77,0x7c,
0x39,0x5e,0x79,0x71,0};void main()
{
        a=1;
    wela=1;
    P0=0xfe;
    wela=0;
    dula=1;
    P0=0x3f;
    dula=0;
        while(1)
        {
        a++;
   if(a==7)
       {
                a=0;
                   }
                 wela=1;
            P0=0xfe;
            wela=0;

            dula=1;
            P0=table[a];
            dula=0;
            delay(1000);
       
        }         
}
void delay(char z)
{
        char x,y;
        for(x=z;x>0;x--)
                for(y=110;y>0;y--);       
}
sklar 发表于 2009-9-17 09:57 | 显示全部楼层
本帖最后由 sklar 于 2009-9-17 10:00 编辑

wela=1;
            P0=0xfe;
            wela=0;

            dula=1;
            P0=table[a];
            dula=0;
这段就白搞了。。。这样的结果只能出来wela=0;  P0=table[a];dula=0;
你是不是要扫描数码管
 楼主| hufa123 发表于 2009-9-17 20:08 | 显示全部楼层
是扫描数码管   那段是片选和送值   怎么会出那个结果啊  原因现在不明
sklar 发表于 2009-9-17 20:18 | 显示全部楼层
晕倒。。。你写的这么快不等于前面就白写了。。。
wela=1;
            P0=0xfe;
       这里加延时;
            wela=0;

            dula=1;
            P0=table[a];
          这里加延时;
            dula=0;
 楼主| hufa123 发表于 2009-9-18 21:16 | 显示全部楼层
哦  问题在这 谢谢
您需要登录后才可以回帖 登录 | 注册

本版积分规则

186

主题

393

帖子

2

粉丝
快速回复 在线客服 返回列表 返回顶部