欢迎来到天天文库
浏览记录
ID:37528607
大小:5.54 MB
页数:16页
时间:2019-05-24
《旋转LED制作(立体和平面一体板)》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、立体&平面旋转式LED制作由6V变压器驱动电机自动旋转,显字宽度能自适应转速的快慢自动调节,采用无线供电方式为显示部分供电,采用STC12C5A32S2单片机控制,频率特性及稳定性比普通单片机更好,有显字和时钟功能,硬件电路图绘制和软件编程都由本店工程制作并调试成功,主要针对电子爱好者需要进行设计,并能为顾客提供硬件和软件的技术支持。本站视频地址:http://v.youku.com/v_show/id_XMzI3MjA3NzEy.html优酷视频本店出售的是旋转LED套件,提供电路板所需的所有元件和焊接电路图,各元
2、件参数都是自己通过多次验证调试出来,能使产品发挥最优的性能。如果你是电子DIY爱好者,学会焊接是相当重要的,电路板元件大多数都是贴片元件,体积很小,所以对焊接贴片元件还不熟的朋友,建议有摄子辅助焊接,由于单片机引脚较密,焊接有难度,如果初学者有要求本店工程师帮忙焊接的,请拍下产品后与店主联系。http://shop62158271.taobao.com/旋转LED能实现的功能:1.平面显字功能。2.平面显示数字时钟功能。3.平面显示指针式时钟功能。4.立体显字功能。5.红外遥控功能,能实现立体和平面切换显示,字体宽度
3、和显字宽度调节,时钟较准,复位等功能。6.能一定范围自适应旋转速度7.直流电供给电机自动旋转,无需人工操作。。遥控器使用说明:按键7是立体显示字模式按键8是平面旋转时钟模式此模式下按OK键开始进行调时间,秒不可调。年,月,日,星期,时分都可调,其中“#”号键是时钟初始化用的。按键9是模拟指针表盘模式效果比较一般后续会继续改进。原理图:单片机使用资源情况:40个IO口全用上了,其中P3.5P3.6P3.7用于DS1302的通信外部中断0(P3.2)用于旋转起点检测,外部中断1(P3.3)用于红外接收。其他35个IO全都
4、独立控制LED,使得旋转的时候字体上下不会有偏差的现象。程序下载:下载软件用STC-ISP软件,高点的版本都有STC12C5A32S2的型号,选择好型号后,就可以通过P3.0P3.1下载程序了板上已引出4P线了,只需把实验班上的P3.0P3.1电源和地接上就可以下载,跟普通的89C51一样。程序:程序比较长就不全放上来了,部分说明如下:红外接收处理:这里笔者用了很多方式去解红外遥控器的码,但是发现前几个版本都不太稳定,关键是旋转LED用的中断比较多,对红外接收有一定影响,所以通过努力看红外码的原理,选择一种更好的方式
5、去解码,由于解码时通过外面中断1触发,定时器计时来完成解码的。为了提高稳定性,这里让定时器在外部中断1触发后才开始计时,而且计时到定时器1溢出计数变量加1,当然定时器1是用重装模式的。算算18.432M的晶振定时器1溢出时间是160US所以根据这个时间来算1还是0比较容易成功,遥控器也灵敏多了。具体实现可以看程序部分店里有详细注视的程序,如果需要可到http://shop62158271.taobao.com/购买技术支持程序如下:#include"NEW_8051.H"#include"task.h"ucharir
6、time;//红外用全局变量bitnew_code;ucharIRcord[2];ucharirdata[17];ucharkey_code;/************************************************/voidtim1_isr(void)interrupt3using1//定时器1中断服务函数{irtime++;}/*************************************************************///外部中断1解码程序voidex1_i
7、sr(void)interrupt2using2//外部中断1服务函数{staticuchari,p,z;staticbitstartflag;TR1=1;if(startflag){if(irtime<100&&irtime>=53)//引导码TC9012的头码{i=0;p=1;z=0;irdata[i]=irtime;irtime=0;}z++;if(z>=18){irdata[p]=irtime;irtime=0;p++;if(p==17){new_code=1;p=0;TR1=0;}}elseirtime=0
8、;}else{irtime=0;startflag=1;}}/************************************************/voidIrcordpro(void)//红外码值处理函数{uchari,j,k;ucharcord,value;k=1;for(i=0;i<2;i++)//处理4个字节{for(j=1
此文档下载收益归作者所有