LED打地鼠游戏设计

LED打地鼠游戏设计

ID:41888959

大小:211.37 KB

页数:11页

时间:2019-09-04

LED打地鼠游戏设计_第1页
LED打地鼠游戏设计_第2页
LED打地鼠游戏设计_第3页
LED打地鼠游戏设计_第4页
LED打地鼠游戏设计_第5页
资源描述:

《LED打地鼠游戏设计》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、LED打地鼠游戏设计的:深入了解和研究LED小灯的各种特性,并利用其特性制作简单娱乐游戏。功能用途:展示LED小灯除作为普通光源外还可以作为一个较为灵敏的外部光强检测输入设备,并可作为简易打地鼠游戏机使用。二.摘要:LED本身也是一个二极管,也有单向导电性,存在结电容,其内阻容易受光线影响,利用其光敏特性可制作感光开光控制打地鼠。关键词:LED结电容充放电光强我们大家对LED都很熟悉,但是一般都只知道LED作为光源使用,其实LED本身还有其他的性质,由于LED本身也是一个二极管,也有单向导电性,存在结电容,其内阻容易受光线影响,具有光敏

2、特性。利用LED此项性质可以作为光线传感器,探测环境的光线强度等。四.系统原理:当发光二极管加反向电压时,管子中实际上有十分微弱的反向电流,反向电流的大小随光照的变化而变化,光照越强,反向电流越大;光照越弱,反向电流越小。等效电路如图1所示。这是一个电流源与一个电容器并联的结构。电流源实际上就是光电流。反向电压去掉后,由于光电流的存在,电容放电。外界光照强度变化会使放电时间改变。a)"tmitbng1b)"ReverseBiasc)rD*5d»rge°匡kl

3、£.IIiilltir-xilid・hiihiWithall1IN现在我们按照

4、这样的方式操作:a)对二极管加正向电压。正向发光模式。b)对发光二极管加反向电压,相当于对二极管充电。c)将高压输出端改为输入端。引脚即可测量二极管两端电压。通过测定放电时间,可以判断是否有物体遮挡二极管。以此执行相应的动作。这样反复动作,就实现了LED的输出和输入。五.硬件设计思想:制作3X3LED点阵,设置好合适间隔以排除干扰。为减少M16I0口的使用,把九个小灯一端都接在一起连接一个单刀双掷开关,并用一I0口检测其高低电平来自动选择演示模式。另外九个端分别接九个独立I0口单独控制和检测。留出POARTB五个端口作为控制LED显示使

5、用。六・硬件原理图:硬件单元使用:仁随便置单刀双掷开关,系统会自动检测何种演示模式。2•若进入跑马灯演示模式,根据LCD显示屏提示,反置单刀双掷开关,并按RESET键进入游戏模式。3•正放方式下第一行小灯从左到右为仁2、3号灯,进入游戏界面,左右菜单分别对应仁3号灯,三种不同模式分别对应仁2、3号灯,选择时遮住对应小灯即可。in4•开始游戏时,LCD显示屏3X3表格对应各位置小灯。七.软件设计思想检测部分利用单片机PORT口的输入功能读取对应LED小灯的电位,利用LED小灯在反向充电完成后,在不同光照下放电到单片机低电位时间的不同,通过

6、软件延时一定的时间,判斷小灯是否被遮住来选择运行何种程序。游戏部分通过建立一简单随机数据库来随机显示地鼠位置,通过对应关系映射到单片机的PORT口,来检测是否是正确的LED灯(虚拟地鼠》被打中。七.软件原理图游戏部分流程:主菜单LCD显示1号灯遮住&模式选择LCD显示2灯您住模式一处理模式二处理模式三处理游申束游戏*束游戏丰束得分显示得分显不得分显示软件程序功能:1•跑马灯程序LCD_clear();LCD_write_chinese_string(12,0,12,5,0,0,pao);LCD_write_chinese_string(

7、0,2,12,7,0,0,cz1);LCD_write_chinese_string(0,4,12,7,0,0,cz2);DDRA=0XFF;DDRC=0X01;P0RTC=0X01;P0RTA=0XFF;for(j=1000;j>0;j—)PORTA=OXFF;deIay_nms(10);P0RTC=0X00;deIay_nms(10);for(i=7;i>=0;i~){SET.BIT(PORTC,0);deIay_nms(10);CLR_BIT(PORTA,i);deIay_nms(10);SET_BIT(PORTA,i);}for

8、(i=0;i<8;i++){SET_BIT(PORTC,0);deIay_nms(10);CLR_BIT(PORTA,i);deIay_nms(10);SET_BIT(PORTA,i);}PORTA=OXFF;deIay_nms(10);PORTC=OXOO;deIay_nms(10);}2.自动检测外部光强和选择语言部分LCD_cIear();do{SET_0UT(DDRA,0);SET.BIT(PORTA,0);SET_IN(DDRA,0);CLR_BIT(PORTA,0);delay_nus(100);if(~GET_BIT(PI

9、NA,0))break;/外光强使LED放电到低电位时间timedI++;/赋值给timedI}while(1);LCD_write_chinese_string(12,2,12,4,0,0,yuyan);

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。