16×16点阵显示屏
设计人:
设计思想:
16*16 ( )电阵可由四块8*8点阵连接而成。1与2,3与4的行控制相连,1与3,2与4的列控制相连,从而引出16个行控制引脚和16个列控制引脚。我们只需要控制这32个引脚就可以控制16*16点阵中的512个灯了。STC89C52单片机共有32个I/O脚,但是为了节约I/O脚,我们采用74HC573进行行控制,74HC154进行列控制,最终我们只用了14个I/O脚就控制了16*16点阵的512个LED灯。然而16个LED灯并联的电流有几百毫安,但74HC154的输出电流只有几十毫安。所以我们用了8550三极管用于放大电流。
1
2
3
4
16*16点阵显示屏电路
所需材料:
STC89C52RC 1块
74HC573 2块
74HC154 1块
8*8点阵 4个
S8550三极管 16个
1K电阻 16个
510Ω电阻 16个
8P排母 8个
40pIC座 1个
20pIC座 2个
24pIC座(宽体) 1个
12M晶振 1个
30pf电容 2个
10uf电容 1个
轻触开关 3个
开关 1个
10*15cm洞洞板 1块
DC电源座 1个
8*8点阵介绍:
8*8点阵共有16个引脚,8个控制列,8个控制行,其引脚对应实物如右图,它的行列控制并不是在同一侧的,而是无规则分布的。因此在连接成16*16点阵时要特别注意。
元件介绍:
74HC573介绍:
当LE输入低电平时,Q端电位与D端无关
当LE输入高电平时,Q端电位随D端电位变化而变化
当LE输入低电平时,Q端锁存LE端高电位时的数据
74HC154介绍:
16*16点阵显示思想:
由74HC154控制列,每次让一列发光,74HC573控制行,选择让这一列的哪一个灯发光,然后采用扫描的方法依次扫描16列。如果扫描的速度够快,我们看到的就是一整屏画面了。然后让每一列数据依次向左移一格,我们就可以看到滚动的画面了。
程序设计:
取模软件的使用:
以阳码,逆向,逐列式的方式取出字摸分别存入数组zimo1[],
zimo2[],
zimo3[]三个数组中
While(1){
for(k=0;k<n;k+=2){
for(j=0;j<speed;j++){
for(i=0;i<16;i++){ P2=lie[i]; h1=1;P0=zimo[2*i+k];h1=0;P0=0xFF; h2=1;P0=zimo[2*i+1+k];h2=0;P0=0xFF;
delay(1);
h1=1;h2=1;P0=0xFF;h1=0;h2=0;
if(p==1)
break;
}
if(p==1)
break;
}
if(p==1)
break;
}
if(p==1){
p=0;
break;
}
}
16乘16点阵 来自淘豆网m.daumloan.com转载请标明出处.