微控制器的应用实训 学期项目设计报告
完成日期:2013年12月17日
目录
1 摘要 ................................................................. 4 2 绪论 ................................................................. 5 3 光立方项目方案 ....................................................... 6
3.1 硬件: .......................................................... 6 3.2 光立方的点阵部分,步骤: ........................................ 6 3.3 焊接注意事项: .................................................. 6 焊好的led点阵插到PCB板上用上位机led全亮指令,测试。 ............... 6 3.4 软件: .......................................................... 6 3.5 整体框图 ........................................................ 7 4 系统硬件 ............................................................. 8
4.1 CPU: ........................................................... 8 4.2 LED灯: ........................................................ 8 4.3 PCB板: ........................................................ 8 4.4 Arduion板: .................................................... 9 4.5 Arduino uno R3板: ............................................ 9 4.6 缩小版uno控制模块: ........................... 错误!未定义书签。 4.7 通信协议模块: ................................................. 11 5 系统软件设计 ........................................................ 12
5.1 上位机: ....................................................... 12 5.2 led edit 控制软件: ............................................. 12 5.3 led gameserver 游戏控制软件: ................................... 13 5.4 arduino 编程软件: ............................................. 13 6 整体性测试及所遇问题 ................................................ 14
6.1 整体搭建完成以后的测试 ......................................... 14 6.2 调试中遇到的问题 ............................................... 14 7 设计总结 ............................................................ 15 8 致 谢 .............................................................. 16
9 参考文献 ............................................................ 16 10
附录 .............................................................. 18 10.1 10.2 10.3
设计实物图效果图 ............................................. 18 程序清单 ..................................................... 19 电路图 ....................................................... 26
1 摘要
本设计制作出一个三维立体显示图案的lED光立方。本产品不仅可以像发光二
极管点阵一样显示平面的静态或动态画面,还可以显示立体的静态或动态画面,打破了传统的平面显示方案。同时又增加了显示的花样和立体图案显示效果,可以广泛用于传媒信息显示和各种装饰显示,为将来显示技术的进步和发展指导了方向,光立方显示比发光二极管点阵更具有视觉效果,而且画面图案更加丰富多彩。
本设计是用采为核心控制器,ATMga32PU扩展I/O口,完成硬件电路设计。通过软件编程控制数据下载到单片机完成设计图案的显示。软件采用自上而下的模块化设计思想,使系统朝着分布式、小型化方向发展,增强系统的可扩展性和运行的稳定性。
我们的光立方主要功能是在整体上实现画面立体的显示,实现动态的实时3D显示效果,同时可以根据要求改变程序的数组部分就可实现画面的自主定义,也可自己写更多美轮美奂的图形。即可显示出我们想要的3维立体图形,字母,数字,也可实现图形字母数字的来回变换,移动和交替的变换,达到不间断的变换效果。
2 绪论
中国LED等从上个世纪90年代初开始起步,之后都处于快速发展中,2007、2008年为
发展最快的两年。时至今日,LED显示屏已应用于各行各业中,现在就让我们来说说中国LED显示屏行业风风雨雨走过的20载。
目前中国LED显示屏的产能远远大于市场需求,产能过剩明显。增长放缓也造成了目前LED显示屏行业僧多粥少的局面。价格将成为推动LED显示屏市场快速发展的第一要素。目前LED显示屏行业大打价格战,毛利率进一步下降的同时也削弱了厂商自身的盈利能力。目前LED显示屏产业的细分化程度非常高,不仅配件材料供应格局稳定,同时各项配件材料毛利率也大幅降低。
LED显示屏是由多种配件材料组装而成,主要的技术集中在LED灯珠、控制系统、驱动IC、驱动电源四个方面。对绝大多数LED显示屏厂商而言,并不拥有绝大部分核心技术以及专利。因此,LED显示屏厂商很难通过技术革新实现快速发展,更多依靠稳定的渠道或工程项目。
从目前的发展情况来看,渠道商或工程项目都成了LED显示屏厂商争抢的稀缺资源。有实力的LED显示屏厂商都有着稳定的渠道或者工程项目。由过亿元LED显示屏厂商所构成的上层格局已经形成,新进厂商想要打开渠道不仅难度大,代价也很大。
3 光立方项目方案
由于刚接触Arduino,对它的认识还只是皮毛。学校安排的微控制器实训,对我来说很有挑战,我也很感兴趣,我想到了做光立方,由于对着方面了解太少,所以我买的套件(圣源淘宝买的),PCB板算是成品,我的能力暂时做不出来,请老师谅解!(pcb板只是焊上了芯片和贴片电阻)。
此次所做光立方为8*8*8的为3d8s光立方,大体介绍 如下:
3.1
硬件:
光立方驱动板(PCB板),Arduino主控板(也可用我们上课用的Arduino uno
板!),US B数据线,512个3mm雾面蓝色led,另外用四个led做驱动板的垫脚!。
硬件上的重点是512个led的焊接!焊接方法大体如下:
1.需要自制一个led搭接板,尺寸为22.86*22.86,分为六十四个格,点与点的间距为2.9。
3.2
光立方的点阵部分,步骤:
(1)先把512个LED,负级全部弯成90度
(2)摆到搭建模版上,进行负极 与 负极间的焊接,一共是8列。
(3) 歪曲正极90度,进焊接,一共7列。(此为一层,此焊法,共焊8层!)
3.3
焊接注意事项:
焊好的led点阵插到PCB板上用上位机led全亮指令,测试。
3.4
软件:
用Arduino编程软件编程,也可利用上位机实现LED的焊接,把2个LED的负极焊接在一起(注意焊接时候速度要快,要不然温度会损害LED.还有就是LED的负
极不要碰到正极)。
弯曲的正极,要和负极间有一定的距离。
全部的正极弯曲成 90度,至于负极的上层。 注意!只要弯曲7列就可以了,最后一列不用弯曲。(最后用来连接层用的)
测试led点阵,用上位机测试,将led的变幻(此方法不需要编程)。
3.5
整体框图
4 系统硬件
4.1
CPU:
微处理器的英文缩写是CPU,即中央处理单元,是计算机的核心部分,计算机完成的每一件工作,都是在它的指挥和干预下完成的。计算机配置的CPU的型号实际上代表着计算机的的基本性能水平
4.2
LED灯:
即发光二极管,是一种半导体固体发光器件,它是利用固体半导体芯片作为发光材料,当两端加上正向电压,半导体中的载流子发生复合引起光子发射而产生光。LED可以直接发出红、黄、蓝、绿、青、橙、紫、白色的光。
4.3
PCB板:
本项目所需是蓝色LED灯。
就是印刷电路板(Printed circuit board,PCB)。它几乎会出现在每一种电子设备当中。如果在某样设备中有电子零件,它们都是镶在大小各异的PCB上的。除了固定各种小零件外,PCB的主要功能是提供上头各项零件的相互电气连接。
随着电子设备越来越复杂,需要的零件自然越来越多,PCB上头的线路与零件也越来越密集了。裸板(上头没有零件)也常被称为\"印刷线路板Printed Wiring Board(PWB)\"。板子本身的基板是由绝缘隔热、并不易弯曲的材质所制作成。在表面可以看到的细小线路材料是铜箔,原本铜箔是覆盖在整个板子上的,而在制造过程中部份被蚀刻处
掉,留下来的部分就是变成网状的细小线路了。这些路被称作导线(conductor partern)
或称布线,并用来提供PCB上零线的电路连接。
通常PCB的颜色都是绿色或棕色,这是阻焊漆(solder mask)的颜色。是绝缘的防护层,可以保护铜线,也可以防止零件被焊到不正确的地方。在阻焊层上还会印刷上一层丝网印刷面(silk scrccn)。通常在这上面会印上文字符号(大多是白色的),以标示出各零件在板子上的位置。丝网印刷面也被称作图标面(legend)。
4.4
Arduion板:
Arduino是一块基于开放源代码的USB接口Simple i/o接口板(包括12通道数
字GPIO,4通道PWM输出,6-8通道10bit ADC输入通道),并且具有使用类似Java,C语言的IDE集成开发环境。
4.5
Arduino uno R3板:
Arduino UND是Arduino USB接口系列的最新版本,作为Arduino的平台的参考标准模板。UND的处理器核心是ATmega328,同时具有14路数字输入/(其中6路可作为PWM输出),一个16MHZ晶体振荡器,USB口,一个电源插座,一个ICSP header和一个复位按键。
4.6 缩小版uno控制模块:
基于arduino uno模块下的缩小版的控制模块
4.7 通信协议模块:
基于arduino uno模块下的缩小版的控制模块,此模块已写入通信协议,切不可 写
入任何程序!作为用电脑端控制软件空的中间传输条件!
5 系统软件设计
上位机、led edit 控制软件,led gameserver 游戏控制软件。本次所用的三个软件必须在通信 协议模块的配合才能使用
5.1
上位机:
5.2
led edit 控制软件:
5.3 led gameserver 游戏控制软件:
5.4 arduino 编程软件:
6 整体性测试及所遇问题
6.1
整体搭建完成以后的测试
1 整体搭接完成以后,在通信模块的配合之下,通过电脑用上位机软件,进行整体
测试。
2 用上位机软件测试方便快捷,如果搭接有问题,可以及时发现,及时纠正。 3 测试完成以后就可以利用控制模块进行动画效果的显示
6.2
调试中遇到的问题
1. 焊接的时候烙铁温度调的太高,温度过高,导致二极管的阻抗改变,所以出现了问题,用表量了一下被烧穿了,总共换下了20多个坏掉的LED灯。
2. 点亮LED时,第四行一竖排都不亮,第二行一竖排只有两个亮,第二竖排是因为焊接的不牢断开了,第四排是驱动模块引脚虚焊。
3. 在利用外接 arduino uno 板控制时,出现无法控制现象,解决方法为,去掉通信模块,单独控制。
4. 利用电脑软件和通信模块控制时,出现频闪现象,经检查为通信模块受损所致。 5. 由于焊接原因和各模块之间的频繁切换,导致光立方点阵的灯出现受损现象,经更换效果正常
7 设计总结
今年我们开的课程与以后的工作有着紧密的关联,这一学期我们进行了为期两周的单片机实训,它是对我们所学知识的全面总结和综合应用,有为今后走向社会的实际操作应用铸就了一个良好的开端。
这次实训我们组选择的实训选题是:LED光立方景观灯,基于单片机的8*8*8的光立方的设计。本次的设计预期要求:LED显示屏各点亮度均匀、充足,可显示或图形和简单文字、数字,而且显示的图形、文字、数字显示稳定、清晰无干扰。图形、文字、数字显示有静止、移入、移出等显示方式。
为了完成这些预期要求,我查阅了很多资料,不断向老师、同学请教,以确保设计的电路系统完整,能实现最完美的系统功能。经过这几个月的学习,我们组吧Arduion板与光立方连接起来。没有吧之前的预想全都是实现,但是我们已经很努力了。
总的来说这次的实训完成我认为很成功,不仅学到了许多课本上学不到的知识,提高了我们的动手能力,512个LED等的初期制作,让我们学会了仔细认真有耐心的完成一件事,在焊接过程中我们懂得了动手能力的重要性,在这次实训中丰富了我们的创新和创造的思维。有点缺点就是时间有限不能更加深入和扩展学习和研究、对C语言的了解不是很透彻,不能修改程序。本来想加上蓝牙的,可是加上了不会给连接好就放弃了, 这次实训设计的经历让我对Arduion单片机的一些特征、性能,以及应用及原理有了深刻的了解,真正做到了学有所得、学有所用,可以说获益匪浅。
但是总的来说,由于我们的英文水平有限,以前也没接触过C语言,更没深入了解C语言,所以我们单片机项目的程序很难读懂,导致这次的项目程序没有修改好,这是很大的遗憾所以在设计思路和实现功能上难免有些不足之处。
实训虽然结束了,但是学习仍在继续。从这次的实训过程中,我真正的意识到,在以后的学习中,要理论联系实际,把我们所学的理论知识用到实际当中,实践是检验真理的唯一标准。我们专业的学学习更应如此,不仅要有丰富的理论知识,还要有丰更新,进行补充。富的理论知识,还要有很强的动手能力,只要理论实践并重,专业水平才能提高,还有就是小组合作的团结精神,这就是在这次实训中最大的收获,在今后的学习生活中,不断对自己所学的知识中不断对自己所学的知识进行更新,进行补充。
8 致 谢
百度百科 圣元电子论坛
9 参考文献
10 附录
6.3 设计实物图效果图
10.2 程序清单
10.3 电路图
因篇幅问题不能全部显示,请点此查看更多更全内容