POV led一直是自己喜欢玩的一类DIY,这次再升级一下,制作一款立体和平面都可以显示文字的旋转LED,单片机选择STC12C5A32S2 LQFP48脚封装,IO口数量35个,就是说用这35个 控制35个LED灯,不选择驱动芯片的原因是 制作难度会上升,有易到难的设计,慢慢提升。 原理图的设计 原理,图片上的文字都有说明,看不清楚的到文章末下载资料后查看 无线供电板原理图 准备材料: 焊接调试,制作过程比较顺利,没有一下提升太多难度,对原理图的设计和程序的设计又进了一步 程序断断续续调试了一段时间 实现的效果 ![在这里插入图片描述](https://img-blog.csdnimg.cn/9c055ec427f4471eaeafcb6e23daa834.png#pic_center)
void main(void)
{
uint i=0,j=0 ;
P1=0XFF;
P2=0XFF;
P0=0XFF;
// led1=0 ;
//主程序中只检测按键
while(1)
{
if(KEY==0) //红外接收管 判断起始位
{
j++;
if(j>768) //根据显示的字数定义改数值768/16=48个字 显示完48个字后 重新开始
{
j=0 ;
}
// 由于半径问题 平面显示一列 立体要显示两列 才够平衡 不然立体的字很宽
for(i=j;i>4;//这里行和列 都是IO口独立驱动的LED
DelayUs(150); //延时让LED亮起来 每列延时的时间
P4=P5=0XFF;
P2=zimo[i*4+2]; //送数据低位显示
P4=(zimo[i*4+3]);//送数据高位显示 这里用了单片机P4 和P5口 是LQFP48脚才有的
P5=(zimo[i*4+3])>>4;//这里行和列 都是IO口独立驱动的LED
DelayUs(150); //延时让LED亮起来 每列延时的时间
P2=0XFF;
P4=P5=0XFF;
P1=0XFF;
P0=0XFF;
}
}
}
}
更多的程序资料到这下载,包括原理图元件清单,单片机程序,上位机改字软件 链接:https://pan.baidu.com/s/1NYSIjJ3Y06JET0UAtPDm8A?pwd=zx5j 提取码:zx5j
|