- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
电子密码锁故障分析及仿真测试报告
2013.11.15
目 录
目 录 1
项目基本信息 2
第一章 引言 3
1.1 目的 3
1.2 背景 3
1.3 测试对象 3
1.4 测试工具 3
第二章 前期测试 4
一、电路原理图及PCB图绘制 4
1. 仿真调试阶段 4
1)所遇故障 4
2)故障分析及解决方案 4
2. 绘制PCB阶段 7
3. 心得体会 11
第三章 后期测试 13
一、测试情况及结果 13
二、 功能测评 13
1. 测试方法 13
2. 测试结论 13
1) 功能性 13
2) 易用性 14
第四章 测试总结 15
项目基本信息
项目名称 基于51单片机的多功能电子密码锁 开发软件 Keil 、Protuse 所用语言 C语言 项目测试时间 8周 测试参与人员分工 程序编写 编译仿真 文档编写
第一章 引言
目的
总结测试阶段,系统是否符合需求功能目标
解决方法:定义变量i,每次检测到按键按下,将键值赋给table[i++],i自加1。当i大于5时,将i置零。且在重新输入中将i置零。
(2)ds1302程序在实物中可以使用在仿真时却不出效果。
解决方法:通过上网查资料,得出此由时序问题导致,通过仔细查阅DS1302的时序图,修改时序。
(3)如何处理时间跟密码输入的切换。
单独模块结果出来之后如何让时间显示模块与键盘输入模块切换。
初步思想:将两个while(1){}部分写入一个程序,使用break,跳出一个循环然后进入另一个死循环,结果按键不灵敏。
解决方法:上网搜索两个死循环之间的切换问题,找到定义变量flag0,让后再每个循环前加上if(flag0==0/1)判断进入那个循环。
(4)按键不灵敏。
初步想法是:程序里包含了太多的延时。
解决方法:减少延时时间尽量不用,将延时函数延时时间减短,将标志数增加。
输入数字时显示数字,并不显示‘*’,存在一定的密码泄露风险。
问题显示:
解决方法:查阅1602资料,知道‘*’在1602里是0x2a,这样就可以在显示的时候输入数据位“0x2a”。
密码锁与时间切换,再次切换回来出错。
错误显示:
切换前
切换后
解决方法,回到源程序,手写流程图,根据流程图解决切换后时序问题。修改将DS1302的初设值放在主函数最开始,不放入while(1)循环中。。修改后:
再次切换试验。
2. 绘制PCB阶段
由于本组成员均为接触过PCB版图的绘制,此次设计中我们采用了proteus中自带的一键生成PCB版图的功能。在绘制过程中,由于初次接触该功能,发现仿真图中所用的元件并未完全导入ARES,如下图所示:
按键均未导入ARES中。这说明按键并不在网表中,于是返回仿真图中查看发现按键没有网络标号。添加网络标号后成功导入。如下图所示:
在元件导入的过程中,软件提示需要对未封装的元件进行封装,如下图所示:
由于在默认的库里面没有对按键的封装,需要我们自己画一个按键的封装。
1. 首先需要放置焊盘,如图所示:
在编辑界面中点击左侧工具栏中的或图标用于放置焊盘,这时对象选择器中列出了所有焊盘的外径和内径的尺寸,如图所示:
将第一个焊盘放在原点处,如下图:
单击工具栏中的图标,切换为光标操作模式,选中刚才放置的焊盘,然后选择“Edit/编辑”中的“Replicate”菜单项,在弹出的对话框中进行设置,如下图所示,点击确定即可复制焊盘到指定位置。
按同样的步骤放置剩余焊盘。
2. 分配引脚编号。右键单击某个焊盘,在弹出的下拉列表中选择“Edit Properties / 编辑属性”项,在弹出的“Edit Single Pin/编辑引脚”对话框中按下图进行设置,按照同样的方法可以完成其他焊盘的设置。
3. 添加元件边框。单击左侧工具栏中的图标,并将左下角当前层改为丝印层,画出元件边框。如下图所示:
4. 放置封装原点。点击左侧工具栏中的图标,在左侧列表框中选择“ORIGIN”,单击第一个焊盘,确定封装原点。如下图所示:
5. 放置元件的“REFERENCE”。在左侧列表框中选择“REFERENCE”,在元件边框中单击添加“REFERENCE”。如下图所示:
6. 保存元件封装。单击右键并拖动鼠标指针,将整个设计完成的封装选中,然后选择“Library / 库”( “Makepackage / 创建封装”菜单项,弹出创建封装对话框,如图 所示:
设置完成后,单击确定按钮将封装保存在“USERPKG”库中,以后就可以使用该封了。完成按键的封装后
原创力文档


文档评论(0)