欢迎来到天天文库
浏览记录
ID:15212775
大小:198.50 KB
页数:17页
时间:2018-08-02
《光立方项目设计说明书》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、工程技术综合实践项目设计报告(电类)8x8x8光立方点阵西安理工大学工程训练中心2012年月日项目组成员及分工序号姓名学号班级工作内容备注1邓凯3100431032电子102系统设计及报告组长2胡世乐3100101356材1012硬件制作3马杰3100431031电子102程序编写4祝龙3100101358材1012硬件制作成绩评定序号姓名学号班级成绩备注1邓凯3100431032电子1022胡世乐3100101356材10123马杰3100431031电子1024祝龙3100101358材1012指导教师(签字):1概述本作品是由512只LED组成的长宽高均为8个LED的正方
2、体点阵,主要实现文字,图形的显示,显示效果立体感强,能够成为一件科技感十足的艺术品。2总体设计2.1系统功能及技术指标系统控制采用51单片机,通过输出高低电平控制LED的状态,74hc573扩展单片机IO口,使单片机具有64路输出。通过ULN2803控制层,最终实现对512只LED中的任意一个的控制。本作品共使用了8块74hc573锁存器,用来控制列,每个锁存器连接LED正极,每一层所有LED的负极连接在ULN2803的输出端,用来控制层2.2系统构成单片机89c58rd+74hc573锁存器ULN2803驱动LED阵列2.3主要设备及元器件选型1、STC89C58RD+:8位
3、低功耗微控制器,具有32k程序存储器,最高40MHz工作频率。程序存储空间大2、74hc573:八进制3态非反转透明锁存器,每个管脚可提供20mA电流,能够满足驱动多只LED的需求。3、ULN2803:达林顿管驱动器,包含8个NPN达林顿管,高耐压,大电流,可满足驱动多只LED的需求。1.1系统核心处理策略将文字内容通过软件取模得到的十六进制代码转换为坐标,图形内容通过运算得到所显示点的坐标,将此坐标放入二维数组,数组每次放入64个元素,即一层所显示的内容,通过层扫描显示所有层的内容1.2其他本作品的主体结构由led的引脚相互连接而成,具有一定的强度与韧性;采用贴片元器件,主体
4、突出;装置通过usb接口供电,亦可传输数据;装置设计有电源开关与电源指示灯;设计有画面切换按键,方便人机交互。2详细设计2.1硬件设计单片机89c58rd+usb转ttl模块计算机锁存器LEDULN28032.1.1系统原理图及元器件清单1.原理图2.元器件清单序号名称型号规格数量单位01单片机STC89C58RD+LQFP-442个02锁存器74HC573SOIC-2010个03达林顿管驱动器ULN2803SOIC-182个04晶振30MHz/1个05电容30pF贴片08065个06电容10uF贴片08065个07发光二极管/φ3600个08电阻1k贴片08062个09自锁开
5、关//1个10按键开关//1个11USB母口//1个12USB转TTL模块//1个13USB连接线//2条14电路板/25.4*21.52块1.1.1PCB设计1.1.2系统硬件资源清单序号名称型号规格数量1发光二极管/φ36002电路板//21.1软件设计1.1.1软件功能模块开始初始画面N是否按下Y下一个画面1.1.2功能模块1voidadd(intx,inty,intz)//该函数将坐标添加到数组{tab[x][y]=tab[x][y]
6、(1<7、for(temp=0;temp8、1.1.2完整代码#include#defineLAYER_XP0#defineLAYER_ZP2#defineLAYER_YP1unsignedintsw=0;unsignedchartab[8][8]={0};voidscan(int);voiddelayms(int);voidtimer1delay(int);voidadd(int,int,int);voiddisplay_face();voiddisplay_ball();voiddisplay_move();vo
7、for(temp=0;temp8、1.1.2完整代码#include#defineLAYER_XP0#defineLAYER_ZP2#defineLAYER_YP1unsignedintsw=0;unsignedchartab[8][8]={0};voidscan(int);voiddelayms(int);voidtimer1delay(int);voidadd(int,int,int);voiddisplay_face();voiddisplay_ball();voiddisplay_move();vo
8、1.1.2完整代码#include#defineLAYER_XP0#defineLAYER_ZP2#defineLAYER_YP1unsignedintsw=0;unsignedchartab[8][8]={0};voidscan(int);voiddelayms(int);voidtimer1delay(int);voidadd(int,int,int);voiddisplay_face();voiddisplay_ball();voiddisplay_move();vo
此文档下载收益归作者所有