为什么我8*8的点阵加了延时后只是闪了一下

2019-03-24 19:08发布

为什么我8*8的点阵加了延时后只是闪了一下,而不是亮一会儿了呢#include<reg51.h>
#define uchar unsigned char
#define uint unsigned int
uchar code table[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};
uchar code table1[]={0x00,0x00,0x02,0x03,0x02,0x00,0x00,0x00};
uchar code table2[]={0x00,0x00,0x04,0x06,0x04,0x00,0x00,0x00};
void delay(uint z)
{
 while(z--);
}void main()
{
        uint i; for(i=0;i<8;i++)
 {
  P2=table;
  P0=table1;
  delay(50);
  
 }    delay(50000);
 for(i=0;i<8;i++)
 {
  P2=table;
  P0=table2;
  delay(50);
 } delay(50000);
 
 while(1);} 此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
5条回答
常见泽1
2019-03-25 02:26
  1. #include<reg52.h>
    #define uchar unsigned char
    #define uint unsigned int

    void delay(uint z)
    {
    uint x,y;
    for(x=z;x>0;x--)
    for(y=110;y>0;y--);

    }

    unsigned char code table[]={0x00,0x20,0x28,0x78,0x28,0x20,0x00,0x00};
    uchar code colum[]={0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe};

    uchar i;
    main()
    {
    while(1)
    {

    for(i=0;i<8;i++)
    {

    P0=table[i];
    P2=colum[i];

    delay(5);
    P2=0xff;
    }
    }

    }
复制代码

一周热门 更多>