毕业设计光立方答辩共22页文档
毕业答辩-2 (3)
输入您的标题
输入您要表达的内容文字,具体项目输入您要表达的内容文字,具体项目输入您要表达的内容文字,具体项目
A
B
C
标题文字添加
Please write the prompt phrase according to the actual content of the page chapter
1
2
3
输入您的内容,请简要说明,言简意赅,本模板所有文字和图片都可以修改,谢谢您的使用。输入您的内容,请简要说明,言简意赅,本模板所有文字和图片都可以修改,谢谢您的使用。
标题文字添加
Please write the prompt phrase according to the actual content of the page chapter
输入您的标题
输入您要表达的内容文字,具体项目输入您要表达的内容文字,具体项目输入您要表达的内容文字,具体项目
输入您的标题
输入您要表达的内容文字,具体项目输入您要表达的内容文字,具体项目输入您要表达的内容文字,具体项目
毕业设计论文答辩模板
答辩学生:XXX
指导老师:XXX
Input your relevant thesis title, school name and other relevant information
目 录
CONTENTS
PART01
绪论
Please enter the relevant title prompt of introduction
标题文字添加
Please write the prompt phrase according to the actual content of the page chapter
毕业设计(论文)-基于单片机的光立方的设计
科技学院本科毕业设计(论文)题目基于单片机的光立方的设计学生王德敏专业班级 08 电子科学与技术1班学号 200831011院(系)电气工程学院指导教师(职称) 朱小会(讲师)完成时间 2012 年05月18日科技学院毕业设计(论文)任务书题目基于单片机的光立方的设计专业电子科学与技术学号 200831011 王德敏主要容、基本要求、主要参考资料等:一、主要容1.设计方案的选择和方案说明;2.光立方的硬件构成;3.光立方的单片机编程;4.设计并绘制电路原理图;5.制作实物并调试电路;6.撰写论文;7.撰写文献综述和论文。
二、基本要求1.论文容充实,有理有据,条理清晰。
2.设计制作一8*8*8的三维的发光二极管显示方阵,能够实现对每一个发光二级管实现控制。
控制显示输出至少二十种显示效果。
3.研究数据表形成规律,并初步确定算法。
三、主要参考资料1.林占江.电子测量技术.:电子工业,2011.2.童诗白.模拟电子技术基础.:高等教育,2006.3.景波.Prote199SE应用与实例教程.:人民邮电,2009.4.勇.Multisim电路仿真入门与进阶.:科学,2005.5.虎.微机原理与接口技术.:电子工业,2008.6.毅刚.单片机原理及应用.:高等教育,2003.完成期限: 2012年5 月17日指导教师签名:专业负责人签名:年月日注:课题来源要填写明确(如教师拟定、学生建议、某企事业单位项目等)课题类型:(1)A—工程设计;B—技术开发;C—软件工程;D—理论研究;E—制作(作品)(2)X—真实课题;Y—模拟课题;Z—虚拟课题;要求(1)、(2)均要填,如AY,BY等。
基于单片机的光立方的设计摘要本设计制作出一个三维立体显示图案的LED光立方。
本产品不仅可以像发光二极管点阵一样显示平面的静态或动态画面,还可以显示立体的静态或动态画面,打破了传统的平面显示方案。
同锁存器/8*8*8/LED显示时又增加了显示的花样和立体图案显示效果,可以广泛用于信息显示和各种装饰显示,为将来显示技术的进步和发展指导了方向,光立方显示比发光二极管点阵更具有视觉效果,而且画面图案更加非富多彩。
毕业答辩通用模板
1 添加标题 3 添加标题
添加标题 2 添加标题 4
理论分析—对比借鉴 数据分析—总结归纳 提出建议—实践检验
理论分析—对比借鉴 数据分析—总结归纳 提出建议—实践检验
数据分析
ALTERNATIVE
03 ALTERNATIVE 02 ALTERNATIVE 01
15%
Option Text
30%
Option Text
5
点击此处添加文本 点击此处添加文本
文献综述
现状分析
text
发展过程
点击此处添加文本
text
点击此处添加文本
text
01
02
03
04
05
text
点击此处添加文本
text
点击此处添加文本 点击此处添加文本
点击此处添加文本 点击此处添加文本
点击此处添加文本 点击此处添加文本
存在问题
问题1 问题3
问题2
目前,我国XX已基本实现了自动化生产,但是工件表面质量检测技术, 仍然停留在人工检测阶段, 较进口的生产线落后[2-4]。人工检测工件质量问题, 分拣速度慢,无法与自动化 的工件生产线相配套;其准确率也依赖于质检工人 的熟练程度和主观判断, 容易出错;同时工人劳动强度大,生产成本也随之增 加。
研究意义
66%
Option Text
输入标题
点击此处添加文本
5 4.5
4 3.5
3 2.5
2 1.5
1 0.5
0 1
数据分析
用户分析
2
3
4
系列1 系列2
点击此处添加文本
运用研究
点击此处添加文本
1
毕设计答辩模板范文
毕设计答辩模板范文《毕设答辩模板范文》一、前言尊敬的评委老师们,各位教师、同学们,大家下午好!首先感谢各位评委老师抽出宝贵的时间参加我的毕业设计答辩。
我是XXX,XXX专业的一名毕业生,今天非常荣幸能够站在这里与大家分享我的毕业设计成果,希望能得到各位评委的认可和宝贵的意见。
二、研究背景与意义在这个信息爆炸的时代,互联网和移动技术的飞速发展,人们对于信息的获取和交流变得更加迅捷和方便。
然而,随着网络的深入渗透,信息安全问题也日渐突出。
为了应对这一挑战,我选择了《xxx》作为我的毕业设计课题,通过系统的研究与实践,提出了一种可行的解决方案。
三、研究内容及方法1. 研究内容在本项目中,我主要研究了xxx,并选择了xxx作为我的切入点,希望通过xxx来解决xxx的问题。
2. 研究方法为了达到我的研究目标,我采用了xxx方法进行实验和分析。
具体而言,我设计了xxx,并进行了xxx实验和数据收集,然后通过xxx的处理和分析,得出了结论。
四、研究成果与创新点通过我的努力和不懈的实践,最终取得了一些研究成果与创新点。
具体来说,我实现了xxx,并通过xxx的对比实验,证明了我的方法在解决xxx问题上的优越性。
五、实验结果与分析通过对实验数据的收集和处理,我发现xxx对于xxx问题的解决是非常有效的,并且在性能上具备了很大的优势。
具体数据和分析结果,请评委老师们查看我的实验报告。
六、研究的局限性与展望在这个项目中,我也发现了一些不足之处。
具体来说,我在xxx方面还存在一些局限性,未能完全解决所有问题。
为此,我提出了一些对未来研究的展望和改进的方向,希望有更多的同学们可以继续深入研究,完善我的方法并解决这些问题。
七、总结与感谢通过这段时间的努力和学习,我得到了很多的收获和成长。
感谢我的指导老师对我的帮助和指导,感谢各位评委老师和同学们的聆听。
也希望我的毕业设计成果能够给大家带来一些启示和启发。
最后,谢谢大家!请各位评委老师提问。
基于STC51单片机光立方设计与实现
毕业论文(设计)题目:基于STC51单片机的光立方设计与实现**:**学号:**********层次:本科专业:软件工程班级: 12级(13)班指导教师:***独创性声明一、本论文是本人独立完成;二、本论文没有任何抄袭行为;三、若有不实,一经查出,请答辩委员会取消本人答辩资格。
承诺人(签名):年月日摘要本设计使用51系列的单片机STC15F2K60S2作为整个设计的控制,每层的64个LED通过层共阴的形式连接起来。
每束的8个LED通过共阳的形式连接起来。
使用74HC593控制各束LED的阳极,使用ULN2803控制各层的阴极。
组成一个由512个LED、规格为8*8*8的立方体。
同时介绍了STC15F2K60S2、74HC573、ULN2803的使用方法及选用原因。
同时介绍了在调试过程中,遇到的软、硬件方面的问题以及解决方法。
对光立方的原理进行了详细的阐述,并详细的介绍了光立方在应用方面的意义。
关键词光立方;74HC593;STC15F2K60S2;ULN2803;LEDSummary This design uses 51 series microcontrollers STC15F2K60S2 as the control of the entire design, form each of 64 LED by connecting the common cathode layer. Each bundle of eight LED connected through common anode form. Use 74HC593 control each beam LED anode, cathode layers using ULN2803 control. Composition consisting 512 LED, specifications for the cube 8 * 8 * 8. Also introduced STC15F2K60S2,74HC573, ULN2803 to use and selection reasons. Also introduced the problem in the debugging process, encountered software and hardware and solutions. Light cube principle set forth in detail, and describes in detail the significance of light cube applications.Keywords light cube;74HC593;STC15F2K60S2;ULN2803;LED目录1 前言 (1)1.1研究的背景 (1)1.2研究的意义 (1)1.3研究内容和结构 (1)2 总体设计 (2)2.1 系统的设计方案及工作原理 (2)2.2 各模块元件选择 (3)2.2.1 控制模块元件的选择 (3)2.2.2 驱动模块元件的选择 (3)2.2.3 显示模块元件的选择 (4)3 硬件电路设计与实现 (4)3.1 硬件电路布局 (4)3.2 控制模块电路的设计 (5)3.2.1 单片机的说明及引脚规划 (5)3.2.2 电源电路的设计 (6)3.2.3 串口选择电路的设计 (6)3.2.4 程序下载及串口通信电路的设计 (7)3.3 驱动模块电路的设计 (7)3.3.1 ULN2803的说明及引脚规划 (7)3.3.2 74HC573的说明及引脚规划 (8)3.4 显示模块电路的设计 (9)3.5 光立方搭建方法 (9)3.5.1 弯折LED的引脚 (9)3.5.2 光立方的焊接 (11)3.5.3 元器件的焊接 (13)4 软件设计 (13)4.1显示程序的设计 (14)4.2 光立方的显示数据 (15)4.2.1 内置显示数据 (15)4.2.2 串口接收显示数据 (17)4.2.3 显示数据来源的选择 (18)4.3 显示数据的获取 (19)5 测试和问题分析 (20)6结论 (20)附录 (21)参考文献 (23)致谢语 (24)1 前言1.1研究的背景在高速的信息、商业发展过程中,LED点阵广告显示器得到了广泛的应用,LED 点阵显示屏已逐步取代传统的大尺寸纸质广告,在大街小巷常见的LED点阵显示屏都得益于LED灯的发明。
炫动光立方-答辩-
74HC573和 ULN2803组成 的驱动电路
3
硬件设计
模块组成
STC12C5A60S2最小系统 64灯控制显示模块 层控制模块 下载口模块 四角电源指示灯模块
控制8个573
控制573选通
控制2803选通
3
硬件设计 STC12C5A60S2最小系统
3
硬件设计
64灯控制显示模块
(3)LED的驱动方式的选择
方案一:74HC593和74LS138组成的驱动电路。 方案二:SM16126和74HC138组成的驱动电路。 方案三:74HC573和ULN2803组成的驱动电路。
采用74HC573暂存的方法,来分别把8个灯的亮灭信息 储存,74HC573的64个输出引脚控制前面所述每一个面 的8个灯。而ULN2803控制灯的每一个层,每个573输出 的引脚对应的按顺序的X轴的8个引脚。 由于光立方需要输出足够大的电流,而74H573能够满足 要求,故采用方案三。
6
数据处理
音频模式:所有二极管输入信号的功率高低带动每层二极管
得发亮,我们用分线器分别接到音响和光立方,检测到模式工作 正常。
动画模式:所有动画均按照程序所设计的显示出来,有倒计
时,沙漏,波浪灯,且灯光均匀稳定按下“退出”可退回到模式选 择。
夜灯模式:所有二极管稳定且正常发光,不刺眼。 上位机模式:可实现电脑控制光立方显示图形和动画,工
8
作品图片
The end
请各位老师批评指正!
Thank you!
5
系统调试
调试收获: 在软硬件测试过程中让我们对原先设计的电路的原理及功能进一步熟悉 ,并对各电路模块和相关的芯片联合工作更加了解。在这个调试的过程 专业知识起到了温故知新的作用。
立体风毕业答辩通用模板 (1)
添加标题内容
单击此处输入你的正文,文字是您思想的提炼,为了最终演示发布的良好效果,请尽量言简意赅的阐述观点;
添加标题内容
选题的背景与意义
Background And Significance Of The Topic
XXX学院电子信息工程XX班
YOUR LOGO
求实创新、立德树人
20XX.XX.XX
单击此处输入你的正文,文字是您思想的提炼,为了最终演示发布的良好效果
添加标题内容
单击此处输入你的正文,文字是您思想的提炼,为了最终演示发布的良好效果
添加标题内容
单击此处输入你的正文,文字是您思想的提炼,为了最终演示发布的良好效果
研究成果应用
单击此处输入你的正文,文字是您思想的提炼,为了最终演示发布的良好效果,请尽量言简意赅的阐述观点;
研究成果应用
单击此处输入你的正文,文字是您思想的提炼,为了最终演示发布的良好效果,请尽量言简意赅的阐述观点;
研究成果应用
单击此处输入你的正文,文字是您思想的提炼,为了最终演示发布的良好效果,请尽量言简意赅的阐述观点;
研究成果应用
单击此处输入你的正文,文字是您思想的提炼,为了最终演示发布的良好效果,请尽量言简意赅的阐述观点;
研究成果应用
第四单元
论文总结与致谢
Summary And Thanks
XXX学院电子信息工程XX班
YOUR LOGO
求实创新、立德树人
20XX.XX.XX
论文总结与致谢
Summary And Thanks
单击此处输入你的正文,文字是您思想的提炼,为了最终演示发布的良好效果,请尽量言简意赅的阐述观点;
中期答辩
那么对于负极我们怎么控制呢, 这里我们可以通过共连阴极的方 法控制,就是把每层led的阴极都 连在一起,八层就有八个接口, 这八个接口通过uln2803控制接在 单片机的另外八个接口上
其实我们就是用单片机的16 个I/O接口,通过扩展得到了 64+8个接口,这样Байду номын сангаас可以把 512个led灯给控制好了
1.将LED从点到线的搭建
准备材料首先要找一块万用板,这样就 可以保持灯与灯之间的距离保持相等,在 这里我们用的是白发蓝的led灯,长正短负 ,我们采用的是共阴的连接方法,所以要 把灯的形状折成90度,然后把八个这样的 灯焊接好。
2.将LED从线到面的搭建
接下把焊好的64个共阴的led灯的阳极相连 如图3-16所示,相连后就得到一个8*8的灯 面如图3-17,注意:在焊接过程中会产生 静电,所以要求电焊铁要接地,焊接完后 要用万用表测量每个灯是否正常,是否存 在虚焊和击穿。
光立方的研究意义
这次毕业课题的设计抛弃了传统LED的二维显示 ,改为了点阵的三维立体显示,显示的更加绚丽 多彩,强烈冲击了人们的视觉,此外本次运用了 更加优秀的单片机STC12C5A60S2替代89C51, 从而使系统的功能变得更加强大和更强的驱动能 力,在此次的毕业课设设计中要求把512个LED 灯通过共阴的形式相连,这就要求对焊接技术要 求非常严格,灯的折叠形状必须严格一样,而且 在焊接时要尽量避免对LED的静电干扰,焊接时 间也要严格控制,此次的制作和设计对智能化产 品实现经济和商业的价值具有积极地作用。
虽然在动手做这个设计之前我也是做好各方面准备,可是在实 施的时候遇到的问题还是使我料想不到,各种软件的使用还有 贴片元件的焊接都是很考验基本功的,有些不懂的我就在网上 看相关视频,到各种DIY论坛请教这方面的“大神”,可以说 我已经下载了网上所有关于光立方的资料,这过程很辛苦,有 时一天就为了解决一个问题,从早找到晚,比如找74hc595d的 pcb封装图,或者stc12c5a60s2的原理图和封装图。对于软件 模块要求的就更高了,软件的书写规范和字库的创建,都是一 个不小的工程,这个系统中用到的延时程序,每一帧的时间计 算,扫描的频率和灯的亮度,都要细细计算,编写调试再编写 再调试,这样反复好多次才终于编写出一个稳定的程序。 总的来说,做这个设计确实累,可是当光立方正常工作时看到 它显示出绚丽的动画时,付出的这一切都值得了,在制作过程 中得到的经验和学到的知识是扎实的,在制作和研究过程中觉 得特别的充实,理论知识得到了巩固,知识再也不是仅仅停留 在书面上了,动手能力也加强了很多,现在懂得了自己查资料 ,自己分析问题解决问题,可以说这次的毕业设计做的非常的 有意义,受益匪浅。
毕业设计论文答辩参考模板wm
准备问题和答案
问题类型
针对研究内容、方法、结果和结论等 不同方面的问题进行准备。
答案组织
清晰、有条理地组织答案,包括对问 题的直接回应、相关背景信息的提供 以及个人观点和结论。
注意事项和技巧
保持冷静
面对问题时保持冷静,不要紧张,以便更好地理解和回答问题。
倾听问题
认真倾听问题,不要急于回答,确保完全理解问题后再作答。
结果分析和讨论
结果解释
对实验结果进行解释,分析其产生的原因和意义。
对比分析
将实验结果与前人研究结果进行对比,分析异同点。
结果讨论
对实验结果进行深入讨论,探讨其可能的应用和推广价值。
研究的局限性和未来工作
局限性分析
分析研究中存在的局限性,如样本量不足、实验条件 限制等。
改进建议
提出改进实验设计和数据分析的建议,以提高研究的 准确性和可靠性。
自我评价和反思
自我评价
对个人在研究过程中的表现进行 客观评价,包括研究能力、团队 协作、解决问题的能力等。
反思与改进
对研究方法和过程进行深入反思, 提出针对性的改进措施,以提高 未来的研究质量。
收获与成长
总结个人在研究过程中的收获和 成长,包括学术能力、思维方式 和综合素质的提升。
对未来研究的建议
研究方向展望
根据研究领域的发展趋势和当前研究的不足,提出未来研究的可 能方向和展望。
研究方法改进
针对现有研究的局限性和不足,提出可行的研究方法改进方案, 以提高研究的科学性和可靠性。
跨学科合作与交流
倡导跨学科合作与交流,以拓展研究视野和促进学术创新,同时 为未来的学术发展提供更多机会和可能。
05 问答环节
03
简约立体毕业答辩模板
点击此处添加标题
01
国内外研究现状
国内现状
论文就是用来进行科学研究和描述科研成果的文章, 简称之为论文。它既是探讨问题进行科学研究的一
种手段,又是描述科研成果进行学术交流的一种工
具。
国外现状
论文就是用来进行科学研究和描述科研成果的文章, 简称之为论文。它既是探讨问题进行科学研究的一 种手段,又是描述科研成果进行学术交流的一种工 具。
反复验证
请在这里添加你的文字请在这里 添加你的文字
导师指导
请在这里添加你的文字请在这里 添加你的文字
理论分析
请在这里添加你的文字请在这里 添加你的文字
数据计算
请在这里添加你的文字请在这里 添加你的文字
03
选题研究结果
add your words here
结果二
添加标题
请输入您的文字对 目标进行说明请输 入您的文字对目标 进行说明请输入您 的文字对目标进行 说明请输入您的文 字对目标进行说明
02
选题方案设计
关键词
论文就是用来进行科学研究和描述科研成果的文章,简称之为论文。它既是探讨问题进行 科学研究的一种手段,又是描述科研成果进行学术交流的一种工具。
方案设计
论文就是用来进行科学研究 和描述科研成果的文章
方案1
方案3
方案2
03
选题研究方法
这是小标题
文艺让GDGDFG范文 艺让GDGDFG范文艺 让GDGDFG范
意义1
意义2
这是小标题
文艺让GDGDFG范文艺 让GDபைடு நூலகம்DFG范文艺
这是小标题
文艺让GDGDFG范文艺
让GDGDFG范文艺
意义3 意义4 这是小标题
电子信息专业毕业设计3D光立方
摘要光立方是一个长、宽、高由8×8×8 个LED 灯组成的真实3D 立方体显示器。
其最大的特点,就是带给观赏者立体的超酷的3D视觉体验。
因此各大也充斥着各种各样的光立方版本。
但是这各种版本的光立方的制作方法都很复杂,而且成本也很高,而本设计与之相比则制作简单精美,成本低廉。
为保证光立方精美的外形,本设计还提供了一种光立方的制作模板,以确保将动手能力导致的美观差异降到最低。
为降低其成本,本设计采用了STC12C5A60S2单片机,这种单片机自带有A/D转换模块;使用的锁存器是常用的SN74HC573。
这样可以保证在降低制作成本的情况下,毫不影响作品的美观;再加上显示效果极佳的高亮雾面的蓝色方形LED,硬件电路无需添加额外的驱动和上拉电阻,即可实现其强大的功能:除了能显示3D 图形,还可以支持多级亮度和速度调整,允许用户自拓展音频显示功能,就像音乐显示器一样。
用户还可以在不改动硬件电路的情况下设计出自己喜欢的的自定义图形。
这些充分体现了制作成本低、显示效果好、功能完善的特点。
最后,经过软硬件调试,解决了一些硬件电路短路,程序报错的问题,完美地实现了多种图形动态显示,流畅的图形变换和音频显示的多种功能。
关键词:光立方制作模板音频显示 A/D转换ABSTRACTLight-cube is a long, wide, high is composed of 8 x 8 x 8 leds true 3 d volumetric display. Its biggest characteristic, is to bring the viewer stereo cool 3 d visual experience. So each big web site is filled with all kinds of cubic light version.But all versions of this light cubic method is very complex, and the cost is also high, and compared with this design is beautifully simple and low cost.In order to ensure the exquisite cubic shape, this design also provides a light cube production template, to ensure that the ability to appearance difference to a minimum.To reduce its cost, this design USES STC12C5A60S2 MCU, the MCU built-in A/D conversion module; Use the latch is SN74HC573 in common use. So that in the case of lower production costs, not effect the beauty of the works; Plus showed excellent results highlighted square LED fog below in blue, don't need to add additional hardware circuit drive pull up resistance, and its powerful functions can be realized: in addition to display 3 d graphics, can support multiple levels of brightness and speed adjustment, allows the user to expand the audio display function, like music display. Users can also in the case of do not change the hardware circuit design their own custom graphics. These fully reflect the production of low cost, good effect of display, the characteristics of the function is perfect.Finally, after the hardware and software debugging, solve some of the short circuit hardware circuit, program error, perfect the dynamic variety of graphic display, smooth graphics transform and audio display a variety of functions.Key words: light-cube making stencil audio-display A/D conversion目录1、引言01.1研究意义 01.2研究现状 (1)1.3该论文的容安排 (1)2、光立方的设计方案 (1)2.1本设计基本功能和特点 (1)2.2拓展功能 (2)2.3总体设计方案 (2)3、硬件设计 (4)3.1 单片机控制电路设计 (4)3.1.1单片机选型 (4)3.1.2单片机控制电路 (5)3.2 驱动电路设计 (6)3.2.1 负极驱动芯片 (7)3.2.2 正极驱动芯片 (9)3.3显示电路设计 (10)3.3.1各层电路设计 (10)3.3.2 LED地址对照表 (11)3.4实物效果图 (13)4、软件设计 (15)4.1 自定义头文件 (15)4.2电脑端的ISP控制软件 (18)4.3程序流程图 (19)4.4 LED显示核心思想 (20)4.5显示部分测试结果 (22)5、硬件焊接与调试 (23)5.1 本设计所需材料 (23)5.1.1LED灯 (23)5.1.2 74HC573芯片 (23)5.1.3自制双声道音频插头 (23)5.1.4 其他材料 (24)5.2光立方LED灯焊接方法与步骤 (25)5.3调试中的问题和解决方法 (27)5.4调试结果 (28)6、总结 (30)致 (30)参考文献 (31)附录 (32)1、引言1.1研究意义LED射灯是指发出的光线是方向性的(directional)的LED灯泡, 主要类型有MR16,GU10, PAR series.LED球泡灯是指发出的光线为发散性的LED灯泡, 主要类型为:E27 base.按照功率来分, LED灯泡可分为: 小功率(主要为5mm LED生产的)和大功率(主要1 W, 3 W ,甚至5 W LED生产的)。
光立方毕业设计论文
光立方毕业设计论文光立方毕业设计论文引言:在当代科技快速发展的时代背景下,光立方作为一种新兴的显示技术,吸引了越来越多的关注。
本篇论文将就光立方的原理、应用和未来发展进行探讨,并提出一种基于光立方的创新设计方案。
一、光立方的原理光立方是一种基于全息成像技术的三维显示技术,其原理是利用光的干涉和衍射现象实现对光场的再现。
通过将光场信息记录在光敏材料上,并利用激光光束对光敏材料进行读取,可以将记录的光场再现为真实的三维图像。
光立方的原理使得我们可以以全息的方式呈现物体的三维形态,使观察者能够从不同角度感受到物体的真实立体感。
二、光立方的应用1. 教育领域光立方可以为学生提供更加直观、生动的三维教学内容。
通过在课堂上使用光立方,学生可以更好地理解抽象的概念,提高学习效果。
例如,在生物学课程中,通过使用光立方展示细胞结构和分子模型,学生可以更加深入地了解细胞的组成和功能。
2. 医学领域光立方在医学领域的应用也非常广泛。
例如,在医学图像诊断中,光立方可以提供更加清晰、逼真的三维影像,帮助医生更准确地判断病变的位置和程度。
此外,光立方还可以应用于手术模拟和培训,提高医生的操作技术和安全性。
3. 艺术与文化领域光立方在艺术与文化领域的应用也十分有潜力。
通过利用光立方技术,可以创作出更加真实、立体的艺术作品。
例如,在博物馆展览中,利用光立方展示文物和艺术品,可以使观众更好地欣赏和理解作品的细节和魅力。
三、光立方的未来发展光立方作为一种新兴的显示技术,还有很大的发展空间。
未来,光立方有望在以下几个方面实现进一步的突破和创新:1. 分辨率提升目前,光立方的分辨率还有待提高。
随着技术的不断进步,我们可以预见,未来的光立方将能够呈现更加清晰、细腻的图像,使观众能够更加真实地感受到物体的立体效果。
2. 投影范围扩大目前,光立方的投影范围相对较小,限制了其在实际应用中的使用。
未来,我们可以通过改进光立方的投影系统,使其能够实现更大范围的投影,提供更广阔的观看体验。
光立方的研究与制作_答辩
指导教师: 王 彩 霞 答 辩 人: 卢 鹏 飞 专 业: 自 动 化
目录
1 2 3
设计思路 光立方工作原理 电路原理图 实物制作过程 整体效果
4
5
6 6
目的及意义 Purpose and meaning 1:单片机技术的发展 2:光立方良好的市场
1:增加光立方的功能,更具个性化 2:作为其他3D显示技术开发的基础
硬件电路设计
74HC573拓展I/O口
控制模块
STC12C5A60S2控制核心
UNL2803驱动电路
显示模块
开始 初始化
程序流程设计
循环模式 读锁存数据 整体扫描
上位机模音乐喷泉
结束
光立方工作原理
8*8*8光立方采用的是层共阴(即每一层LED的 阴极都连接在一起),束共阳(即每一束LED的阳极 都连接在一起),然后通过74HC573和单片机的一组 I/O口来控制每一层和每一束,那么通过控制层和束, 每个LED就可以单独进行控制。 然后通过对LED的亮灭情况来组成不同的图案, 通过不同图案的组合来形成动态的图形,给人一种立 体的感觉。
然后,同样的 道理,焊接完这一面 后,再进行每个LED 的测试。
焊接好的8个LED灯面
焊接完每一面之后,
再进行整个光立方的整合,
首先将每个面都插好在底 座上,然后用去了皮的飞 线将各个层的阴极连接在 UNL2803输出端。
最后,将UNL2803的输出端与LED的每一层用 漆包线对应连接在一起硬件就大功告成了!
电路原理图
实物制作过程
首先,根据制作好的PCB 电路原理图,在自己的脑海 中大概形成元件的分布情况, 然后开始在万用板上安放主 要元器件,将元器件逐个焊 接。
答辩模板范文
答辩模板范文一、引言尊敬的评委们,各位同学们,大家好!我是今天的答辩人,感谢各位的到来和聆听。
今天我将就我的毕业设计进行答辩,并对我的设计结果和方法进行详细的介绍和解释,希望得到各位的指导和建议。
二、毕业设计概述1. 设计背景:在大学期间,我专注于某某领域的学习与研究,并对该领域的某一具体问题进行深入分析和研究。
2. 设计目标:我的设计目标是解决某一具体问题,提出一种有效的解决方案,并且对该方案进行实际的应用和验证。
3. 设计方法:通过对该领域已有的研究成果和相关文献的分析与综述,我确定了一种合理的研究方法,并进行了详细的实验和数据分析,以验证我的解决方案是否有效。
三、设计原理1. 原理概述:在我的设计中,我采用了一种特定的原理或方法,该原理或方法是根据已有的研究成果和理论基础进行选择和确定的。
2. 原理解释:通过对该原理的解释和说明,我希望能够让大家对我的设计思路和理论基础有一个清晰的认识和了解。
四、设计分析与结果1. 实验设置:在我的设计中,我详细描述了实验的设置,包括实验所用的材料、设备和实验流程等,以确保实验的可重复性和准确性。
2. 数据分析:通过对实验所得到的数据进行详细的统计和分析,我对我的设计方案的有效性进行了评估和验证,并提出了一些结论和发现。
3. 结果讨论:在这一部分,我将对实验结果进行详细的讨论和解释,并通过对结果的对比和分析,证明我的设计方案的优越性和独特性。
五、设计应用与展望1. 设计应用:通过对设计结果的评估和分析,我发现我的设计方案在某一具体领域具有一定的应用价值,并且可以解决该领域的某一具体问题。
2. 未来展望:在这一部分,我将对设计的未来发展进行展望,并提出一些建议和改进方案,以进一步完善和优化我的设计。
六、总结与感谢在我进行的整个设计过程中,我遇到了许多困难和挑战,但同时也学到了很多。
我希望通过我的答辩,能够向各位展示我所做的努力和成果,并且从各位的评价和指导中不断提高和进步。
光立方_毕业论文(含程序原理图实物图)
目录摘要 .......................................................................................................................................................... X XX 关键词 ...................................................................................................................................................... X XX 1绪论 . 02总体设计 (1)工作原理 (1)各模块方案选择与论证 (1)单片机主控制模块 (1)驱动模块 (1)显示模块 (1)图2-2 雾面乳型LED灯 (2)3 系统硬件电路设计与实现 (2)硬件电路设计 (2)单片机最小系统 (2)驱动模块的设计 (4)主程序设计 (8)系统调试 (9)硬件测试 (9)软件测试 (10)结果分析 (10)6结论 (11)Keywords (13)致谢语 (14) (16) (16)程序清单 (17)#include <> (17)#define uchar unsigned char (17)#define uint unsigned int (17)sbit p30 = P1^0; (17)sbit p31 = P1^1; (17)sbit p32 = P1^2; (17)sbit p33 = P1^3; (17)sbit p34 = P1^4; (17)sbit p35 = P1^5; (17)sbit p36 = P1^6; (17)sbit p37 = P1^7; (17)uchar display[8][8]; (17)/*rank:A,1,2,3,4,I,心,U*/ (17)uchar code table_cha[8][8]={0x51,0x51,0x51,0x4a,0x4a,0x4a,0x44,0x44,0x18,0x1c,0x18,0x18,0x18, 0x18,0x18,0x3c,0x3c,0x66,0x66,0x30,0x18,0xc,0x6,0xf6,0x3c,0x66,0x60,0x38,0x60,0x60 ,0x66,0x3c,0x30,0x38,0x3c,0x3e,0x36,0x7e,0x30,0x30,0x3c,0x3c,0x18,0x18,0x18,0x18,0 x3c,0x3c,0x66,0xff,0xff,0xff,0x7e,0x3c,0x18,0x18,0x66,0x66,0x66,0x66,0x66,0x66,0x7 e,0x3c}; (17)/*the "ideasoft"*/ (17)uchar code table_id[40]={0x81,0xff,0x81,0x00,0xff,0x81,0x81,0x7e,0x00,0xff,0x89,0x89,0x00,0xf 8,0x27,0x27,0xf8,0x00,0x8f,0x89,0x89,0xf9,0x00,0xff,0x81,0x81,0xff,0x00,0xff,0x09, 0x09,0x09,0x01,0x0,0x01,0x01,0xff,0x01,0x01,0x00}; (17)/*railway*/ (17)uchar code dat[128]={0x0,0x20,0x40,0x60,0x80,0xa0,0xc0,0xe0,0xe4,0xe8,0xec,0xf0,0xf4,0xf8,0xf c,0xdc,0xbc,0x9c,0x7c,0x5c,0x3c,0x1c,0x18,0x14,0x10,0xc,0x8,0x4,0x25,0x45,0x65,0x8 5,0xa5,0xc5,0xc9,0xcd,0xd1,0xd5,0xd9,0xb9,0x99,0x79,0x59,0x39,0x35,0x31,0x2d,0x29, 0x4a,0x6a,0x8a,0xaa,0xae,0xb2,0xb6,0x96,0x76,0x56,0x52,0x4e,0x6f,0x8f,0x93,0x73,0x 6f,0x8f,0x93,0x73,0x4a,0x6a,0x8a,0xaa,0xae,0xb2,0xb6,0x96,0x76,0x56,0x52,0x4e,0x25 ,0x45,0x65,0x85,0xa5,0xc5,0xc9,0xcd,0xd1,0xd5,0xd9,0xb9,0x99,0x79,0x59,0x39,0x35,0 x31,0x2d,0x29,0x0,0x20,0x40,0x60,0x80,0xa0,0xc0,0xe0,0xe4,0xe8,0xec,0xf0,0xf4,0xf8 ,0xfc,0xdc,0xbc,0x9c,0x7c,0x5c,0x3c,0x1c,0x18,0x14,0x10,0xc,0x8,0x4}; (17)/*railway 2*/ (17)uchar code dat2[28]={0x0,0x20,0x40,0x60,0x80,0xa0,0xc0,0xe0,0xe4,0xe8,0xec,0xf0,0xf4,0xf8,0xf c,0xdc,0xbc,0x9c,0x7c,0x5c,0x3c,0x1c,0x18,0x14,0x10,0xc,0x8,0x4}; (17)/*railway 3*/ (17)uchar code dat3[24]={0x00,0x01,0x02,0x03,0x04,0x05,0x06,0x16,0x26,0x36,0x46,0x56,0x66,0x65,0x 64,0x63,0x62,0x61,0x60,0x50,0x40,0x30,0x20,0x10}; (17)/*3p char*/ (17)uchar codex3f,0x1f,0x0e,0x18,0x3c,0x7e,0xff,0x18,0x18,0x18,0x18}; (17)/*initializtion (17)That is to initialize the program (17)It is write to set the timer in c52 mcu (17)So the program can renovate the led_3d_cube in fixed time use the interrupt function.*/ (17)void sinter() (17){ (17)IE=0x82; (17)TCON=0x01; (17)TH0=0xc0; (17)TL0=0; (17)TR0=1; (17)} (17)void delay5us(void) 误差 STC 1T (18){ (18)unsigned char a,b; (18)for(b=7;b>0;b--) (18)for(a=2;a>0;a--); (18)} (18)void delay(uint i) (18){ (18)while (i--){ (18)delay5us();}12t的mcu 注释这个延时即可 (18)} (18)/*To judge the num bit*/ (18)uchar judgebit(uchar num,uchar b) (18){ (18)char n; (18)num=num&(1<<b); (18)if (num) (18)n=1; (18)else (18)n=0; (18)return n; (18)} (18)/*To figure out the round number*/ (18)uchar abs(uchar a) (18){ (18)uchar b; (18)b=a/10; (18)a=a-b*10; (18)if (a>=5) (18)b++; (18)/*To figure out the absolute value*/ (18)uchar abss(char a) (18){ (18)if (a<0) (18)a=-a; (18)return a; (18)} (18)/*The function can comparat the character (18)And remove the big one to the back.*/ (18)void max(uchar *a,uchar *b) (18){ (18)uchar t; (18)if ((*a)>(*b)) (18){ (18)t=(*a); (18)(*a)=(*b); (19)(*b)=t; (19)} (19)} (19)/*The function is to figure out the max number and return it.*/ (19)uchar maxt(uchar a,uchar b,uchar c) (19){ (19)if (a<b) (19)a=b; (19)if (a<c) (19)a=c; (19)return a; (19)} (19)void clear(char le) (19){ (19)uchar i,j; (19)for (j=0;j<8;j++) (19){ (19)for (i=0;i<8;i++) (19)display[j][i]=le; (19)} (19)} (19)void trailler(uint speed) (19){ (19)char i,j; (19)for (i=6;i>=-3;i--) (19){ (19)if (i>=0) (19)display[j][i]=display[j][i+1]; (19)} (19)if (i<4) (19){ (19)for (j=0;j<8;j++) (19)display[j][i+4]=0; (19)} (19)delay(speed); (19)} (19)} (19)void point(uchar x,uchar y,uchar z,uchar le) (19){ (19)uchar ch1,ch0; (19)ch1=1<<x; (19)ch0=~ch1; (20)if (le) (20)display[z][y]=display[z][y]|ch1; (20)else (20)display[z][y]=display[z][y]&ch0; (20)} (20)void type(uchar cha,uchar y) (20){ (20)uchar xx; (20)for (xx=0;xx<8;xx++) (20){ (20)display[xx][y]=table_cha[cha][xx]; (20)} (20)} (20)/*The first variable is the distance from the midpoint. (20)The second is the layer (20)the third is the flash speed of the time between each two point. (20)The forth is the enable io,it controls weather draw or claen.*/ (20)void cirp(char cpp,uchar dir,uchar le) (20){ (20)uchar a,b,c,cp; (20)if ((cpp<128)&(cpp>=0)) (20){ (20)if (dir) (20)cp=127-cpp; (20)else (20)cp=cpp; (20)a=(dat[cp]>>5)&0x07; (20)b=(dat[cp]>>2)&0x07; (20)c=7-c; (20)point (a,b,c,le); (20)} (20)} (20)void line(uchar x1,uchar y1,uchar z1,uchar x2,uchar y2,uchar z2,uchar le) (20){ (20)char t,a,b,c,a1,b1,c1,i; (20)a1=x2-x1; (20)b1=y2-y1; (20)c1=z2-z1; (20)t=maxt(abss(a1),abss(b1),abss(c1)); (20)a=x1*10; (20)b=y1*10; (21)c=z1*10; (21)a1=a1*10/t; (21)b1=b1*10/t; (21)c1=c1*10/t; (21)for (i=0;i<t;i++) (21){ (21)point(abs(a),abs(b),abs(c),le); (21)a+=a1; (21)b+=b1; (21)c+=c1; (21)} (21)point(x2,y2,z2,le); (21)} (21)void box(uchar x1,uchar y1,uchar z1,uchar x2,uchar y2,uchar z2,uchar fill,uchar le) (21){ (21)uchar i,j,t=0; (21)max(&x1,&x2); (21)max(&y1,&y2); (21)max(&z1,&z2); (21)for (i=x1;i<=x2;i++) (21)t|=1<<i; (21)if (!le) (21)t=~t; (21)if (fill) (21){ (21)if (le) (21){ (21)for (i=z1;i<=z2;i++) (21){ (21)} (21)} (21)else (21){ (21)for (i=z1;i<=z2;i++) (21){ (21)for (j=y1;j<=y2;j++) (21)display[j][i]&=t; (21)} (21)} (21)} (21)else (21){ (22)if (le) (22){ (22)display[y1][z1]|=t; (22)display[y2][z1]|=t; (22)display[y1][z2]|=t; (22)display[y2][z2]|=t; (22)} (22)else (22){ (22)display[y1][z1]&=t; (22)display[y2][z1]&=t; (22)display[y1][z2]&=t; (22)display[y2][z2]&=t; (22)} (22)t=(0x01<<x1)|(0x01<<x2); (22)if (!le) (22)t=~t; (22)if (le) (22){ (22)for (j=z1;j<=z2;j+=(z2-z1)) (22){ (22)for (i=y1;i<=y2;i++) (22)display[i][j]|=t; (22)} (22)for (j=y1;j<=y2;j+=(y2-y1)) (22){ (22)for (i=z1;i<=z2;i++) (22)display[j][i]|=t; (22)} (22)} (22)for (j=z1;j<=z2;j+=(z2-z1)) (22){ (22)for (i=y1;i<=y2;i++) (22){ (22)display[i][j]&=t; (22)} (22)} (22)for (j=y1;j<=y2;j+=(y2-y1)) (22){ (22)for (i=z1;i<=z2;i++) (22){ (23)display[j][i]&=t; (23)} (23)} (23)} (23)} (23)} (23)void box_apeak_xy(uchar x1,uchar y1,uchar z1,uchar x2,uchar y2,uchar z2,uchar fill,uchar le) (23){ (23)uchar i; (23)max(&z1,&z2); (23)if (fill) (23){ (23)for (i=z1;i<=z2;i++) (23){ (23)line (x1,y1,i,x2,y2,i,le); (23)} (23)} (23)else (23){ (23)line (x1,y1,z1,x2,y2,z1,le); (23)line (x1,y1,z2,x2,y2,z2,le); (23)line (x2,y2,z1,x2,y2,z2,le); (23)line (x1,y1,z1,x1,y1,z2,le); (23)} (23)} (23)void poke(uchar n,uchar x,uchar y) (23){ (23)uchar i; (23)for (i=0;i<8;i++) (23){ (23)point(x,y,i,judgebit(n,i)); (23)void boxtola(char i,uchar n) (23){ (23)if ((i>=0)&(i<8)) (23){ (23)poke(n,0,7-i); (23)} (23)if ((i>=8)&(i<16)) (23){ (23)poke(n,i-8,0); (23)} (24)if ((i>=16)&(i<24)) (24){ (24)poke(n,7,i-16); (24)} (24)} (24)void rolldisplay(uint speed) (24){ (24)uchar j; (24)char i,a; (24)for (i=23;i>-40;i--) (24){ (24)for (j=0;j<40;j++) (24){ (24)a=i+j; (24)if ((a>=0)&(a<24)) (24)boxtola(a,table_id[j]); (24)} (24)delay(speed); (24)} (24)} (24)void roll_apeak_yz(uchar n,uint speed) (24){ (24)uchar i; (24)switch(n) (24){ (24)case 1: (24)for (i=0;i<7;i++) (24){ (24)display[i][7]=0; (24)display[7][6-i]=255; (24)delay(speed); (24)}; (24)break; (24){ (24)display[7][7-i]=0; (24)display[6-i][0]=255; (24)delay(speed); (24)}; (24)break; (24)case 3: (24)for (i=0;i<7;i++) (25){ (25)display[7-i][0]=0; (25)display[0][i+1]=255; (25)delay(speed); (25)}; (25)break; (25)case 0: (25)for (i=0;i<7;i++) (25){ (25)display[0][i]=0; (25)display[i+1][7]=255; (25)delay(speed); (25)}; (25)} (25)} (25)void roll_apeak_xy(uchar n,uint speed) (25){ (25)uchar i; (25)switch(n) (25){ (25)case 1: (25)for (i=0;i<7;i++) (25){ (25)line(0,i,0,0,i,7,0); (25)line(i+1,7,0,i+1,7,7,1); (25)delay(speed); (25)}; (25)break; (25)case 2: (25)for (i=0;i<7;i++) (25){ (25)line(i,7,0,i,7,7,0); (25)line(7,6-i,0,7,6-i,7,1); (25)delay(speed); (25)}; (25)for (i=0;i<7;i++) (25){ (25)line(7,7-i,0,7,7-i,7,0); (25)line(6-i,0,0,6-i,0,7,1); (25)delay(speed); (25)}; (26)break; (26)case 0: (26)for (i=0;i<7;i++) (26){ (26)line(7-i,0,0,7-i,0,7,0); (26)line(0,i+1,0,0,i+1,7,1); (26)delay(speed); (26)}; (26)} (26)} (26)void roll_3_xy(uchar n,uint speed) (26){ (26)uchar i; (26)switch(n) (26){ (26)case 1: (26)for (i=0;i<8;i++) (26){ (26)box_apeak_xy (0,i,0,7,7-i,7,1,1); (26)delay(speed); (26)if (i<7) (26)box_apeak_xy (3,3,0,0,i,7,1,0); (26)}; (26)break; (26)case 2: (26)for (i=0;i<8;i++) (26){ (26)box_apeak_xy (7-i,0,0,i,7,7,1,1); (26)delay(speed); (26)if (i<7) (26)box_apeak_xy (3,4,0,i,7,7,1,0); (26)}; (26)break; (26)case 3: (26)for (i=0;i<8;i++) (26){ (26)box_apeak_xy (0,i,0,7,7-i,7,1,1); (26)box_apeak_xy (4,4,0,7,7-i,7,1,0); (26)}; (26)break; (26)case 0: (26)for (i=0;i<8;i++) (27){ (27)box_apeak_xy (7-i,0,0,i,7,7,1,1); (27)delay(speed); (27)if (i<7) (27)box_apeak_xy (4,3,0,7-i,0,7,1,0); (27)}; (27)} (27)} (27)void trans(uchar z,uint speed) (27){ (27)uchar i,j; (27)for (j=0;j<8;j++) (27){ (27)for (i=0;i<8;i++) (27){ (27)display[z][i]>>=1; (27)} (27)delay(speed); (27)} (27)} (27)void tranoutchar(uchar c,uint speed) (27){ (27)uchar i,j,k,a,i2=0; (27)for (i=0;i<8;i++) (27){ (27)if (i<7) (27)box_apeak_xy (i+1,0,0,i+1,7,7,1,1); (27)box_apeak_xy (i2,0,0,i2,7,7,1,0); (27)a=0; (27)i2=i+1; (27)for (j=0;j<=i;j++) (27){ (27)a=a|(1<<j); (27)} (27)for (k=0;k<8;k++) (27){ (27)display[k][3]|=table_cha[c][k]&a; (27)display[k][4]|=table_cha[c][k]&a; (27)} (27)} (27)void transss() (28){ (28)uchar i,j; (28)for (i=0;i<8;i++) (28){ (28)for (j=0;j<8;j++) (28)display[i][j]<<=1; (28)} (28)} (28)/*From now on,the function below is to display the flash.*/ (28)void flash_1() (28){ (28)clear(0); (28)type(1,0); (28)delay(60000); (28)type(2,0); (28)delay(60000); (28)type(3,0); (28)delay(60000); (28)type(4,0); (28)delay(60000); (28)delay(60000); (28)clear(0); (28)rolldisplay(30000); (28)type(0,7); (28)delay(60000); (28)trailler(6000); (28)delay(60000); (28)} (28)void flash_2() (28){ (28)uchar i; (28)for (i=129;i>0;i--) (28){ (28)cirp(i-2,0,1); (28)delay(8000); (28)cirp(i-1,0,0); (28)} (28)delay(8000); (28)for (i=0;i<136;i++) (28){ (28)cirp(i-8,1,0); (29)} (29)delay(8000); (29)for (i=129;i>0;i--) (29){ (29)cirp(i-2,0,1); (29)delay(8000); (29)} (29)delay(8000); (29)for (i=0;i<128;i++) (29){ (29)cirp(i-8,1,0); (29)delay(8000); (29)} (29)delay(60000); (29)} (29)void flash_3() (29){ (29)char i; (29)for (i=0;i<8;i++) (29){ (29)box_apeak_xy(0,i,0,7,i,7,1,1); (29)delay(20000); (29)if (i<7) (29)box_apeak_xy(0,i,0,7,i,7,1,0); (29)} (29)for (i=7;i>=0;i--) (29){ (29)box_apeak_xy(0,i,0,7,i,7,1,1); (29)delay(20000); (29)if (i>0) (29)box_apeak_xy(0,i,0,7,i,7,1,0); (29)} (29)for (i=0;i<8;i++) (29){ (29)box_apeak_xy(0,i,0,7,i,7,1,1); (29)delay(20000); (29)if (i<7) (29)box_apeak_xy(0,i,0,7,i,7,1,0); (29)} (29)} (29)void flash_4() (29){ (30)an[j-7]=j; (30)for (i=0;i<=16;i++) (30){ (30)for (j=0;j<8;j++) (30){ (30)if ((an[j]<8)&(an[j]>=0)) (30)line(0,an[j],j,7,an[j],j,1); (30)} (30)for (j=0;j<8;j++) (30){ (30)if (((an[j]+1)<8)&(an[j]>=0)) (30)line(0,an[j]+1,j,7,an[j]+1,j,0); (30)} (30)for (j=0;j<8;j++) (30){ (30)if (an[j]>0) (30)an[j]--; (30)} (30)delay(15000); (30)} (30)for (j=0;j<8;j++) (30)an[j]=1-j; (30)for (i=0;i<=16;i++) (30){ (30)for (j=0;j<8;j++) (30){ (30)if ((an[j]<8)&(an[j]>=0)) (30)line(0,an[j],j,7,an[j],j,1); (30)} (30)for (j=0;j<8;j++) (30){ (30)if (((an[j]-1)<7)&(an[j]>0)) (30)line(0,an[j]-1,j,7,an[j]-1,j,0); (30)} (30)for (j=0;j<8;j++) (30){ (30)if (an[j]<7) (30)an[j]++; (30)} (30)delay(15000); (30)} (30)} (31)void flash_5() (31)char i=8,j,an[4]; (31)1 (31)for (j=7;j<11;j++) (31)an[j-7]=j; (31)while(i--) (31){ (31)for (j=0;j<4;j++) (31){ (31)if (an[j]<8) (31)box_apeak_xy(j,an[j],j,7-j,an[j],7-j,0,1); (31)if (an[j]<7) (31)box_apeak_xy(j,an[j]+1,j,7-j,an[j]+1,7-j,0,0); (31)} (31)for (j=0;j<4;j++) (31){ (31)if (an[j]>3) (31)an[j]--; (31)} (31)delay(a); (31)} (31)2 (31)i=3; (31)for (j=0;j<4;j++) (31)an[j]=5-j; (31)while(i--) (31){ (31)for (j=1;j<4;j++) (31){ (31)if (an[j]<4) (31)box_apeak_xy(j,an[j],j,7-j,an[j],7-j,0,1); (31)if (an[j]<3) (31)box_apeak_xy(j,an[j]+1,j,7-j,an[j]+1,7-j,0,0); (31)} (31)for (j=0;j<4;j++) (31){ (31)if (an[j]>0) (31)an[j]--; (31)} (31)delay(a); (31)} (32)3 (32)i=3; (32)for (j=1;j<4;j++) (32){ (32)for (j=1;j<4;j++) (32){ (32)if (an[j]>=0) (32)box_apeak_xy(j,an[j],j,7-j,an[j],7-j,0,1); (32)if (an[j]>0) (32)box_apeak_xy(j,an[j]-1,j,7-j,an[j]-1,7-j,0,0); (32)} (32)for (j=1;j<4;j++) (32){ (32)if (an[j]<3) (32)an[j]++; (32)} (32)delay(a); (32)} (32)4 (32)i=3; (32)for (j=0;j<4;j++) (32)an[j]=j+1; (32)while(i--) (32){ (32)for (j=1;j<4;j++) (32){ (32)if (an[j]>3) (32)box_apeak_xy(j,an[j],j,7-j,an[j],7-j,0,1); (32)if (an[j]>3) (32)box_apeak_xy(j,an[j]-1,j,7-j,an[j]-1,7-j,0,0); (32)} (32)for (j=0;j<4;j++) (32)an[j]++; (32)delay(a); (32)} (32)5 (32)i=3; (32)for (j=3;j<6;j++) (32)an[j-2]=j; (32)while(i--) (32){ (33)for (j=1;j<4;j++) (33){ (33)box_apeak_xy(j,an[j],j,7-j,an[j],7-j,0,1); (33)box_apeak_xy(j,an[j]+1,j,7-j,an[j]+1,7-j,0,0); (33)} (33)if (an[j]>3) (33)an[j]--; (33)} (33)delay(a); (33)} (33)6 (33)i=3; (33)for (j=0;j<4;j++) (33)an[j]=5-j; (33)while(i--) (33){ (33)for (j=1;j<4;j++) (33){ (33)if (an[j]<4) (33)box_apeak_xy(j,an[j],j,7-j,an[j],7-j,0,1); (33)if (an[j]<3) (33)box_apeak_xy(j,an[j]+1,j,7-j,an[j]+1,7-j,0,0); (33)} (33)for (j=0;j<4;j++) (33){ (33)if (an[j]>0) (33)an[j]--; (33)} (33)delay(a); (33)} (33)7 (33)i=3; (33)for (j=0;j<4;j++) (33)an[j]=3-j; (33)an[0]=2; (33)while(i--) (33){ (33)for (j=0;j<3;j++) (33){ (33)if (an[j]>=0) (33)box_apeak_xy(j,an[j],j,7-j,an[j],7-j,0,1); (34)if (an[j]>=0) (34)box_apeak_xy(j,an[j]+1,j,7-j,an[j]+1,7-j,0,0); (34)} (34)for (j=0;j<4;j++) (34){ (34)if (j<5-i) (34)an[j]--; (34)} (34)8 (34)i=10; (34)for (j=0;j<4;j++) (34)an[j]=j-2; (34)while(i--) (34){ (34)for (j=0;j<4;j++) (34){ (34)if (an[j]>=0) (34)box_apeak_xy(j,an[j],j,7-j,an[j],7-j,0,1); (34)if (an[j]>=0) (34)box_apeak_xy(j,an[j]-1,j,7-j,an[j]-1,7-j,0,0); (34)} (34)for (j=0;j<4;j++) (34){ (34)if (an[j]<7) (34)an[j]++; (34)} (34)delay(a); (34)} (34)} (34)void flash_6() (34){ (34)uchar i,j,k,z; (34)roll_apeak_yz(1,10000); (34)roll_apeak_yz(2,10000); (34)roll_apeak_yz(3,10000); (34)roll_apeak_yz(0,10000); (34)roll_apeak_yz(1,10000); (34)roll_apeak_yz(2,10000); (34)roll_apeak_yz(3,10000); (34)for (i=0;i<3;i++) (34){ (34)for (j=0;j<8;j++) (35){ (35)for (k=0;k<8;k++) (35){ (35)if ((table_3p[i][j]>>k)&1) (35){ (35)for (z=1;z<8;z++) (35){ (35)point (j,7-k,z,1); (35)delay(5000); (35)} (35)} (35)} (35)} (35)trans(7,15000); (35)} (35)} (35)void flash_7() (35){ (35)uchar i; (35)uint a=3000; (35)roll_apeak_yz(0,10000); (35)roll_apeak_yz(1,10000); (35)roll_apeak_yz(2,10000); (35)roll_apeak_yz(3,10000); (35)roll_apeak_yz(0,10000); (35)roll_apeak_yz(1,10000); (35)roll_apeak_yz(2,10000); (35)roll_apeak_yz(3,10000); (35)roll_apeak_yz(0,10000); (35)roll_apeak_yz(1,10000); (35)roll_apeak_yz(2,10000); (35)roll_apeak_xy(0,10000); (35)roll_apeak_xy(1,10000); (35)roll_apeak_xy(2,10000); (35)roll_apeak_xy(3,10000); (35)roll_apeak_xy(0,10000); (35)roll_apeak_xy(1,10000); (35)roll_apeak_xy(2,10000); (35)roll_apeak_xy(3,10000); (35)for (i=0;i<8;i++) (36){ (36)box_apeak_xy (0,i,0,7-i,i,7,1,1); (36)delay(a); (36)} (36)delay(30000); (36)roll_3_xy(0,a); (36)delay(30000); (36)roll_3_xy(1,a); (36)delay(30000); (36)roll_3_xy(2,a); (36)delay(30000); (36)roll_3_xy(0,a); (36)delay(30000); (36)roll_3_xy(1,a); (36)delay(30000); (36)roll_3_xy(2,a); (36)delay(30000); (36)roll_3_xy(3,a); (36)for (i=7;i>0;i--) (36){ (36)box_apeak_xy(i,0,0,i,7,7,1,0); (36)delay(a); (36)} (36)} (36)void flash_8() (36){ (36)uchar i; (36)for (i=5;i<8;i++) (36){ (36)tranoutchar(i,10000); (36)delay(60000); (36)delay(60000); (36)} (36)} (36)void flash_9() (36){ (36)char i; (36)uchar j,an[8],x,y,t,x1,y1; (36)for (i=0;i<8;i++) (36){ (36)box_apeak_xy (i,0,0,i,7,7,1,1); (36)if (i) (37)box_apeak_xy (i-1,0,0,i-1,7,7,1,0); (37)delay(10000); (37)} (37)roll_apeak_xy(3,10000); (37)roll_apeak_xy(0,10000); (37)roll_apeak_xy(1,10000); (37)for (i=0;i<7;i++) (37){ (37)line(6-i,6-i,0,6-i,6-i,7,1); (37)line(i,7,0,i,7,7,0); (37)delay(10000); (37)} (37)for (i=0;i<85;i++) (37){ (37)clear(0); (37)for (j=0;j<8;j++) (37){ (37)t=an[j]%28; (37)x=dat2[t]>>5; (37)y=(dat2[t]>>2)&0x07; (37)t=(an[j]-14)%28; (37)x1=dat2[t]>>5; (37)y1=(dat2[t]>>2)&0x07; (37)line(x,y,j,x1,y1,j,1); (37)} (37)for (j=0;j<8;j++) (37){ (37)if ((i>j)&(j>i-71)) (37)an[j]++; (37)} (37)delay(5000); (37)} (37)for (i=0;i<85;i++) (37){ (37)clear(0); (37)for (j=0;j<8;j++) (37){ (37)t=an[j]%28; (37)x=dat2[t]>>5; (37)y=(dat2[t]>>2)&0x07; (37)t=(an[j]-14)%28; (38)x1=dat2[t]>>5; (38)y1=(dat2[t]>>2)&0x07; (38)line(x,y,j,x1,y1,j,1); (38)} (38)for (j=0;j<8;j++) (38){ (38)if ((i>j)&(j>i-71)) (38)an[j]--; (38)} (38)delay(5000); (38)} (38)for (i=0;i<29;i++) (38){ (38)clear(0); (38)y=(dat2[t]>>2)&0x07; (38)t=(an[0]-14)%28; (38)x1=dat2[t]>>5; (38)y1=(dat2[t]>>2)&0x07; (38)box_apeak_xy(x,y,0,x1,y1,7,0,1); (38)box_apeak_xy(x,y,1,x1,y1,6,0,1); (38)an[0]++; (38)delay(5000); (38)} (38)for (i=0;i<16;i++) (38){ (38)clear(0); (38)t=an[0]%28; (38)x=dat2[t]>>5; (38)y=(dat2[t]>>2)&0x07; (38)t=(an[0]-14)%28; (38)x1=dat2[t]>>5; (38)y1=(dat2[t]>>2)&0x07; (38)box_apeak_xy(x,y,0,x1,y1,7,1,1); (38)an[0]--; (38)delay(5000); (38)} (38)for (i=0;i<8;i++) (38){ (38)line(i,i,0,0,0,i,0); (38)delay(5000); (39)} (39)for (i=1;i<7;i++) (39){ (39)line(i,i,7,7,7,i,0); (39)delay(5000); (39)} (39)for (i=1;i<8;i++) (39){ (39)clear(0); (39)box(7,7,7,7-i,7-i,7-i,0,1); (39)delay(10000); (39)} (39)for (i=1;i<7;i++) (39){ (39)clear(0); (39)box(0,0,0,7-i,7-i,7-i,0,1); (39)delay(10000); (39){ (39)clear(0); (39)box(0,0,0,i,i,i,0,1); (39)delay(10000); (39)} (39)for (i=1;i<7;i++) (39){ (39)clear(0); (39)box(7,0,0,i,7-i,7-i,0,1); (39)delay(10000); (39)} (39)for (i=1;i<8;i++) (39){ (39)box(7,0,0,7-i,i,i,1,1); (39)delay(10000); (39)} (39)for (i=1;i<7;i++) (39){ (39)clear(0); (39)box(0,7,7,7-i,i,i,1,1); (39)delay(10000); (39)} (39)} (39)void flash_10() (40){ (40)uchar i,j,an[4],x,y,t; (40)for (i=1;i<7;i++) (40){ (40)clear(0); (40)box(0,6,6,1,7,7,1,1); (40)box(i,6,6-i,i+1,7,7-i,1,1); (40)box(i,6,6,i+1,7,7,1,1); (40)box(0,6,6-i,1,7,7-i,1,1); (40)box(0,6-i,6,1,7-i,7,1,1); (40)box(i,6-i,6-i,i+1,7-i,7-i,1,1); (40)box(i,6-i,6,i+1,7-i,7,1,1); (40)box(0,6-i,6-i,1,7-i,7-i,1,1); (40)delay(30000); (40)} (40)for (i=0;i<4;i++) (40){ (40)an[i]=6*i; (40)} (40)clear(0); (40)for(j=0;j<4;j++) (40){ (40)t=an[j]%24; (40)x=dat3[t]>>4; (40)y=dat3[t]&0x0f; (40)box(x,y,0,x+1,y+1,1,1,1); (40)box(x,y,6,x+1,y+1,7,1,1); (40)} (40)for (j=0;j<4;j++) (40)an[j]++; (40)delay(10000); (40)} (40)for (i=0;i<35;i++) (40){ (40)clear(0); (40)for(j=0;j<4;j++) (40){ (40)t=an[j]%24; (40)x=dat3[t]>>4; (40)y=dat3[t]&0x0f; (40)box(x,y,0,x+1,y+1,1,1,1); (41)box(x,y,6,x+1,y+1,7,1,1); (41)} (41)for (j=0;j<4;j++) (41)an[j]--; (41)delay(10000); (41)} (41)for (i=0;i<35;i++) (41){ (41)clear(0); (41)for(j=0;j<4;j++) (41){ (41)t=an[j]%24; (41)x=dat3[t]>>4; (41)y=dat3[t]&0x0f; (41)box(x,0,y,x+1,1,y+1,1,1); (41)box(x,6,y,x+1,7,y+1,1,1); (41)} (41)for (j=0;j<4;j++) (41)an[j]++; (41)delay(10000); (41)} (41)clear(0); (41)for(j=0;j<4;j++) (41){ (41)t=an[j]%24; (41)x=dat3[t]>>4; (41)y=dat3[t]&0x0f; (41)box(x,0,y,x+1,1,y+1,1,1); (41)box(x,6,y,x+1,7,y+1,1,1); (41)} (41)for (j=0;j<4;j++) (41)an[j]--; (41)delay(10000); (41)} (41)for (i=6;i>0;i--) (41){ (41)clear(0); (41)box(0,6,6,1,7,7,1,1); (41)box(i,6,6-i,i+1,7,7-i,1,1); (41)box(i,6,6,i+1,7,7,1,1); (42)box(0,6,6-i,1,7,7-i,1,1); (42)box(0,6-i,6,1,7-i,7,1,1); (42)box(i,6-i,6-i,i+1,7-i,7-i,1,1); (42)box(i,6-i,6,i+1,7-i,7,1,1); (42)box(0,6-i,6-i,1,7-i,7-i,1,1); (42)delay(30000); (42)} (42)} (42)void flash_11() (42){ (42)uchar i,j,t,x,y; (42)uchar code daa[13]={0,1,2,0x23,5,6,7,6,5,0x23,2,1,0}; (42)for (j=0;j<5;j++) (42){ (42)for (i=0;i<13;i++) (42){ (42)if (daa[i]>>4) (42){ (42)t=daa[i]&0x0f; (42)line (0,0,t+1,0,7,t+1,1); (42)} (42)else (42)t=daa[i]; (42)line (0,0,t,0,7,t,1); (42)} (42)} (42)for (j=1;j<8;j++) (42){ (42)if (j>3) (42)t=4; (42)else (42)t=j; (42)for (i=0;i<24;i+=j) (42){ (42)x=dat3[i]>>4; (42)y=dat3[i]&0x0f; (42)box_apeak_xy(0,x,y,0,x+1,y+1,1,1); (42)transss(); (42)delay(10000); (42)} (42)} (42)for (j=1;j<8;j++) (43){ (43)if (j>3) (43)t=4; (43)else (43)t=j; (43)for (i=0;i<24;i+=j) (43){ (43)x=dat3[i]>>4; (43)y=dat3[i]&0x0f; (43)point (0,x,y,1); (43)transss(); (43)delay(10000); (43)} (43)} (43)} (43)void _P3(uchar x) (43){ (43)p30 = x&0x01; (43)p31 = (x&0x02)>>1; (43)p32 = (x&0x04)>>2; (43)p33 = (x&0x08)>>3; (43)p34 = (x&0x10)>>4; (43)p35 = (x&0x20)>>5; (43)p36 = (x&0x40)>>6; (43)p37 = (x&0x80)>>7; (43){ (43)sinter(); (43)while(1){ (43)clear(0); (43)/*play list*/ (43)flash_1(); (43)clear(0); (43)flash_2(); (43)flash_3(); (43)flash_4(); (43)flash_4(); (43)flash_5(); (43)flash_5(); (43)flash_6(); (43)flash_7(); (43)flash_8(); (43)flash_9(); (43)flash_10(); (43)clear (0); (43)flash_11(); (43)flash_9(); (43)flash_5(); (43)flash_7(); (44)flash_5(); (44)flash_6(); (44)flash_8(); (44)flash_9(); (44)flash_10(); (44)} (44)} (44)P0; 573 in (44)P1; uln2803 (44)P2; 573 LE (44)void print() interrupt 1 (44){ (44)uchar i; (44)static uchar layer=0; (44)P1=0; (44)for (i=0;i<8;i++) (44){ (44)P2=1<<i; (44)delay(3); (44)P0=display[layer][i]; (44)P1=1<<layer; (44)if (layer<7) (44)layer++; (44)else (44)layer=0; (44)TH0=0xc0; (44)TL0=0; (44)} (44)P0; 573 in p2 (44)P1; uln2803 p0 (44)P2; 573 LE p1 (44)void print() interrupt 1 (44){ (44)uchar i; (44)static uchar layer=0; (44)_P3(0); (44)for (i=0;i<8;i++) (44){ (44)P2=1<<i; (44)delay(3); (44)P0=display[layer][i]; (44)delay(3); (44)} (45)_P3(1<<layer); (45)if (layer<7) (45)layer++; (45)else (45)layer=0; (45)TH0=0xc0; (45)TL0=0; (45)} (45)void print() interrupt 1 (45){ (45)uchar i; (45)static uchar layer=0; (45)P0=0; (45)P1=0x00; (45)for (i=0;i<8;i++) (45){ (45)P1=0x00; (45)P2=display[layer][i]; (45)delay(3); (45)P1=1<<i;_crol_(0xfe,i) ; (45)。
作品答辩
通过外搭键盘设施,安装驱动来实现人机交互效果
系统总体构架
功能实现
运行程序,并输出9个管脚信号,分为两部分独 立信号,其中三位用来输出到3—8译码器,另六 位用来输出六位控制信号到6—64译码器
3—8译码器加反相器解码信号并输出到每一层的 公共共阳极,从而控制3D光立方8层之间某一层 的选择
设计目标
基本设计目标 用512个蓝光led搭建一个3D光立方,利用basy2控制控制各个管脚显示各种3D静态 图案和动态图案,甚至可以设计实现一些简单的3D小游戏入3D贪吃蛇,并通过外搭 键盘设施,安装驱动来实现人机交互效果。
创新点 独特的焊接工艺将512个蓝光LED搭建成3D光立方:每一层之内把64个LED的共阳 极焊接起从而构成一个整体,各个共阴极则悬空处理,层与层之间把同一纵行的8个 LED灯的共阴极管脚焊接在一起,最终构成一个3D光立方整体。 硬件电路如6—64译码器的设计:通过3—8译码器来选择层,通过自行设计6— 64译码器选择层内某一LED管,从而实现控制某一确定LED管的亮灭
Thank You !
6—64译码器解码信号并输出到每层64个LED 灯的共阴极从而控制具体一层内64个LED灯的选 择
关键问题
1.如何搭建 2.如何控制每一个灯 3.如何形成静态动态图案 4.如何外搭键盘设施,安装驱动来实现人机交互 效果
作品实物与成果展示
心得体会
学校为我们提供了良好便利的学习环境。我们可以利用校园网络资源查询到比赛所需 的资料,每个小组凭学生证就可以借到比赛所需的Digilent Basys2开发板和必要 的连接器件. 实践与理论的结合。我们查阅了大量的资料,确定功能实现需要的模块、绘出电路雏 形。在学习资料的同时,动手尝试编写各个相关的模块以及测试模块验证,并完成相 关的软件和硬件的调试,在摸索中逐步完善电路。这样边看理论边实践的学习方式事 半功倍。 培养了自学能力。我们在复习以前学过的书本知识的同时还要自学没有接触过的知识, 并不断地用可能刚刚才学习到的知识编写、测试代码,烧入板中运行,观察结果,如 此重复。 增强了团队合作的能力。三个小组成员的协作与分工,很好的发挥了各自的优点,弥 补了各自的不足。虽然作品成果终于完成,但是比赛准备阶段的艰辛历程不时在我们 脑海中闪现,我们懂了实践才能出真知,知道了理论与实践结合的重要性,知道了知 识的学习一定要手、脑、心、口并用。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
END
毕业设计光立方答辩
21、没有人陪你走一辈子,所以你要 适应孤 独,没 有人会 帮你一 辈子, 所以你 要奋斗 一生。 22、当眼泪流尽的时候,留下的应该 是坚强 。 23、要改变命运,首先改变自己。
24、勇气很有理由被当作人类德性之 首,因 为这种 德性保 证了所 有其余 的德性 。--温 斯顿. 丘吉尔 。 25、梯子的梯阶从来不是用来搁脚的 ,它只 是让人 够再往 上登。
16、业余生活要有意义,不要越轨。——华盛顿 17、一个人即使已登上顶峰,也仍要自强不息。——罗素·贝克 18、最大的挑战和突破在于用人,而用人最大的突破在于信任人。——马云 19、自己活着,就是为了使别人过得更美好。——雷锋 20、要掌握书,莫被书掌握;要为生而读,莫为读而生。——布尔沃