欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標題: 單片機+四位數碼管如何進行動態顯示-菜鳥求助 [打印本頁]

作者: 西西弗    時間: 2020-4-6 21:05
標題: 單片機+四位數碼管如何進行動態顯示-菜鳥求助
請問四位數碼管如何進行動態顯示,端選和位選分別是P0和P2控制,我希望結果是一個顯示1,一個顯示0,我的單片機主函數是這樣的:
#include<reg52.h>
#define uchar unsigned char
#define uint  unsigned int
uint x,y;
sbit we1=P2^0;
sbit we2=P2^1;
void delay(uint a);
void main()
{
        while(1)
        {
                we1=1;
                P0=0xF9;
                we1=0;
                delay(100);

                we2=1;
                 P0=0xC0;
                we2=0;
                delay(100);
        }
}

void delay(uint a)
{
        for(x=a;x>0;x--)
                for(y=150;y>0;y--);
}
但是燒錄之后就是接替閃爍0和1(因為比較快,所以看起來就是兩個0),而不是一個顯示0,一個顯示1


批注 2020-04-06 210348.jpg (58.35 KB, 下載次數: 94)

批注 2020-04-06 210348.jpg

批注 2020-04-06 210311.jpg (30.14 KB, 下載次數: 80)

批注 2020-04-06 210311.jpg

作者: benclee    時間: 2020-4-6 21:34
we1=1;
  P0=0xF9;
delay(100);
we1=0;
we2=1;
P0=0xC0;
delay(100);
we2=0;

試一下這樣呢
作者: wulin    時間: 2020-4-6 21:41
#include<reg52.h>
#define uchar unsigned char
#define uint  unsigned int
uint x,y;
sbit we1=P2^0;
sbit we2=P2^1;
void delay(uint a);
void main()
{
        while(1)
        {
                P0=0xff;
                we1=1;we2=0;
                P0=0xF9;
                delay(1);

                P0=0xff;
                we1=0;we2=1;
                P0=0xC0;               
                delay(1);
        }
}

void delay(uint a)
{
        uint x,y;
        for(x=a;x>0;x--)
                for(y=125;y>0;y--);
}
作者: 溫酒斬華騰    時間: 2020-4-6 22:01
去普中那,找個demo改一下直接用。
作者: 西西弗    時間: 2020-4-7 09:26
wulin 發表于 2020-4-6 21:41
#include
#define uchar unsigned char
#define uint  unsigned int

實測有效,謝謝大神!!!
作者: 西西弗    時間: 2020-4-7 09:28
benclee 發表于 2020-4-6 21:34
we1=1;
  P0=0xF9;
delay(100);

如果這樣燈就不亮了,不過還是謝謝提醒
作者: billaj    時間: 2020-4-7 09:48
流水燈你寫過沒,把流水燈的方式用在這里,每個燈就是一位數碼管




歡迎光臨 (http://www.raoushi.com/bbs/) Powered by Discuz! X3.1