旋转LED设计与制作一、旋转LED显示原理介绍如何让一列灯旋转起来感觉像稳定的字显示在空中呢?首先我们来分析下人的眼睛,其实人的眼睛非常好骗的,只要让电机扫描的快一点就行了,实际上肉眼在24帧/秒以上就不会看到闪烁的,所以要保证电机的速度能在一秒转24圈以上,这样的话人眼就觉得旋转的字很稳定很清晰的显示在空中了。
旋转LED旋转起来是一个圆,那么就需要有一个传感器来判断起点位置,有人用霍尔传感器,有人用红外对管,我觉得用红外对管来的便宜些,而且实现起来也容易。
这个起点检测非常重要,单片机就是根据这个起点来判断是否要开始显示数据的。
如果起点检测不到单片机就不开始显示。
二、旋转LED显示原理图本电路大家看起来很熟悉,它是我们所学的STC89C52单片机的最小系统和17个贴片LED组成,硬件电路比较简单,真正的还是要写程序的。
三、旋转LED硬件电路的制作为了节约成本,我还是收集元器件,用洞洞板焊接。
STC89C52单片机采用双列直插的(DIP40),LED用贴片0805的红色发光二极管,限流电阻也是0805的贴片电阻。
LED和限流电阻用贴片的一是提高显示汉字的分辨率而是可以使电路的体积大大的减小。
其他的元器件就随便了。
焊接好的效果图如下:旋转LED,顾名思义,当然要有电机带动才能高速旋转起来,才能把动画的汉字显示出来。
电机可以从其他的电器中拆个旧的,本人的制作是从一个废旧的DVD影碟机中拆来的。
还有一个关键的,那就是怎么给电路板供电,本制作采用电刷供电,用了一小块覆铜板,中间划了一个圈,把铜皮分成了两部分,外圈为一个电极,内圈为一个电极,然后把从玩具车的马达中拆下两的电刷焊在旋转部分的电路板下面。
还有一个红外发射二极管,它是为旋转电路上的红外接收二极管提供的,这两个二极管一定对好,否者显示结果出不来。
硬件部分如下图:四、旋转LED程序代码本制作用KEIL软件编写程序,要有良好的C语言基础,汉字的代码用字模软件提取(PCtoLCD2002),软件界面如下:旋转LED程序原代码:#include<reg52.h>#define uint unsigned int#define uchar unsigned charsbitsw=P3^5; //霍尔开关unsigned char code tab[]={0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xFF,0xFF,0x1F,0xFE,0x0F,0xFC,0x07,0xF8,0x03,0xF0,0x03,0xE0,0x07,0xC0,0x0F,0x80,0x1F,0x80,0x0F,0xC0,0x07,0xE0,0x03,0xF0, 0x03,0xF8,0x07,0xFC,0x0F,0xFE,0xFF,0xFF,0xDF,0xFF,0xDB,0xF7,0xDB,0xB7,0xDB,0x7B,0x01,0x80,0xDC,0xFD,0xDD,0xBE,0xDF,0xBF,0xDF,0xDF,0x00,0xEC,0xDF,0xF3,0x DD,0xEB,0xD3,0xDD,0x5F,0xBE,0xDF,0x07,0xFF,0xFF,/*"我",0*/0xFF,0xFF,0x07,0x80,0xF3,0xDE,0xF4,0xDE,0xF7,0xDE,0xF7,0xDE,0x07,0x80,0xBF,0xFF,0xCF,0xFF,0x70,0xFF,0xF7,0xBC,0xF7,0x 7F,0xF7,0xBF,0x07,0xC0,0xFF,0xFF,0xFF,0xFF,/*"的",1*/0xFF,0xFF,0xFF,0xFF,0x01,0x00,0xFD,0xFF,0xED,0xFF,0x6D,0xE0,0x6D,0xF7,0x6D,0xF7,0x6D,0xF7,0x6D,0xF7,0x6D,0xE0,0xED,0xBF,0xFD,0x7F,0x01,0x80,0xFF,0xFF,0xFF,0xFF,/*"同",2*/0xBF,0xFB,0xCF,0xFB,0xEE,0xFB,0x69,0xFB,0x6F,0xFB,0x6F,0xBB,0x6E,0x7B,0x69,0x81,0x6F,0xF9,0x6F,0xFA,0x67,0xFB,0xEB,0 xFB,0xEC,0xFB,0xAF,0xFB,0xCF,0xFB,0xFF,0xFF,/*"学",3*/0xFF,0xFF,0xFF,0xFF,0xFF,0xC9,0xFF,0xC9,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF, 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,/*":",4*/0xFF,0xDF,0xED,0xEF,0xDD,0xF7,0xBD,0xF9,0x7D,0xFE,0x9D,0xF9,0xE1,0xE7,0xFF,0xFF,0xFF,0xFF,0x01,0x00,0xFD,0xF7,0xDD, 0xEF,0x25,0xF7,0xF9,0xF8,0xFF,0xFF,0xFF,0xFF,/*"邓",5*/0x7F,0xFF,0x9F,0xFF,0x07,0x00,0xF8,0xFF,0xE7,0xFD,0xF5,0x05,0x55,0xF5,0x55,0xF5,0xF5,0x85,0x01,0xF1,0xF5,0x85,0x55,0xF5, 0x55,0x75,0xF5,0x05,0xE7,0xFD,0xFF,0xFF,/*"儒",6*/0xFF,0xFF,0x01,0x00,0xFD,0xF7,0xDD,0xEF,0x25,0xF7,0xF9,0xF8,0xFF,0xFF,0x03,0x00,0xFB,0xBE,0xFB,0xBE,0xFB,0xBE,0xFB,0 xBE,0xFB,0xBE,0x03,0x00,0xFF,0xFF,0xFF,0xFF,/*"阳",7*/0xFF,0xFF,0xFF,0xFF,0xFF,0xFB,0xFF,0xF7,0xFF,0xE7,0xFF,0xCF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF, 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,/*"、",8*/0xF7,0xBF,0xD7,0xDF,0xB7,0xEF,0x76,0xF6,0xF1,0xF9,0x77,0xE6,0x87,0x9F,0xF7,0xFF,0xF7,0xFF,0xFF,0xFF,0x07,0xF0,0xFF,0xBF ,0xFF,0x7F,0x00,0x80,0xFF,0xFF,0xFF,0xFF,/*"刘",9*/0xBF,0x7F,0xBF,0x7F,0xBD,0xBF,0xBD,0xDF,0xBD,0xEF,0xBD,0xF3,0xBD,0xFC,0x01,0xFF,0xBD,0xFC,0xBD,0xF3,0xBD,0xEF,0x BD,0xDF,0xBD,0xBF,0xBF,0x7F,0xBF,0x7F,0xFF,0xFF,/*"天",10*/0xFF,0x7F,0xFF,0xBF,0xFF,0xCF,0x01,0xF0,0xDD,0xFD,0xDD,0xFD,0xDD,0xFD,0xDD,0xFD,0xDD,0xFD,0xDD,0xFD,0xDD,0xBD, 0xDD,0x7D,0x01,0x80,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,/*"月",11*/0xFF,0xFF,0xFF,0xFF,0xFF,0xFB,0xFF,0xF7,0xFF,0xE7,0xFF,0xCF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF, 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,/*"、",12*/0xEF,0xFB,0x9F,0xFB,0xFD,0x81,0x73,0xFE,0xFF,0xFF,0x6D,0xFF,0xA9,0x00,0xC5,0xB6,0xED,0xB6,0x80,0x80,0xEE,0xB6,0xC6,0 xB6,0xAA,0x00,0x6F,0xFF,0x7F,0xFF,0xFF,0xFF,/*"潘",13*/0xFF,0xFF,0xFF,0xBB,0xFF,0xBD,0x41,0xB6,0xD5,0xB6,0xD5,0xB6,0xD5,0xB6,0x15,0x80,0xD5,0xB6,0xD5,0xB6,0xD5,0xB6,0xC1, 0xB6,0xFF,0xBE,0xFF,0xBF,0xFF,0xFF,0xFF,0xFF,/*"星",14*/0xFF,0xFF,0xFF,0xBB,0xFF,0xBD,0x41,0xB6,0xD5,0xB6,0xD5,0xB6,0xD5,0xB6,0x15,0x80,0xD5,0xB6,0xD5,0xB6,0xD5,0xB6,0xC1, 0xB6,0xFF,0xBE,0xFF,0xBF,0xFF,0xFF,0xFF,0xFF,/*"星",15*/0xFF,0xFF,0xFF,0xFF,0xFF,0xFB,0xFF,0xF7,0xFF,0xE7,0xFF,0xCF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF, 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,/*"、",16*/0xBF,0x77,0xBB,0xB9,0xBB,0xCF,0x3B,0xF0,0x80,0xBF,0xBB,0x7F,0x3B,0x80,0xBB,0xFD,0xBF,0xF3,0xFF,0xFF,0x01,0x00,0xFD,0 xF7,0xDD,0xEF,0x25,0xF7,0xF9,0xF8,0xFF,0xFF,/*"郝",17*/0xFF,0xBF,0xFF,0xC6,0xDD,0xFE,0x65,0xFF,0xBD,0xC3,0xDD,0xBF,0xE1,0xBF,0xFD,0xBD,0xFD,0xB3,0x7D,0xBF,0xFD,0xBE,0x 7D,0x8F,0x81,0xFB,0xFF,0xF7,0xFF,0xCF,0xFF,0xFF,/*"忍",18*/0xFF,0xFF,0xFF,0xFF,0xFF,0xA7,0xFF,0xC7,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF, 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,/*",",19*/0xF7,0xFD,0xF7,0xFE,0x76,0xFF,0x11,0x00,0x67,0x7F,0xFF,0xBC,0x81,0xDF,0xBD,0xE7,0x3D,0xF8,0xBD,0xFF,0xBD,0xFF,0x3D,0 xC0,0xBD,0xBF,0x81,0xBF,0xFF,0x87,0xFF,0xFF,/*"祝",20*/0xFF,0xFE,0x7F,0xFF,0x9F,0xFF,0x07,0x00,0xF8,0xFF,0xBF,0xEF,0xDF,0xF3,0xE7,0xFC,0xF0,0xBF,0xF7,0x7F,0x37,0x80,0xF7,0xFF ,0xF7,0xFE,0xD7,0xF9,0xE7,0xE7,0xFF,0xFF,/*"你",21*/0xFF,0xFE,0x7F,0xFF,0x9F,0xFF,0x07,0x00,0xF8,0xFF,0xFF,0xFF,0x07,0x00,0xFE,0xFF,0xF9,0xFF,0xFF,0xFF,0xFB,0xFF,0xFB,0xBF, 0xFB,0x7F,0x03,0x80,0xFF,0xFF,0xFF,0xFF,/*"们",22*/0xBF,0xFB,0xCF,0xFB,0xEE,0xFB,0x69,0xFB,0x6F,0xFB,0x6F,0xBB,0x6E,0x7B,0x69,0x81,0x6F,0xF9,0x6F,0xFA,0x67,0xFB,0xEB,0 xFB,0xEC,0xFB,0xAF,0xFB,0xCF,0xFB,0xFF,0xFF,/*"学",23*/0xFF,0xFF,0xFD,0xF7,0xFD,0xE7,0xFD,0xF7,0xED,0xFB,0xDD,0xFB,0x3D,0xFB,0xFD,0xFD,0xFD,0xFD,0xFD,0xBE,0xFD,0x7E,0xFD,0xBF,0x01,0xC0,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,/*"习",24*/0xBF,0xFF,0xBF,0xBF,0xBD,0xDF,0x33,0xE0,0xFF,0xDF,0x7F,0xBF,0x77,0xAF,0x77,0xB3,0x00,0xBC,0x77,0xBF,0x77,0xBF,0x00,0x A0,0x77,0xBF,0x77,0xBF,0x7F,0xBF,0xFF,0xFF,/*"进",25*/0xBF,0x7F,0xBF,0x6F,0xBF,0x77,0x83,0xB9,0xBF,0xBF,0xBF,0xBF,0xBF,0xDF,0x00,0xD0,0xBB,0xEF,0xBB,0xEF,0xBB,0xF7,0xBB, 0xFB,0xBB,0xFD,0xBF,0xFF,0xBF,0xFF,0xFF,0xFF,/*"步",26*/0xFF,0xFF,0xFF,0xFF,0xFF,0xA7,0xFF,0xC7,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF, 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,/*",",27*/0xBF,0x7F,0xBF,0x7F,0xBD,0xBF,0xBD,0xDF,0xBD,0xEF,0xBD,0xF3,0xBD,0xFC,0x01,0xFF,0xBD,0xFC,0xBD,0xF3,0xBD,0xEF,0x BD,0xDF,0xBD,0xBF,0xBF,0x7F,0xBF,0x7F,0xFF,0xFF,/*"天",28*/0xBF,0x7F,0xBF,0x7F,0xBD,0xBF,0xBD,0xDF,0xBD,0xEF,0xBD,0xF3,0xBD,0xFC,0x01,0xFF,0xBD,0xFC,0xBD,0xF3,0xBD,0xEF,0x BD,0xDF,0xBD,0xBF,0xBF,0x7F,0xBF,0x7F,0xFF,0xFF,/*"天",29*/0x7F,0xFF,0x7D,0x7F,0x7D,0xBF,0x7D,0xCF,0x01,0xF0,0x7D,0xFF,0x7D,0xFF,0x7D,0xFF,0x7D,0xFF,0x7D,0xFF,0x01,0x00,0x7D,0x FF,0x7D,0xFF,0x7D,0xFF,0x7F,0xFF,0xFF,0xFF,/*"开",30*/0xFF,0xEF,0xFF,0xF3,0x7F,0xFC,0xFF,0xFF,0xFF,0xFF,0x1F,0xC0,0xFD,0xBF,0xFB,0xBF,0xE7,0xBF,0xFF,0xBF,0xFF,0xBF,0xFF,0x8 7,0xBF,0xFF,0x7F,0xFE,0xFF,0xF1,0xFF,0xFF,/*"心",31*/0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x01,0xCC,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF, 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,/*"!",32*/0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x01,0xCC,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF, 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,/*"!",33*/0xFF,0xFF,0x7F,0xFF,0x7F,0xFF,0x7F,0xFF,0x7F,0xFF,0x7F,0xFF,0x7F,0xFF,0x7F,0xFF,0x7F,0xFF,0x7F,0xFF,0x7F,0xFF,0x7F,0xFF,0x 7F,0xFF,0x7F,0xFF,0xFF,0xFF,0xFF,0xFF,/*"—",34*/0xFF,0xFF,0x7F,0xFF,0x7F,0xFF,0x7F,0xFF,0x7F,0xFF,0x7F,0xFF,0x7F,0xFF,0x7F,0xFF,0x7F,0xFF,0x7F,0xFF,0x7F,0xFF,0x7F,0xFF,0x 7F,0xFF,0x7F,0xFF,0xFF,0xFF,0xFF,0xFF,/*"—",35*/0xFF,0xFF,0x7F,0xFF,0x7F,0xFF,0x7F,0xFF,0x7F,0xFF,0x7F,0xFF,0x7F,0xFF,0x7F,0xFF,0x7F,0xFF,0x7F,0xFF,0x7F,0xFF,0x7F,0xFF,0x 7F,0xFF,0x7F,0xFF,0xFF,0xFF,0xFF,0xFF,/*"—",36*/0xEF,0xFE,0xD7,0x06,0xDB,0xB6,0x1C,0xB0,0xDB,0xB6,0xD7,0x06,0xAF,0xFE,0xBD,0xFF,0xBD,0xBF,0xB5,0x7F,0x2D,0x80,0x95 ,0xFF,0xB9,0xFF,0xBF,0xFE,0x3F,0xFF,0xFF,0xFF,/*"舒",37*/0xBF,0xFF,0xBF,0x7F,0xBD,0xBF,0x33,0xC0,0xFF,0xBF,0xB7,0x6F,0xBB,0x6A,0xD8,0x6A,0xD5,0x6A,0x6D,0x00,0xED,0x6A,0xD5 ,0x6A,0xD9,0x6A,0xBF,0x6F,0xBF,0x7F,0xFF,0xFF,/*"逢",38*/0xDF,0xEF,0xDF,0xCF,0xDF,0xEF,0x00,0xF0,0xDF,0xF7,0xDF,0xF7,0xFF,0xFF,0x07,0xE0,0x77,0xF7,0x77,0xF7,0x00,0x00,0x77,0xF 7,0x77,0xF7,0x07,0xE0,0xFF,0xFF,0xFF,0xFF,/*"坤",39*/0x3F,0xF8,0x0F,0xE0,0xE7,0xCF,0xF3,0x9F,0xB9,0xBD,0xDC,0x7B,0xDE,0x77,0xBE,0x67,0xFE,0x67,0xBE,0x77,0xDC,0x7B,0xD9, 0xBD,0xB3,0x9F,0xE7,0xC7,0x0F,0xF0,0x3F,0xF8,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,};void delay(uchar t) //延时{ucharx,y;for (x=t;x>0;x--){for (y=60;y>0;y--);}}void main(){uintj,i,sum;uchar p=200; //屏宽sum=1728-p; //代码个数while(1){if(sw==0){if(j<sum){for(i=j;i<j+p;i=i+2){P1=tab[i];P0=tab[i+1];delay(1);}P0=P1=0xff;j=j+2; //文字移动速度}elsej=0;}}}五、旋转LED程序下载调试下载模块用USB转TTL的P2303下载器,这个大家应该不陌生,下载软件用STC_ISP_V483,下载器和下载界面如下图:程序下载完成后可以上电测试了,若没问题的话就可以看到悬在空中的汉字了,祝大家制作成功!这是本人自己制作,网上有制作套件,需要的请复制/trade/detail/tradeSnap.htm?spm=a1z09.2.9.58.rUgKeR&tra deID=206061305413650成功的效果图如下:十堰职业技术学院电子工程系制作2013年4月5日。