基于无线供电的旋转LED显示课程设计_第1页
基于无线供电的旋转LED显示课程设计_第2页
基于无线供电的旋转LED显示课程设计_第3页
基于无线供电的旋转LED显示课程设计_第4页
基于无线供电的旋转LED显示课程设计_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、精选优质文档-倾情为你奉上电气工程学院 基于无线供电的旋转LED显示 课程设计 学号: 姓 名: 同 组 人: 指导教师: 设计时间: 设计地点: 基于无线供电的旋转LED显示 课程设计任务书学生姓名: 指导教师: 一、课程设计题目: 基于无线供电的旋转LED显示二、课程设计要求1. 根据具体设计课题的技术指标和给定条件,独立进行方案论证和电路设计,要求概念清楚、方案合理、方法正确、步骤完整;2. 查阅有关参考资料和手册,并能正确选择有关元器件和参数,对设计方案进行仿真;3. 完成预习报告,报告中要有设计方案,设计电路图,还要有仿真结果;4. 进实验室进行电路调试,边调试边修正方案;5. 撰写

2、课程设计报告最终的电路图、调试过程中遇到的问题和解决问题的方法。三、进度安排1时间安排序 号内 容学时安排(天)1方案论证和系统设计12完成电路仿真,写预习报告13电路调试24写设计总结报告与答辩1合 计5设计调试地点:电气楼4102执行要求微机原理与接口技术课程成绩优秀的可以自拟题目,其余的同学都是指定题目。,每组不得超过2人,要求学生在教师的指导下,独力完成所设计的详细电路(包括计算和器件选型)。严禁抄袭,严禁两篇设计报告雷同。 【摘要】本作品是一个由电动机带动主板旋转的LED显示屏,根据视觉暂留原理,可显示16行、列可控的字符和图案。通过逆变振荡电路和整流滤波电路以及两级线圈给主板无线供

3、电。同时,为了使显示更加稳定,设置了电机调速装置,能随时对电机进行调速。 【关键词】无线供电 LED显示 电机调速 目录第一章 系统方案设计1、设计原理旋转时钟利用了视觉暂留原理。视觉暂留现象(Visual staying phenomenon,duration of vision) :人眼在观察景物时,光 信号传人大脑神经,需经过一段短暂的时间,光的作用结束后,视觉形象并不立即消失,这 种残留的视觉称“后像” ,视觉的这一现象则被称为“视觉暂留” ,其原因是由视神经的反应 速度造成的,其时值是二十四分之一秒,通常情况下,视觉残留会保持 0.10.4 秒,也就是 说以 0.10.4 秒间隔闪烁

4、的图像,被人眼观察,会被认为是连续的图像。视觉残留是动画、 电影等视觉媒体形成和传播的根据。 2、硬件设计旋转LED显示屏主要由供电装置,驱动装置,LED显示电路及其控制构成。电机驱动电路:采用L298N驱动模块控制电机转速。控制电路:采用STC89C52单片机控制led的亮灭,控制电机的调速。显示电路:采用16个led并成一排,通过电机的旋转构成一个平面,从而显示图像。无线供电电路:利用电磁耦合原理,用磁线圈对主板进行供电。利用互补正反馈振荡电路将直流电转化成高频交流信号,通过线圈(线圈内有铁氧体磁芯,提高效率),将交流信号输送到旋转的主电路板上,主电路板上利用5.1v的稳压二极管,将接收到

5、的交流信号变成5.1v直流电,通过220uF的电解电容滤波,供给单片机,使单片机能正常工作(互补正反馈由三极管B772 PNP型、9014 NPN型和阻值分别为470 、 470 、62K功率为 1/8W的电阻,还有一只2A681的涤纶电容组成) 第二章 仿真 此图为multisim对无线模块的仿真,可以看出从初级线圈的输入端输入的波形为高频震荡的波形。 第三章 调试1、无线模块及实际波形2、电源模块以及电机调试模块(包括L298驱动)3、整体构架及效果图显示为“电气让生活更美好”5、 PCB板的绘制(参考书如下)第一部分(无线供电模块)第二部分 显示部分第三部分 电机驱动6、程序部分A、显示

6、部分#include#define uchar unsigned char#define uint unsigned intuint i=0;uchar code LED= /灯亮给低电平,上灯P1口0xFF,0xFF,0x07,0x77,0x77,0x77,0x77,0x00,0x77,0x77,0x77,0x77,0x07,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xDF,0xEF,0xB3,0xB8,0xAB,0xAB,0xAB,0xAB,0xAB,0xAB,0xAB,0x2B,0xFB,0xFB,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,

7、0xBF,0xBF,0xBD,0x33,0xFF,0xFF,0xFF,0xFF,0xFF,0x00,0xBF,0xBF,0xBF,0xBF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x7F,0xBF,0xCF,0xE1,0xEF,0xEF,0xEF,0x00,0xEF,0xEF,0xEF,0xEF,0xEF,0xEF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xEF,0x9F,0xFD,0x73,0xFF,0xDF,0xDB,0xDB,0xDB,0x01,0xDD,0xDC,0xDD,0xDF,0xDF,0xFF,0xFF,0xFF,0xFF,0xFF,

8、0xFD,0xFD,0x0D,0x6D,0x6D,0x6D,0x6D,0x01,0x6D,0x6D,0x6D,0x6D,0x0D,0xFD,0xFD,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFB,0xDB,0xDB,0xDA,0xD9,0xDB,0x03,0xDB,0xD9,0xDA,0xDB,0xDB,0xFB,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xEF,0xEF,0x0F,0xE0,0xEF,0x0F,0xFF,0x7F,0x7D,0x7D,0x1D,0x6D,0x75,0x79,0x7F,0xFF,0xFF,0xFF,0xFF,0xFF,

9、 ;uchar code LED1=/下面的灯P0口0xFF,0xFF,0x07,0xEF,0xEF,0xEF,0xEF,0x01,0xEE,0xEE,0xEE,0xEE,0x06,0xFE,0xF0,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x0F,0xF3,0xFD,0xF0,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x03,0xF5,0xED,0xFD,0xFD,0xFD,0x01,0xFD,0xFD,0xFD,0xFD,0xFD

10、,0xFF,0xFF,0xFF,0xFF,0xFF,0xFD,0xFD,0xBD,0xBD,0xBD,0xBD,0xBD,0x01,0xBD,0xBD,0xBD,0xBD,0xBD,0xFD,0xFD,0xFF,0xFF,0xFF,0xFF,0xFF,0xDF,0xDF,0x81,0x7F,0xFF,0xFF,0x80,0xBD,0xBD,0x3D,0xBD,0xBD,0x80,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFE,0xFE,0x1E,0xCD,0xD5,0xDB,0xD3,0x0D,0xDD,0xDD,0xDE,0xDE,0x1E,0xFE,0xFE

11、,0xFF,0xFF,0xFF,0xFF,0xFF,0x7E,0x6E,0x6E,0x6D,0x6D,0x6B,0x67,0x0F,0x67,0x6B,0x6D,0x6D,0x6E,0x6E,0x7E,0xFF,0xFF,0xFF,0xFF,0xFF,0xFD,0xBB,0x57,0xEF,0x97,0x79,0xFF,0xFF,0xFD,0xFE,0x01,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,;void delay (uint z) uint x,y;for(x=z;x0;x-) for(y=1;y0;y-); void ex0_isr(

12、void) interrupt 0 i=0;void main() IT0=1; EX0=1; EA=1; while(1) for(i=0;i160;i+)/20个 P1=LEDi; P0=LED1i; delay(14); B、控制电机驱动部分#include #include #define KeyPort P2#define uchar unsigned char #define uint unsigned int sbit en1=P10; sbit en2=P11; sbit s1=P12; sbit s2=P13; sbit s3=P14; sbit s4=P15; uchar

13、t=0; uchar m1=0; uchar m2=0; uchar tmp1,tmp2; unsigned char KeyScan(void);void DelayMs(unsigned char t); void DelayUs2x(unsigned char t);void motor(uchar index, char speed) if(speed=-100 & speed=100) if(index=1) m1=abs(speed); if(speed0) s1=0; s2=1; else s1=1; s2=0; if(index=2) m2=abs(speed); if(spe

14、ed0) s3=0; s4=1; else s3=1; s4=0; void main() unsigned char num; int t=10,m=-40; TMOD=0x02; TH0=0x9B; TL0=0x9B; EA=1; ET0=1; TR0=1; while (1) num=KeyScan(); if(num=1)motor(1,t=t+3);motor(2,t=t+3);if(num=2)motor(1,t=t-3);motor(2,t=t-3);void timer0() interrupt 1 if(t=0) tmp1=m1; tmp2=m2; if(ttmp1) en1

15、=1; else en1=0; if(t=100) t=0; void DelayUs2x(unsigned char t) while(-t);void DelayMs(unsigned char t) while(t-) DelayUs2x(245); DelayUs2x(245); unsigned char KeyScan(void) unsigned char keyvalue; if(KeyPort!=0xff) DelayMs(20); if(KeyPort!=0xff) keyvalue=KeyPort; while(KeyPort!=0xff);switch(keyvalue

16、) case 0xfe:return 0;break; case 0xfd:return 1;break; case 0xfb:return 2;break; case 0xf7:return 4;break; case 0xef:return 5;break; case 0xdf:return 6;break; case 0xbf:return 7;break; case 0x7f:return 8;break; default:return 0;break; return 0;第四章 心得体会与建议 通过本次的电子测量课程设计,我更加熟练掌握了Multisim仿真软件,基本元器件搭接成我们

17、想要的功能,焊接电路元件,布线以及应用Altium Designer 画PCB的基本操作。Multisim软件为我们提供了很好的实际仿真验证的平台;验证真实电路的平台;Altium Designer软件为我们提供了很好的画PCB的平台,这些都使我们将理论的学习应用到实践。下面进行具体说明:1. 在焊接电路板时,由于电路的复杂性以及无法确定错误可能出现在什么地方无法进行及时的修改,我们很难一次性将电路功能实现出来,特别是在焊接无线模块的过程当中,辨别三极管的管脚顺序非常的关键,在这个过程中,我掌握了利用万用表直接辨别管脚顺序的方法。2.程序的调试也是非常关键的一步,对于网络上程序资源,不能原版照抄,必须根据硬件的实际搭建情况,对已有的程序进行修改,程序与硬件的结合是一个很艰难,锻炼思维的过程,通过这次调试,我对C语言有了更深入的掌握。 通过课程设计提高了自身对知识应用能力,以及对仪器的操作能力,在以后的学

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论