
#include <stc12c5a.h>
void main(){
P2=0x00//打开锁存器
while(1){//保持以上状态
P0=0xff//给所有阳极送出高电平
P2=0xff//关闭锁存器
P1=0xff//给2803送高电平
}
}
//P0//573 in
//P1//uln2803
//P2//573 LE
*/
#include <stc12c5a.h>
#define uchar unsigned char
void delay1ms()
{
TH1=0xd8
TL1=0xf0
TR1=1
while(!TF1)
TF1=0
}
void main()
{
uchar mian[]={0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}
uchar i,w,x
TMOD=0x10
while(1)
{
w=0x01
x=0x01
for(i=0i<8i++)
{
P2=~w
P1=~x
w<<=1
x<<=1
P0=mian[i]
delay1ms()
}
}
}
= =| 首先一看你这电路就是没看芯片手册的吧!建议在使用一块芯片时要仔细阅读芯片手册的注意事项,和典型电路!既然型号都知道了还不知道芯片时干嘛的。2803是和2003一样的非门,为什么用他呢,就是为了解决电流问题,573的单个引脚电流足够你驱动8个led了,所以你不用担心电流问题,你这个电路只要在573的输入端加上啦就可以了。= =|(我做的光立方也是用这个电路,这个电路程序不好写!算法比较麻烦!595的话就比较好写程序!电路也比这个简单)8*8*8的光立方、光点矩阵。
一些单片机微控制系统爱好者对单片机开发的延伸应用,已发展成为独立的学习对象。光立方由若干个二极管led灯以立方体形式搭建,4*4*4、8*8*8、16*16*16甚至更多,又由单片机、锁存器、译码器等电器元件驱动,形成立体动画效果。其中8*8*8光立方最为常见。
基于单片机爱好者对单片机学习的热情,光立方是一学习单片机非常好的练习材料。拿8*8*8光立方举例,它是由512个发光二极管按照立方体的方式搭建焊接起来的,有层共阴束共阳和层共阳束共阴两种方案,每一层有8*8个发光二极管,共8层。
用c语言编译单片机程序使自定义动画效果得以实现。
拿8*8*8光立方举例:顾名思义光立方是一个立方体,每一个灯为小立方体的顶点,三维坐标系的第一象限里XYZ坐标都为8的立方体,每一个整数坐标点都对应一个发光二极管led灯(这样形容应该更加容易想象一点)。
当灯按照一定方案点亮时,效果是很震撼的,唯美、华丽、绚烂。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)