碰数电子玩具的设计设计

上传人:枕*** 文档编号:128754255 上传时间:2022-08-02 格式:DOC 页数:28 大小:2.88MB
收藏 版权申诉 举报 下载
碰数电子玩具的设计设计_第1页
第1页 / 共28页
碰数电子玩具的设计设计_第2页
第2页 / 共28页
碰数电子玩具的设计设计_第3页
第3页 / 共28页
资源描述:

《碰数电子玩具的设计设计》由会员分享,可在线阅读,更多相关《碰数电子玩具的设计设计(28页珍藏版)》请在装配图网上搜索。

1、 本科生毕业设计报告系(院)物理与电子工程学院 专业 电子信息工程 设计题目: 碰数电子玩具的设计 学生姓名 指引教师 (姓名及职称)班 级 学 号 完毕日期: 年 月碰数电子玩具的设计 物理与电子工程学院 电子信息工程 摘要该碰数电子玩具设计以数字电子技术为基本、at89c51单片机为核心,结合数码管、语音芯片等制作形成。两位数码管进行一分钟的计时显示,计时结束后播放结束的语音;三个一位数码管以不同速率运转,并用两个按键控制数码管的运营与停止,当显示的三个数据同样时产生成功的语音,反之播放失败的语音。一分钟计时时间内,若没有成功可反复进行游戏,一旦成功或时间停止游戏结束。正文着重将设计的原理

2、与过程进行了具体的解释与阐明。核心词碰数电子玩具; 单片机at89c51;语音芯片1 设计任务与规定11任务提出设计一种碰数电子玩具。12设计规定1)、玩具面板上有三位LED数码显示管和两个按键:“开始”、“停止”。2)、按下“开始”键,系统开始计时,同步三位数码管开始按不同速度循环显示“09”十个数字,并停留3秒,直到按下“停止”键或计时结束。游戏时间(计时时间)设为1分钟。3)、计时开始1分钟内按下“停止”键,停止计时,三个数码管显示的数字停留在最后一次显示的数字上,若三位数码管显示的数字同样,例如:222,444,666等,则游戏胜利,播放欢快的音乐;若三位数字不完全同样,则游戏失败,播

3、放悲哀的音乐。4)、重新按下“开始”键后,重新计时,三位数码管重新从0开始显示。5)、若1分钟到了,还没有按下“停止”键,停止计时,同步系统发出“game over”的语音。2设计方案21基本方案按照实验设计1 李坚、朱嘉贤.计算机应用基本(第一版) M,科学出版社, .9. 的规定,采用at89c51单片机2 邓兴成.单片机原理与实践指引(第一版) M,机械工业出版社, .2. 作为主控芯片,结合两种七段数码管、语音芯片、按键、喇叭、74hc5733 阎石.数字电子技术基本(第五版) M,高等教育出版社, .12. 等进行实验设计。 通过对单片机的编程,实现一分钟的定期效果并显示出来,三个数

4、码管以不同的速率运转,循环显示0-9十个数字,通过对相应端口的按键控制使其可以反复运用,控制单片机端口条件控制语音芯片。 具体的来说,一种两位的数码管显示出一分钟的计时状况,计时结束后单片机激活语音芯片,使其发出游戏时间结束的语音;三个一位的七段数码管以不同的速率运营,循环显示出0-9,并用一种按键控制该三个数码管的运营与停止,另一种数码管进行清零操作。当按键按下是三个数码管停止时,若显示的三个数据相似则播放游戏成功的语音;反之播放游戏失败的语音。一分钟计时时间内,可反复进行碰数游戏,一旦游戏成功或游戏时间结束则该游戏结束。这样就基本可以实现该碰数电子玩具的相应功能。系统原理框图4 陆应华.电

5、子系统设计教程(第二版) M,国防工业出版社,.3. 如下:数码管显示单片机at89c51发出语音按键2进行清零按键1控制运营/停止图1 原理框图22适度发挥1)、将一种开始按键和一种停止按键改为一种按键控制游戏的开始与停止,另一种按键进行清零操作;2)、将一分钟的定期采用两位数码管实时显示出来,效果清晰可见;3)、不用蜂鸣器而改用语音芯片,效果更好。3 设计原理分析3.1重要硬件简介3.1.1 at89c51单片机本次设计我们采用的是单片机AT89C51作为主芯片。Atmel公司的AT89C51是一种低功耗、高性能的片内具有4kB快闪可编程/擦除只读存储器(FPEROM)的8位CMOS微控制

6、器,使用高密度、非易失存储器技术制造,并且与80C51引脚和指令系统完全兼容。AT89C51具有40管脚,有P0,P1,P2,P3四个重要I/O口,每个口都分为八位,其中以P3口功能最强大,是单片机的重要功能口,AT89C51的引脚图如图1所示:图2AT89C51的引脚图3.1.2 语音芯片 图3 语音芯片引脚图本芯片工作电压宽1.8V-5.5V 的工作范畴静态电流不不小于等于1UA1 脚 是去耦(可以接一种104 对地)可以不接4 脚电源正极 5 脚电源负极6 脚可以定义输入(来控制语音)也可以定于输出7 脚只能作为输入8 脚可作为输入也可以作为输出6 脚7 脚和8 脚都可以定义一下功能1:

7、触发脚和正电源接触一次播放一编,在播放的时候重新触发5 童诗白、华成英.模拟电子技术基本(第五版) M),高等教育出版社, .12. 不会停止或打断(或者几遍默认是一遍有规定请阐明)若接在高电平上也不会始终播放2:触发脚和正电源接触一次播放一编,在播放的时候重新触发会打断然后重新播放,若接在高电平上也不会始终播放3:触发一下播放下一种声音(适合有几种声音文献的 )4:触发脚接在高电平上会始终循环的播放 离开高电平后播放完本次后停止5:触发脚接在高电平上会始终循环的播放 离开高电平后立即停止播放6:触发脚和电源正极接触一次就会播放播放完会自己停下来,但是播放的时候再接触一次就会停止7:触发脚和电

8、源正极接触一下会始终循环播放 再接触一次会停下来(需要外接一种电子元件)8:当电源接通后会播放一段音乐,播放完后触发其她的脚位也播放其她音乐8:与单片机连接串口辨认来控制语音的种类(请向我司申请另一份有关此功能的阐明书)3.1.3 74hc573锁存器74HC573的八个锁存器都是透明的D 型锁存器,当使能(G)为高时,Q 输出将随数据(D)输入而变。当使能为低时,输出将锁存在已建立的数据电平上。输出控制不影响锁存器的内部工作,即老数据可以保持,甚至当输出被关闭时,新的数据也可以置入。这种电路可以驱动大电容或低阻抗负载,可以直接与系统总线接口并驱动总线,而不需要外接口。特别合用于缓冲寄存器,I

9、/O 通道,双向总线驱动器和工作寄存器。 图4 74hc573引脚图3.2系统程序简介3.2.1初始化计数器void init_sys(void) TMOD=0x01; /定期器T0工作在方式16 陆应华.手把手教你学单片机C程序设计(第一版) M,北京航空航天大学出版社, .10. TH0=(65536-10000)/256; /预先设定定期器初值为10msTL0=(65536-10000)%256; EA=1; /启动总中断ET0=1; /容许T0中断 TR0=1; /定期器0启动计数3.2.2 按键扫描void keyscan(void)static byte ss=0;if(key1=

10、0)delay(3);if(key1=0&(fail_flg|win_flg)num_0=0;num_1=0;num_2=0; music1=0;music2=0;music3=0;ss=0;fail_flg=0;game_time=60;start_flg=0;win_flg=0;time_flg=0;while(!key1);if(key2=0)delay(3);if(key2=0&!fail_flg&!win_flg)ss+;time_flg=1;if(ss%2=0) start_flg=0;/游戏暂停if(ss!=0&num_1=num_2&num_0=num_1) win_flg=1

11、;/有按键按下+数字1等于数字2等于数字3if(win_flg)music1=1;music2=0; music3=0;else if(!win_flg)music1=0;music2=1; music3=0;else start_flg=1;/游戏开始music1=0;music2=0; music3=0;while(!key2);该程序实现的功能:按键1:当游戏成功或者游戏时间结束时,按下按键1,进行清零并初始化相应的参数;按键2:初次按下按键2,游戏开始运营,再次按下游戏停止,这样可在一分钟定期时间内循环运用,当显示的三个数据都相似时,表达游戏成功,music1语音响起;反之表达游戏失败

12、的music2语音响起。3.2.3数码管显示void led_show(void)display(num_0,2);/显示游戏数字1delay(50);display(num_1,3);/显示游戏数字2delay(50);display(num_2,4);/显示游戏数字3delay(50);display(game_time/10,0); /显示游戏时间delay(50);display(game_time%10,1);/显示游戏时间delay(50);void display(byte num ,byte wei)P3=addrwei; P0=lednum;P3口设立的为位选,P0口设立的为

13、段选。0和1位显示的是游戏时间,2、3、4位显示的为三个以不同速率循环显示0-9的数据。3.2.4中断函数void timer0() interrupt 1 static byte tt_0=0;TH0=(65536-10000)/256; /10msTL0=(65536-10000)%256; if(time_flg&!win_flg)/游戏时间+!成功systemtime+;if(start_flg&!fail_flg)tt_0+;/游戏开始+!失败if(tt_05) tt_0=0;num_0+;if(num_09)num_0=0;num_1+;if(num_19)num_1=0;num_

14、2+;if(num_29)num_2=0;if(systemtime100) /100*10mssystemtime=0;game_time-;if(game_time1)game_time=0;游戏开始后,三个数码管以不同速率循环显示0-9,并通过定期器进行一分钟定期。通过初始化的10ms乘以systemtime100再乘以设定的game_time60从而实现一分钟定期。3.2.5主函数void main(void)7 梁肇新.编程高手箴言(第一版) M,电子工业出版社, .1. init_sys();music1=0;music2=0;music3=0;while(1)8 谭浩强.C程序设

15、计(第四版) M,清华大学出版社,.7. 9 牛百齐.基于单片机的电容测量仪设计J.仪器仪表顾客,12(4):29-30.10 刘军, 李智. 基于单片机的高精度电容电感测量仪J.国外电子测量技术,26(6): 48-51.11 闫玉德, 等.MCS:51 单片机原理与应用:C语言版M.机械工业出版社,.12 A l Dutche r. 使用少量元件的便宜易用电感测试仪 J.电子设计技术, (7): 108- 111.13 陈江华, 杨霓清, 梁村梅. 一种实用的电容、电感和电阻自动测量仪 J. 计量与测试技术,29(1):21-26.14 李华等MCS-51单片机实用接口技术M北京航空航天大

16、学出版社15 黄川.智能电阻、电容、电感测试仪设计.科技资讯.08.16 周民德.微机原理与接口技术.北京:人民邮电出版社,.17 阮德生.自动测试技术与计算机仪器系统设计M西安:西安电子科技大学出版社,1997Number of electronic toys designed touchPhysics and Electronic Engineering HU Yangyang 10310283Abstract The number of electronic toys designed for touch digital electronic technology as the foun

17、dation, at89c51 microcontroller as the core, combined with digital control, voice chips produced form. Two digital tube display one minute timer, chronograph speech after playback ends; three a digital tube running at different rates, and use two buttons control the digital control and stop running

18、when the same data is displayed three produce successful voice, whereas failure playback voice. One minute time period, if no success can be repeated for the game, if successful, or time to stop the game is over. Text focuses on the design principles and explain the process in detail and description

19、.Key words touch number MCU 附一:源程序#includeat89x51.h#include #define byte unsigned char #define word unsigned intsbit dula=P27;sbit wela=P26;sbit key1=P20;sbit key2=P21;sbit music1=P23;sbit music2=P24;sbit music3=P25;/*/byte code led10=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f; byte code addr

20、6=0xfe,0xfd,0xfb,0xf7,0xef,0xdf; word systemtime=0; /系统时间byte num_0=0,num_1=0,num_2=0; /游戏数字1,2,3char game_time=60; /游戏时间byte start_flg=0; /开始标志0-暂停;1-开始byte stop_flg=0; /停止标志byte time_flg=0; /时间标志byte win_flg=0; /成功标志byte fail_flg=0; /失败标志/*/ void delay(word t); /延时 void init_sys(void); /定期器初始化 voi

21、d display(byte num ,byte wei); /数码管位显示 void keyscan(void); /按键扫描 void led_show(void); /数码管显示/*延时*/void delay(word t) while(t-);/*初始化计数器*/void init_sys(void) TMOD=0x01; TH0=(65536-10000)/256; /10msTL0=(65536-10000)%256; /10ms EA=1;ET0=1; TR0=1;/*主函数*/void main(void)init_sys();music1=0;music2=0;music3

22、=0;while(1) keyscan(); led_show();if(!game_time)/游戏时间为0fail_flg=1;time_flg=0;music3=1; music1=0; music2=0; /*/void timer0() interrupt 1 static byte tt_0=0;TH0=(65536-10000)/256; /10msTL0=(65536-10000)%256; /10msif(time_flg&!win_flg)/游戏时间+!成功systemtime+;if(start_flg&!fail_flg)tt_0+;/游戏开始+!失败if(tt_05)

23、 tt_0=0;num_0+;if(num_09)num_0=0;num_1+;if(num_19)num_1=0;num_2+;if(num_29)num_2=0;if(systemtime100) /100*10mssystemtime=0;game_time-;if(game_time1)game_time=0;/*按键扫描*/ void keyscan(void)static byte ss=0;if(key1=0)delay(3);if(key1=0&(fail_flg|win_flg)/按键+(失败或成功)num_0=0;num_1=0;num_2=0; ss=0;fail_flg

24、=0;game_time=60;start_flg=0;win_flg=0;time_flg=0;while(!key1);if(key2=0)delay(3);if(key2=0&!fail_flg&!win_flg)/按键+!失败+!成功ss+;time_flg=1;/开始计时if(ss%2=0) start_flg=0;/游戏暂停if(ss!=0&num_1=num_2&num_0=num_1) win_flg=1;/有按键按下+数字1等于数字2if(win_flg)music1=1;music2=0; music3=0;else if(!win_flg)music1=0;music2=

25、1; music3=0;else start_flg=1;/游戏开始music1=0;music2=0; music3=0;while(!key2);/*数码管显示*/void led_show(void)display(num_0,2);/显示游戏数字1delay(500);display(num_1,3);/显示游戏数字2delay(500);display(num_2,4);/显示游戏数字3delay(500);display(game_time/10,0); /显示游戏时间delay(500);display(game_time%10,1);/显示游戏时间delay(500);/*数码

26、位管显示*/void display(byte num ,byte wei)dula=0;P0=lednum;dula=1;dula=0; wela=0;P0=addrwei;wela=1;wela=0;delay(5); keyscan(); led_show();if(!game_time)/游戏时间为0fail_flg=1;time_flg=0;music3=1; music1=0; music2=0; 一方面进行初始化,将music赋予低电平,然后再while循环里调用按键扫描函数、数码管显示函数。游戏时间结束,进行中断操作,并通过给music3赋予高电平,使其发出游戏结束的语音。4

27、软硬件设计和调试4.1软件仿真4.1.1总的设计流程图开始初始化计时开始按键一按下转动/停止失败三个数据相似?时间到成功按键2按下图5 总的设计流程图 接上电源之后进行初始化,当按键1按下,数码管以不同速率循环显示0-9.再次按下按键1数码管显示此时的数据,比较三个数据。如果都相似,则游戏成功,否则游戏失败。在规定的游戏时间内,如果失败可反复进行游戏,指引游戏成功或游戏时间结束。当游戏成功或游戏结束,按下按键2进行清零或者说初始化,以便反复进行游戏。4.1.2总的仿真电路图 图6 仿真电路图 该仿真电路图采用at89c51单片机、6位7段数码管、排阻、两个按键、三个发光二极管组合而成。从左向右

28、数,6位数码管前两位用于一分钟计时的实时显示,最后三位用于不同速率循环显示0-9,而中间一位作为前两者的分界线,便于辨别且观测效果较好。三个发光二极管代表三种不同的语音,绿色的代表成功的语音,红色的代表失败的语音,黄色的代表游戏结束的语音。相应发光二极管点亮,就表达相应语音想起。4.1.3 软件仿真运营及调试1)软件运营系统上电初始化,60秒倒计时准备,三个不同速率循环显示0-9进行“000”的初始化。图7 初始化电路图2)按下开始按键,游戏开始进行60秒倒计时,同步最后三位数码管以不同速率循环显示0-9,再次按下该按键显示如下,红灯亮(发出失败的语音),游戏失败。倒计时未结束是,可反复进行以

29、上操作直至游戏成功或时间结束。图8 游戏失败电路图3)按下停止键,数据显示如下,绿灯亮(发出成功的语音),游戏成功。图9 游戏成功电路图4)游戏时间结束,计时显示为“00”,而最后三位停留在实时显示的数据。图10 时间结束电路图5)当游戏成功或者游戏时间结束,按下另一种按键进行清零操作。再按以上操作可循环反复运营。图11 清零后电路图4.2硬件运营与调试4.2.1硬件焊接1)实际焊接电路图图12 实际焊接电路图为了符合设计规定并结合开发板将实际焊接电路图完善如上图所示。由于单片机端口不够用,采用两个74hc573进行端口扩展端口。为了实现效果好,采用三个单独分离的一位数码管。4.2.2硬件成果

30、及调试1)游戏初始化,发出初始化成功提示音。图13 初始化实物图2)游戏运营,按下停止键,显示如下,发出失败的语音。图14 游戏失败实物图3)游戏运营,按下停止键,显示如下,发出游戏成功的语音。图15 游戏成功实物图4)当游戏时间结束后,显示如下,发出游戏结束的语音。图16 游戏结束实物图5)当游戏时间结束或者游戏成功,按下清零按键,显示如下。图17 清零后实物图5总结思考1)、在焊接的过程中一定要认真仔细,这样可以减少不必要的错误产生;在焊接导线时,先给导线镀锡是极为以便焊接的,包线时要选择包线钳合适的空洞;2)、在实际的操作过程中,要可以把所学的或者查阅的知识灵活运用起来,这也是一种能力,一种值得我去进一步学习和掌握的能力。3)、对于我而言,该碰数电子玩具的设计,看似比较简朴,实则要通过诸多诸多的知识点以及硬件常识再加上不断地修改仿真调试才干做出来。这些工作涉及定期器的运用,数码管的扫描显示,按键的扫描与运用,有关的芯片的掌握与发挥等等。 4)、通过这次的设计,我充足的结识到学无止境,要想将设计做好做精必须学习并掌握有足够的知识,否则就会非常的吃力。不管做什么都要认真去做,要坚持下去,只有这样才有也许成功。 5)、综上所述,这次的设计遇到了诸多的问题,但通过查阅资料以及实时的仿真调试加上教师和同窗们的指引,虽然很吃力但还是做出来了。付出才会有收获。参照文献

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!