1、第- 1 -页 课课 程程 设设 计计 课课 程程 名名 称:称: 单单 片片 机机 原原 理理 与与 应应 用用 课课 题题 名名 称:称: 数数 字字 密密 码码 锁锁 设设 计计 第- 2 -页 目录目录 一、一、 前言前言 - - 3 3 - - 二、二、 总体方案设计总体方案设计 - - 3 3 - - 2.1 方案论证与比较 . - 3 - 2.2 方案选择. - 4 - 三、三、 单元模块设计单元模块设计 - - 4 4 - - 3.1 硬件支持. - 4 - 3.2 功能单元模块设计 - 4 - 3.2.1 开锁机构 - 4 - 3.2.2 矩阵键盘设计电路 . - 5 - 3
2、.2.3 声音提示电路设计 . - 6 - 3.2.4 显示模块设计 . - 6 - 四、程序设计与系统仿真四、程序设计与系统仿真 - - 7 7 - - 4.1 模块介绍 - 7 - 4.1.1 主程序模块. - 9 - 4.1.2 密码比较判断模块 . - 9 - 4.1.3 键盘扫描模块 . - 9 - 4.1.4 修改密码模块 . - 10 - 五、系统功能五、系统功能 . . - - 12 12 - - 六设计总结六设计总结 . . - - 12 12 - - 七、附录:源程序七、附录:源程序 - - 12 12 - - 第- 3 -页 一、一、 前言前言 随着社会物质财富的日益增长
3、和人们生活水平的提高, 安全成为现代居民最 关心的问题之一。而锁自古以来就是把守门的铁将军,人们对它要求甚高,即要 求可靠地防盗,又要使用方便。传统的门锁既要备有大量的钥匙,又要担心钥匙 丢失后的麻烦。随着单片机的问世,出现了数字密码锁,其保密性高,使用灵活 性好,安全系数高,故受到广大用户的青睐。 数字密码锁通常使用 ARM 和单片机控制,单片机相对 ARM 实现较为简单,功 能较为完善,因此使用单片机控制较多。用单片机控制的密码锁常使用汇编语言 编写程序,数码管做显示器 。但本设计使用移植性及可读性强的 C 语言编写; 同时采用显示清楚、功率消耗小而且寿命长的 1602A 液晶显示器。从经
4、济实用的 角度出发,采用 ADUC848 单片机设计出一种具有密码设置、报警等功能的数字密 码锁,并通过 Proteus 软件成功地进行了仿真。 二、二、 总体方案设计总体方案设计 2.12.1 方案论证与比较方案论证与比较 方案一:以 ADUC848 单片机为数字密码锁系统核心,使用 4*4 矩阵键盘作为 数据输入方式, 驱动1602A显示器提示程序运行过程和开锁的步骤, 利用AT24C02 芯片实现掉电存储。图 1 为单片机控制密码锁的系统原理框图。 图 1 单片机控制密码锁的系统原理框图 方案二:以74LS112双JK触发器构成的数字逻辑电路控制方案,如图2。 ADUC848 单片机 AT24C02 存储芯片 矩阵 键盘 控制 LCD 1602A 蜂鸣器提示电路 电源模块 LED 密码校验提示 第- 4 -页 图2 数字逻辑控制方案数字密码锁原理框图 2.22.2 方案选择方案选择 由于利用单片机灵活的编程设计和强大的 I/O 端口,及其控制的准确性,不 但能实现基本的密码锁功能,还可以增添掉电