- 1、本文档共15页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
河南机电高等专科学校
课程设计报告书
课程名称: 单片机原理及应用技术
课题名称: 简易密码锁
专 业: 计算机控制技术
班 级: 计控072班
学 号:
姓 名: 冯晓盼
成 绩:
2009 年6 月 19日
设 计 任 务 书
一、设计任务
设计一个简易密码锁,设其密码为12345,输入数字为1-8,数字9为确认键。采用3×3按键实现密码的输入功能,当密码输入正确后,锁就打开。此时数码管显示A,并且二极管绿灯亮。当密码输入错误,数码管显示E,红灯亮。
二、设计方案及工作原理
设计方案:该密码锁通过软件和硬件来共同实现。硬件设计中通过键盘,数码管,和发光二极管来实现。软件设计中有键盘扫描,数码管显示,指示灯显示等程序实现。
工作原理: 利用AT89C52单片机,通过键盘扫描程序来识别输入的密码,通过数码管来显示密码值,通过发光二极管来判断密码正确与否。从而完成设计任务。
目 录
系统设计要求和解决方案
硬件实现
软件实现
实现的功能
缺点及可能的解决方法
心得体会
附录一、参考文献
附录二、硬件原理图
附录三、程序流程图
系统设计要求和解决方案
设计要求:
(1)设计一个单片机控制,键盘扫描,数码管显示,指示灯闪亮的单片机最小系统。
(2)可以通过修改软件程序来实现密码的修改。
(3)可以使单片机能连续无故障的工作。
解决方案:
软件设计中用键盘扫描程序和检测按键子程序来识别输入的数字。硬件设计中键盘输入密码,数码管显示密码,指示灯判断密码正确与否。
硬件实现
将3x3键盘接单片机的P3.2-P3.7口,数码管数据线为P0口,位选线接P2口。硬件电路扩展板电源接P1口。P2.7随便接一数码管。P1.0 接红色发光二极管,P1.2接绿色发光二极管。通过USB线一端接单片机板,一端接PC机。按上述连接则可以实现密码锁的硬件设计。
单片机控制方案
软件实现
当输入密码12345并按确认键后数码管显示A,二极管绿灯亮。当输入错误的密码后,数码管显示E,二极管红灯亮。程序清单如下:
ORG 0000H
AJMP MAIN
ORG 0030H
MAIN:
MOV P1,#0FFH
MOV R1,#50H
MOV 50H,#0
MOV 51H,#0
MOV 52H,#0
MOV 53H,#0
MOV 54H,#0
mov dptr,#tab ;将表头放入DPTR
SCAN:
lcall key ;调用键盘扫描程序
CJNE A,#9,CHECK
MOV A,50H
CJNE A,#1,ERROR
MOV A,51H
CJNE A,#2,ERROR
MOV A,52H
CJNE A,#3,ERROR
MOV A,53H
CJNE A,#4,ERROR
MOV A,54H
CJNE A,#5,ERROR
CLR P1.2 ;绿灯亮
MOV A,#0AH
LJMP DISPLAY
ERROR:
MOV 50H,#0
MOV 51H,#0
MOV 52H,#0
MOV 53H,#0
MOV 54H,#0
MOV R1,#50H
CLR P1.0
MOV A,#0EH
LJMP DISPLAY
CHECK:
MOV @R1,A
INC R1
DISPLAY:
movc a,@a+dptr ;查表后将键值送入ACC
mov p0,a ;将Acc值送入P0口
CLR P2.7 ;开显示
LJMP SCAN
KEY: LCALL KS ;调用检测按键子程序
JNZ K1 ;有键按下K1
LCALL DELAY2 ;无键按调用延时去抖
AJMP KEY ;返回继续检测按键
K1: LCALL DELAY2
LCALL DELAY2 ;有键按下延时去抖动
LCALL KS ;再调用检测按键程序
JNZ K2 ;
文档评论(0)