基于MSP430的电子密码锁设计

合集下载

一款基于MSp430单片机指纹密码锁系统的设计

一款基于MSp430单片机指纹密码锁系统的设计

西南交通大学 , 2 0 l 6 .
【 5 】 谢 亮 . 基 于 信 息 熵 和 改 进 粒 子群 算 法 的 医 学 图像 分 割 方
法研究 [ J 】 .半导体光电 , 2 0 1 6 , 3 7 ( 0 6 ) : 8 9 4 -8 9 8 .
款 基 于 MS p 4 3 O单片 机 指 纹 密码 锁 系统 的设 计
[ 3 ] Ke n n e d y J ,E b e r h a r t r C. P a r t i c l e S wa r m O p t i mi z a t i o n [ C ] .
Pr o c e e di ngs o f I EEE I n t e r na t i o na l Co nl e r e nc e o n N e ur 体 改 为 1 5 . 1 5点 阵 ,
内置 字 库 增 加 为 G B 2 3 1 2国标 一 、 二 级简 体 汉 字 字 库 及 前 1 6
区 字符 ( 1 6 . 1 6点 阵 ) 。
图 1系 统 结 构
1 . 2 硬 件 介 绍
1 . 2. 1 M SP 43 0 F5 41 9
 ̄ I S P 4 3 0 F 5 4 1 9进 行 通 信 。
【 ( ) 屏接 口
( 1 ) 光 标 功 能 : 写 入 光 标 功 能 指 令 后 , 光 标 会 在 下 一
个 输 入 的字 符 或 汉 字 的下 一 地 址 位 显 示 ( 不 在 最 后 显 示 的 字
符 或汉 字 下 方 )。可 根 据 需要 对 光 标 闪烁 效 果 和光 标 长 度 ( 8
M S P 4 3 0 f 5 4 1 9 系 列单 片机 ( M C U )是一个 1 6 位 、 采 用 了精 简 指 令 集 ( R I S C )结 构 的 M C U ;简 便 的 2 7 条 内核 指 令

基于MSP430的智能化指纹车锁系统的设计与实现

基于MSP430的智能化指纹车锁系统的设计与实现

基于MSP430的智能化指纹车锁系统的设计与实现
冯峰;许可;张志强;刘志刚
【期刊名称】《电脑知识与技术》
【年(卷),期】2017(013)009
【摘要】以一种MSP430为核心处理器的低成本、智能化的指纹自行车锁系统.该系统解决传统自行车锁存在着的操作不便,安全性欠佳等问题所设计的.借用智能手机上的指纹识别模块来担负指纹采集、对比、搜索等功能;选用HC05蓝牙通讯模块为指纹锁与手机建立可靠连接.与此同时,本文提出了密码指纹并行解锁方案与蜂鸣器自动报警方案.最后,在电路设计与软件方面进行了的低功耗设计.实际测试结果表明,本智能化指纹车锁系统使用便捷,可行性高.
【总页数】2页(P155-156)
【作者】冯峰;许可;张志强;刘志刚
【作者单位】沈阳建筑大学信息与控制工程学院,辽宁沈阳 110168;沈阳建筑大学信息与控制工程学院,辽宁沈阳 110168;沈阳建筑大学信息与控制工程学院,辽宁沈阳 110168;沈阳建筑大学信息与控制工程学院,辽宁沈阳 110168
【正文语种】中文
【中图分类】TP311
【相关文献】
1.基于AS602的智能指纹锁系统设计与实现 [J], 杨争辉;李多;叶桦
2.基于云服务的智能指纹锁系统设计与实现 [J], 黄晓林; 林梓锋
3.基于STC89C52单片机的指纹密码锁系统设计与实现 [J], 杨朋飞; 聂亮; 陈靖; 蔡长龙
4.基于stm32的嵌入式智能自动锁车系统的设计与实现 [J], 张沛轩;许钟煌;叶兆恒;苏嘉俊;赵越;叶港峰;杨楚明
5.基于STM32智能指纹锁控制系统设计与实现 [J], 王彰云
因版权原因,仅展示原文概要,查看原文内容请购买。

基于MCU msp430f5438A芯片的多功能智能门禁锁设计

基于MCU msp430f5438A芯片的多功能智能门禁锁设计

基于MCU msp430f5438A芯片的多功能智能门禁锁
设计
1、简介
 安全被越来越多的受到重视,门禁锁越来越普及,而且需求越来越复杂,有几个人必须同时刷卡才能进入;有的只有在规定时间段才能进入;有的第一个门锁关上之后,才能刷第二个门锁。

 普通门禁锁不能实现需求的多样性,所以设计一种智能门锁通过网络连接服务器,通过上位机软件在服务器的配置,来实现多种需求。

本作品系统方案如下
 (1)门禁锁和服务器采用网络通讯,UDP协议,增加实时性。

 (2)门禁锁通过控制继电器来控制门锁开关。

 (3)服务器和软件采用LAMP(linux+apache+mysql+php)架构,提高安全和稳定性。

毕业设计(论文)-基于msp430单片机的无线报警锁设计[管理资料]

毕业设计(论文)-基于msp430单片机的无线报警锁设计[管理资料]

基于MSP430单片机的无线报警锁设计摘要本系统是一个基于单片机的短距离无线报警系统,主要由阅读器(reader)和电子标签(tag)两大部分组成。

其中,阅读器部分为此系统的主体,考虑到系统成本问题,此次设计中采用电子标签来模拟阅读器。

系统设计采用单片机加射频芯片的方式,其中,单片机选用美国TI公司的MSP430F2232,,此系统为一简单的通信系统。

系统利用阅读器与电子标签之间来回传输的数据,再结合特定的报警装置外围电路,从而达到无线报警的目的。

关键字:RFID MSP430 nRF905 无线通信单片机Wireless alarming design based on MSP430 MCUABCTRCACTThe system is a short distance wireless alarming system based on single chip machine MSP430 series. It consists of two parts: the reader part and the tag part. Certainly, the reader is the main part. Considering the cost factor, the system adopts a simple tag to stimulate the reader part. The system operates in the form of MCU and Radio chip. The core MCU is MSP430F2232 from TI company in America, and the Radio chip is nRF905 from Nordic corporation in Norway. Generally speaking, the system is just a simple communication system. The system utilizes the data transmitted between the reader and the tag, and combines the peripheral circuits of alarming equipment to achieve the goal of wireless alarming.Key Word:RFID MSP430 NRF905 Wireless CommunicationMCU目录前言 (1)第一章绪论 (2)课题背景 (2)无线射频识别技术概述 (2)课题进展 (4)后话 (4)第二章芯片简介 (5)单片机芯片MSP430F2232 (5)射频芯片N RF905 (6) (9)GFSK数据调制 (10)第三章系统硬件设计 (12)系统硬件组成 (12)系统电路设计 (12)第四章系统软件设计 (20)程序语言介绍 (20) (20) (20) (20)C语言程序设计流程 (20)MSP430F2232编程基础简介 (21) (21)MSP430F2232寄存器介绍 (21)程序流程图 (24)系统源代码 (27) (27)第五章系统仿真调试 (28) (28) (29) (29)结论 (30)参考文献 (31)致谢 (32)前言近二三十年来,自动识别技术在全球范围内得到了迅猛的发展,初步形成了一个涵盖条码识别技术,射频设别技术,生物特征识别技术,图像识别技术以及磁识别技术等的计算机,光,电,通信和网络技术为一体的高技术学科。

毕业设计(论文)_基于plc电子密码锁设计[管理资料]

毕业设计(论文)_基于plc电子密码锁设计[管理资料]

一、题目:基于PLC电子密码锁设计二、内容与要求:,专业知识及基本技能来分析和解决实际问题的能力。

,在指导老师的帮助下完成毕业设计。

,完成电子密码锁的设计,本设计要求易于操作,安全系数高,使用方便等优点。

三、设计(论文)起止日期:任务下达日期:年月日完成日期:年月日指导教师签名:年月日四、教研室审查意见:教研室负责人签名:年月日基于PLC电子密码锁设计摘要本设计是采用西门子PLC来设计密码程序的,程序中应用到了近20个计数器。

设计的密码锁外观图类似于银行取款机台上的键盘。

给人感觉就和那种输入密码的过程一样。

其实不然,本设计中采用了计数器控制的特点,每个计数器的次数设定为几次那么所对应的按键就要按几次。

本设计分为开锁环节和解锁环节,开锁环节设定六个按键有效,解锁环节设定了七个按键有效,这样一来设定的开锁密码位数就大于等于六位了,解锁密码位数就大于等于七位。

要看计数器设定的次数而定。

如果密码锁报警的话必须先输入解锁密码,后输入开锁密码方能开锁。

关键词PLC 电子密码锁梯形图Based on PLC electronic combination lock designAbstract The design is used to design the password Siemens PLC program, the program applied to nearly 20 counter. The combination lock appearance design similar to a bank on the ATM figure of the keyboard. Give a person feel and that kind of input password as the process. Actually otherwise, the design with the characteristics of the counter control, the number of times each counter set for several times so of the corresponding key to be a few times. This design is divided into the lock and unlock link link, the lock link set six key effective, unlock the link set seven key effective, so the unlock password digits set was bigger than the equal to six, unlock password was bigger than the equal to seven digits. To see the number of counter set and decide. If the combination lock alarm words must first input unlock password input unlock password can unlock after.Keywords:PLC electronic Locks ladder Diagram目录引言 (1)第1章电子密码锁的背景及应用 (2) (2) (2)电子密码锁的性能特点 (2)电子密码锁的电路组成部分 (3)电子密码锁的应用 (3)第2章密码锁的硬件设计 (4)S7—200PLC的系统组成 (4)S7—200 的系统基本构成 (4)主机单元 (4)控制要求 (5)I/O的确定 (5)存储容量的选择 (6)I/O模块的选择 (6)I/O口分配表 (6)PLC外部接线图 (8)第3章密码锁的软件设计 (9)梯形图 (9)第4章程序设计的局限性和优点 (19)结论 (20)致谢 (21)参考文献 (22)引言PLC具有控制能力强、可靠性高、使用灵活方便和易于编程、扩张、通信等一系列优点,是当今及今后工业控制的主要手段和控制核心,因此PLC技术、数控计数、计算机辅助设计、计算机辅助生产以及机器人技术、已并列为现代工业生产自动化的四大支柱。

[MSP430学习笔记] 430加密总结

[MSP430学习笔记] 430加密总结

MSP430单片机常见加密总结1、为什么要加密,如何加密?当您的产品推向市场的时候,您的竞争对手就开始盯上它了,如果您的产品硬件很容易被模仿,而且您使用的MSP430单片机没有被加密的话,那么您辛辛苦苦的劳动成功就很容易成为您竞争对手的产品了,使用JTAG调试工具FET虽然可以将程序下载到芯片内部,但只有使用专业编程器能够防止程序被窃取。

2、JT AG、BSL、BOOTLOADER、熔丝的区别和关系是什么?JTAG接口能够访问MSP430单片机内部所有资源,通过JTAG可以对芯片进行程序下载、代码调试、内存修改等等,通过JTAG还能烧断加密熔丝,熔丝一旦被烧断,JTAG接口绝大部分功能失效,就再也不能通过它进行编程了。

BSL接口是利用芯片内部驻留的bootloader程序实现的自编程,通过特定的时序使得CPU进入bootloader代码断,然后利用每个MSP430芯片内部都有的Timer A构成一个软件串口来与上位机通讯,这样可以将代码下载到芯片内部。

实现BSL除了JTAG接口的一些引脚外,还需要用到两个TA0功能引脚,因此在设计产品时如果需要加密,则应该考虑将这两个引脚也连出来。

注意:A、要烧断熔丝(加密)必须使用JTAG接口;B、烧断熔丝后只能通过BSL 或者用户代码来实现编程更新。

3、BSL的验证密码是怎么回事?BSL也能读出芯片内部的代码,这样可以实现编程后的校验等功能。

通过BSL擦除所有Flash信息时不需要验证密码,但是要进一步操作,就得输入32字节密码进行验证。

BSL 的协议规定这32字节密码为芯片FLASH区域的最高32字节,也就是程序的16个中断向量,如果您拥有这段程序的最后32字节,就能通过BSL将芯片内部所有代码读取出来。

4、为什么要使用高级加密?32字节的密码看似几乎完全没可能使用穷举法来实现破解,但是各位别忘了,msp430的16个中断向量未必每一个都用到了,没用到的中断向量为0xffff,如果您的程序只用到了复位向量,那么破解者只需尝试最多32768次(中断向量为偶数,所以除以2)就能将其破解,另外,如果芯片本身Flash容量较小,比如4K字节,那么破解者只需尝试最多2K次就能将其破解。

基于MSP430的非接触式指纹IC卡门禁系统的设计

基于MSP430的非接触式指纹IC卡门禁系统的设计

MFRC531支持 ISO/IEC14443A/B的所 有 层 和 MIFARE经 典协议,以及与该标准兼容的标准。支持高速 MIFARE非接触式通信波特率。内部的发送器部分不需 要增加有源电路就能够直接驱动近操作距离的天线 (可达100mm)。接收器部分提供一个坚固而有效的 解调和解码电路,用于ISO14443A兼容的应答器信号。 数 字 部 分 处 理 ISO14443A帧 和 错 误 检 测 ( 奇 偶 &CR C)。此外,它还支持快速CRYPTO1加密算法,用于 验证M IFARE系列产品。与主机通信模式有8位并行和 SPI模式,用户可根据不同的需求选择不同的模式,这 样给读卡器/终端的设计提供了极大的灵活性。在本系 统中,与主机通信模式选用SPI模式(如图2所示), 同时可以节约CPU的IO口资源。
图3 Rc531的天线设计
2、指纹识别模块 本设计中采用了西安紫牛信息技术有限公司推出 的业界第一个“可编程指纹模块”B IG1080P-A指纹识 别模块。它是由32位高性能可编程处理器、活体指纹 采集芯片和指纹识别核心固件等构成的一个独立的嵌 入式指纹识别系统。该指纹模块具有250枚指纹存储能 力,具备1S以内的指纹比对性能,支持1∶1和1∶N两 种比对模式,能够任意兼容各类指纹传感芯片。它具 有两种工作模式:一是独立工作模式,二是从属工作 模式(如图4所示)它的TXD和RXD分别和MSP430的 UART0连接进行串口通讯。BIG1080P-A的UART是一 个标准的通用异步收/发的接口,接口支持的速率 115200bps。
美RFID公司GAO推出带警报功能的RFID标签
GAORFID推出的2.4GHz有源RFID标签GAO 127005,这款标签在有人试图损毁标签时可发出 警报。GAO127005标签底部带有一个小按钮,若 有人试图剥离标签或有任何异常发生时,按钮 会自动弹起,随之警报响起和警示灯开始闪烁。

基于MSP432单片机的电子密码锁设计与实现

基于MSP432单片机的电子密码锁设计与实现

基于MSP432单片机的电子密码锁设计与实现电子密码锁的使用越来越广泛,它方便安全地替代了传统的物理锁。

本文将介绍基于MSP432单片机的电子密码锁的设计与实现。

首先,我们将简要介绍MSP432单片机的特性,然后详细说明电子密码锁的设计流程,最后给出实际实现的示范。

MSP432单片机是德州仪器(TI)公司推出的一款低功耗、高性能的ARM Cortex-M4F系列单片机。

它具备丰富的外设接口和高度集成的功能,非常适合用于电子密码锁的设计与实现。

设计一个电子密码锁的关键步骤如下:1. 系统需求分析:首先,我们需要明确电子密码锁的功能要求。

比如,密码锁是否需要具备安全性强的密码保护、是否需要防暴力破解等。

2. 硬件设计:根据系统需求,选择合适的硬件组件,如键盘、LCD屏幕、电池等,并将它们与MSP432单片机进行连接。

3. 软件设计:编写相应的程序代码,实现电子密码锁的逻辑控制。

在设计中,我们将采用按键扫描、密码验证、锁定/解锁功能等技术手段。

4. 系统调试与优化:完成硬件连接和软件编写后,对电子密码锁进行系统调试,确保其功能正常。

此外,对系统进行优化,提升性能和稳定性。

下面将详细介绍电子密码锁的设计与实现。

1. 系统需求分析在系统需求分析阶段,我们应该明确电子密码锁的基本功能。

例如,我们可以设置一个4位数字密码,并使用LCD显示屏显示输入密码的状态。

此外,我们还可以增加一些扩展功能,如多用户密码管理。

2. 硬件设计硬件设计是电子密码锁实现的基础。

我们可以选择一个合适的键盘作为输入设备,并通过引脚连接到MSP432单片机。

同时,我们还需要选择一个LCD屏幕用于显示密码输入的状态。

最后,电池或者电源适配器可以为系统提供电力。

3. 软件设计软件设计是电子密码锁设计中最关键的一步。

首先,我们需要编写按键扫描的代码,以便获取用户输入的密码。

然后,通过密码验证算法比对用户输入密码和预设密码是否匹配。

最后,根据密码验证的结果,控制锁的状态进行锁定或解锁。

基于MSP430的电子密码锁设计

基于MSP430的电子密码锁设计

基于MSP430的电子密码锁设计一、预期性能指标1、(1)密码通过键盘输入,若密码正确,则将锁打开。

(2)报警、锁定键盘功能。

密码输入错误数码显示器会出现错误提示,若密码输入错误次数超过 3 次,LED红灯亮并且锁定键盘。

2、密码锁设计的关键问题是实现密码的输入、清除、更改、开锁等功能:(1)密码输入功能:按下一个数字键,一个“-”就显示在最右边的数码管上,再输入时显示数码管向右移动一个。

(2)密码清除功能:当按下清除键时,清除前面输入的所有值,并清除所有显示。

(3)开锁功能:当按下开锁键,系统将输入与密码进行检查核对,如果正确锁打开,否则不打开。

二、工作原理1、工作原理概述利用MSP430单片机灵活的编程设计和丰富的I/O端口,及其控制的准确性,实现基本的密码锁功能。

此次课程设计是以以前学过的msp430F149 单片机为核心,加上一些外围模块来实现电子锁应该具有的基本功能。

单片机灵活的编程设计和丰富的IO 端口,及其控制的准确性,不但能实现基本的密码锁功能,还能添加调电存储、声光提示甚至添加遥控控制功能,为其功能的扩展提供便利。

由于条件的限制此次实验只实现其基本功能,锁的开启关闭与锁定以二极管的发光来模拟,密码的输入用4X4 键盘替代,功能键用键盘上对应的10 以后的数字代替,这实现了在条件有所限制的情况下以有限的资源模拟电子锁的功能。

输入密码用矩形键盘,包括数字键和功能键。

LED 数码管显示输入密码,用uln2003A 驱动数码管发光且控制哪一位显示数码,用430 的P4 脚控制各位显示器分时进行显示。

用发光二极管代替开锁的电路,发光表示开锁锁定。

输入密码错误次数超过3 次,系统蜂鸣器响,发出警报。

打开电源后,显示器显示“0000”,设原始密码为“1234”,只要输入此密码便了开门。

这样可预防停电后再来电时无密码可用。

按“C”键,清除显示器为“000000”。

欲重新设定密码,先输入密码在案“*”。

基于单片机的电子安全密码锁的设计

基于单片机的电子安全密码锁的设计

基于单片机的电子安全密码锁的设计一、本文概述Overview of this article随着科技的不断发展,电子安全设备在我们的日常生活中扮演着越来越重要的角色。

其中,电子密码锁作为一种重要的安全设备,已经广泛应用于家庭、办公室、银行、仓库等场所。

为了满足日益增长的安全需求,设计一种高效、稳定、可靠的电子密码锁成为了当前的重要任务。

本文旨在探讨基于单片机的电子安全密码锁的设计方案,旨在提供一种便捷、安全、可靠的密码锁解决方案。

With the continuous development of technology, electronic security devices are playing an increasingly important role in our daily lives. Among them, electronic password locks, as an important security device, have been widely used in homes, offices, banks, warehouses and other places. In order to meet the growing security needs, designing an efficient, stable, and reliable electronic password lock has become an important task at present. This article aims to explore the design scheme of electronic security password locks based on microcontrollers,aiming to provide a convenient, secure, and reliable password lock solution.本文首先介绍了电子密码锁的研究背景和意义,阐述了传统机械锁与电子密码锁相比的优势。

基于MSP430芯片的密码锁软件设计

基于MSP430芯片的密码锁软件设计

基于MSP430芯片的密码锁软件设计徐志雄【摘要】文章介绍了一个新型超低功耗的密码锁控制系统的软件编程.【期刊名称】《自动化与信息工程》【年(卷),期】2009(030)003【总页数】3页(P38-39,42)【关键词】MSP430;密码锁;软件设计【作者】徐志雄【作者单位】广州市光机电工程研究开发中心【正文语种】中文【中图分类】TP3受深圳市某保密技术有限公司的委托,本文设计了一套密码锁的电控系统,硬件上是基于MSP430系列单片机的电池供电低功耗系统。

与之配套,软件上采用了IAR公司的MSP430开发平台,运用C语言编写了相关的软件。

软件采用模块化设计,性能可靠,可读性、可维护性强。

2.1 功能(1) 开锁方式:为以下七种方式中的一种,在系统上电后人工选择。

① 常码PSW0及备码PSW1。

两个密码都可独立开锁;PSW0可改自身;PSW1可改两者。

② 八个密码M1、M2、M3、M4、M5、M6、M7、M8。

八个密码都可独立开锁;M2~M8只可改自身;M1可改所有的八个密码。

③ 两个密码M1、M2。

只有两个密码组合才能开锁。

各自只能改自身。

④ 三个密码M1、M2、M3。

只有三个密码组合才能开锁。

各自只能改自身。

⑤ 四个密码M1、M2、M3、M4。

只有四个密码组合才能开锁。

各自只能改自身。

⑥ 五个密码M1、M2、M3、M4、M5。

只有五个密码组合才能开锁。

各自只能改自身。

⑦ 六个密码M1、M2、M3、M4、M5、M6。

只有六个密码组合才能开锁。

各自只能改自身。

(2) 连续四次操作错误, 锁按键并鸣叫报警;(3) 在密码锁关闭时,密码箱在振动时报警一段时间。

可按解除报警密码解除报警;(4) 按键每按下一次,需有声光指示;(5) 操作时具有出错及正确指示;(6) 具有锁的状态指示;(7) 具有电池电压指示;(8) 操作规程:· 震动报警的复位:马上停下所有操作,按两次改码键,再输入正确解除报警密码,按确认键。

基于MSP430单片机的智能门锁控制系统设计毕业设计

基于MSP430单片机的智能门锁控制系统设计毕业设计

毕业设计基于MSP430单片机的智能门锁控制系统的设计摘要:随着科技的进步,以单片机为核心的自动门锁控制系统已经开始进入了人们的生活。

本论文着重阐述了以msp430单片机为核心,通过并行接口直接控制LCD液晶显示器模块及键盘扫描,并与接触式IC卡读写技术相结合的系统。

为保证门锁使用的安全性,系统自动比较IC卡密码和用户输入密码,若输入的密码与系统读出的IC卡密码相同,门锁自动开启;若连续输入三次错误的密码,系统自动停止此卡的使用,并及时将报警信号通过RS-485串行通信总线传往主控台。

本设计的优点是硬件电路简单,软件功能完善,控制系统可靠,具有一定的实用价值。

该系统拓展后,可用于其他智能家电的控制,具有好的应用前景。

关键词:MSP430单片机,接触式IC卡,LCD显示器,电子门锁The hardware design and realization of IC card electronicdoor locks controlling systemAbstract:With the progress of technology, the automatic door locks control system which takes the the Single Micro Chip Computer as the core is stepping into people's lives. This paper focuses on the system which takes the series Single Micro Chip Computer msp430 as the core, which controls Liquid Crystal Display modules and keyboard scanning through the control chip directly, and contacts the IC card read-write technology. In order to guarantee the security of the door lock's use, the system design offers an comparision between the IC card password and the password which the user input. If inputed password and the IC card password read out on the system read-out are same, the door lock will be opened automaticly. If you input wrong password three times continuously, the system will automatically stop the use of the card, and the alarm will be transmited to the key station promptly through the RS-485 serial telecommunications bus st-bus. The advantage of this design is simple in the hardware circuits, software functional improvements, the control system′s reliablily, and has certain practical. After this system is developed, it can be used in other intelligent electrical appliances' control and has a good application prospect.Key words: MSP430Single Chip Micro Computer, IC cards, Liquid Crystal Display, Electronic door locks一系统分析(一)系统研究的可行性任何系统在开发之前,都要进行可行性分析来确定项目开发是否有必要和可行。

基于msp430的数字密码锁

基于msp430的数字密码锁

基于msp430f149的数字密码锁摘要在日常的生活和工作中, 住宅与部门的安全防范、单位的文件档案、财务报表以及一些个人资料的保存多以加锁的办法来解决。

若使用传统的机械式钥匙开锁,人们常需携带多把钥匙, 使用极不方便, 且钥匙丢失后安全性即大打折扣。

在安全技术防范领域,具有防盗报警功能的电子密码锁逐渐代替了传统的机械式密码锁,电子密码锁具有安全性高、成本低、功耗低、易操作等优点。

在本次萌芽计划电子设计制作中,我们采用TI公司生产的msp430作为主控芯片,结合外围的矩阵键盘输入、LCD显示、蜂鸣器报警和LED显示等,用C语言编写主控芯片程序,设计了一款可以数字字母混合密码输入,具有报警功能的数字密码锁。

关键词:数字密码锁msp430 报警目录目录 (2)第一章系统方案设计与论证 (3)方案比较 (3)方案设计与论证 (3)设计框图 (4)第二章主要元器件介绍 (4)Msp430f149 (4)LCD1602液晶显示器 (7)LM7805 (8)ASM1117-3.3 (10)第三章系统硬件结构设计 (12)单片机电路 (12)矩阵键盘电路 (12)复位单路 (13)LCD显示电路 (13)LED显示电路 (13)报警电路 (14)电源电路 (14)第四章系统软件设计 (14)主程序流程图 (14)功能按键软件设计 (15)密码设置软件设计 (16)第五章实验分析 (17)测试方法 (17)测试分析 (18)第五章总结 (18)附录 (19)附录一整体电路图 (19)附录二PCB封装图 (20)附录三部分程序 (20)第一章系统方案设计与论证方案比较方案一:以STC89C52单片机为电子密码锁系统核心,使用4*4矩阵键盘作为数据输入方式,驱动LCD1602显示器提示程序运行过程和开锁的步骤,利用AT24C02芯片实现掉电存储。

方案二:以msp430f149单片机为电子密码锁系统核心,使用4*4矩阵键盘作为数据输入方式,驱动LCD1602显示器提示程序运行过程和开锁的步骤。

基于单片机的电子密码锁设计

基于单片机的电子密码锁设计

基于单片机的电子密码锁设计在平时生活中,密码锁是一种常见的安全设备,被广泛应用于家庭、办公室等场所。

随着科技的进步,传统的机械密码锁已经不能完全满足人们对安全性和便捷性的需求。

为了提高密码锁的安全性和好用性,许多基于单片机的电子密码锁被设计出来。

本文将介绍一种,并详尽说明其工作原理和实现过程。

1. 设计思路基于单片机的电子密码锁的设计目标是提高安全性和便捷性。

传统的机械密码锁容易被暴力破解,而且若果密码被泄露,需要更换整个锁体。

因此,接受电子密码锁可以提供更高的安全性和便利的密码管理功能。

2. 系统组成基于单片机的电子密码锁主要由以下几个部分组成:(1)输入模块:用于输入密码的设备,可以是键盘、触摸屏等。

(2)单片机控制模块:使用单片机作为核心控制器,接收输入密码并进行验证。

(3)驱动模块:通过驱动模块对电子锁进行控制开关。

(4)显示模块:以LED或LCD等形式显示相关信息。

(5)电源模块:为电子密码锁系统提供电能供应。

3. 工作原理基于单片机的电子密码锁的工作原理如下:(1)初始状态下,用户可以通过输入密码进行解锁或锁定。

输入模块接收用户输入的密码。

(2)输入模块将密码发送给单片机控制模块。

(3)单片机控制模块使用事先设定的密码进行比对。

若果密码匹配,单片机控制模块将发出控制信号给驱动模块。

(4)驱动模块接收到控制信号后,将依据信号的指示打开或关闭电子锁。

(5)同时,单片机控制模块会发出指令给显示模块,将结果显示给用户。

4. 实现过程基于单片机的电子密码锁的实现过程如下:(1)选择合适的单片机,如AT89C51。

(2)设计电路板,将输入模块、单片机控制模块、驱动模块、显示模块和电源模块毗连在一起。

(3)编写单片机的控制程序,实现密码验证和控制信号的生成。

(4)制作密码锁外壳,将电子密码锁系统组装在一起。

(5)测试电子密码锁的各个功能是否正常。

5. 应用和进步基于单片机的电子密码锁由于其高安全性和便捷性已经得到广泛应用。

基于单片机的电子密码锁设计

基于单片机的电子密码锁设计

基于单片机的电子密码锁设计一、电子密码锁的工作原理电子密码锁主要由输入模块、控制模块、存储模块和执行模块组成。

用户通过输入模块(如键盘)输入密码,控制模块(单片机)对输入的密码进行处理和判断,并与存储模块中预先设定的密码进行比对。

如果输入密码正确,控制模块将向执行模块发送开锁指令,实现开锁;如果输入密码错误,则执行相应的错误处理操作,如报警、锁定等。

二、硬件设计(一)单片机的选择在本设计中,选用了_____型号的单片机。

该单片机具有性能稳定、功耗低、接口丰富等优点,能够满足电子密码锁的控制需求。

(二)输入模块输入模块采用了矩阵键盘,通过行列扫描的方式获取用户输入的密码。

矩阵键盘具有按键数量多、占用端口少的特点,能够有效节省单片机的资源。

(三)存储模块为了存储预设的密码,选用了_____型号的EEPROM芯片。

EEPROM具有掉电不丢失数据的特性,能够保证密码的安全性和可靠性。

(四)显示模块为了给用户提供反馈信息,使用了_____型号的液晶显示屏。

可以显示开锁状态、输入错误提示等信息。

(五)执行模块执行模块包括电磁锁和报警装置。

当输入密码正确时,单片机控制电磁锁打开;当输入密码错误次数超过设定值时,启动报警装置。

三、软件设计(一)主程序流程系统上电后,首先进行初始化操作,包括单片机端口初始化、EEPROM读取预设密码等。

然后进入密码输入等待状态,当检测到有按键输入时,进行密码处理和判断,并根据判断结果执行相应的操作。

(二)密码输入处理在密码输入过程中,对输入的按键进行去抖处理,防止误判。

同时,对输入的密码进行加密处理,提高密码的安全性。

(三)密码比对将输入的密码与存储在EEPROM中的预设密码进行比对。

比对过程中,采用逐位比较的方式,确保密码的准确性。

(四)错误处理当输入密码错误时,记录错误次数。

如果错误次数超过设定值,则启动报警装置,并锁定键盘一段时间,防止暴力破解。

四、系统调试与测试(一)硬件调试首先检查电路连接是否正确,有无短路、断路等情况。

基于单片机的数字密码锁毕业设计

基于单片机的数字密码锁毕业设计

基于单片机的数字密码锁毕业设计简介本文档介绍了基于单片机的数字密码锁的毕业设计。

数字密码锁是一种常见的电子锁,由一组数字按钮和控制电路组成,用户可以使用预设的数字密码来解锁。

本毕业设计通过使用单片机控制电路,实现了一个简单而可靠的数字密码锁系统。

设计目标本毕业设计的目标是设计并实现一个基于单片机的数字密码锁系统,具体要求如下:1.可以设置和修改数字密码。

2.包含输入数字密码、解锁成功和解锁失败等状态指示。

3.具备密码保护功能,连续3次错误输入将触发报警。

4.低功耗设计,使用电池供电。

系统组成基于单片机的数字密码锁系统由以下几个主要部分组成:1.单片机控制电路:负责控制整个系统的工作。

2.数字按钮组:用于输入密码。

3.显示屏:用于显示状态指示和密码输入。

4.报警器:在密码错误次数达到一定次数后触发警报。

下面将逐一介绍这几个部分的原理和设计。

单片机控制电路本设计中选择了常用的ATmega328P单片机作为控制核心。

ATmega328P是一款功能强大的8位微控制器,具备多个GPIO引脚、I2C接口和EEPROM存储器,适合应用在本数字密码锁系统中。

控制电路主要负责以下几个任务:1.按钮输入检测:通过GPIO引脚读取用户输入的密码。

2.软件逻辑控制:根据用户的输入和预设密码,判断是否解锁成功。

3.状态指示:通过GPIO引脚控制显示屏上的状态指示灯。

数字按钮组数字按钮组由多个数字按钮组成,每个按钮分别对应数字0-9。

用户通过按下不同的按钮来输入密码。

按钮组的原理比较简单,每个按钮与GPIO引脚相连,按下按钮时,相应的GPIO引脚会变为低电平。

显示屏显示屏用于显示数字密码的输入状态和解锁结果。

对于本设计,可以选择使用数码管或者液晶显示屏。

数码管相对简单,通过GPIO引脚控制不同段来显示数字或字符。

而液晶显示屏则需要驱动芯片来实现显示。

报警器报警器用于报警功能。

在用户连续3次输入错误密码后,控制电路会触发报警器,发出声音或者闪烁指示灯来提示用户。

基于MSP430的无线门禁控制系统设计

基于MSP430的无线门禁控制系统设计

片 转 换 成 + 5V 后 供 给 L D1 8 4 C 2 6 。单 片 机 的 P 1口作 为
控制 L D 26 C 1 8 4的控 制 口 ,2口作 为 数 据 口与 L D 2 6 P C 1 84
2 系 统 硬 件 设 计
门禁 控 制 系 统 的 硬 件 设 计 包 括 中 央 控 制 中 心 设 计 和 门控模块设计 , 面就各个部分进行详细介绍 。 下
2 12 L D显 示 模 块 . . C
考 虑 到 设 备 低 功 耗 的 要 求 , 选 的显 示 模 块 必 须 达 到 所 低 功 耗 的 目的 。本 系 统 采 用 了 L D1 8 4作 为 显 示 模 块 , C 26 其 供 电 电 压 为 4 5 5V 供 电 , 作 电流 为 3mA, 功 耗 、 .~ 工 低
果 在 6 S内无 任 何 操 作 , 清 除 所 有 输 入 内容 。 如 果 某 个 则
门控 模 块 有 密 码 输 人 情 况 , 控 模 块 内 部 的 C 3 F5 3 门 C4 0 1 5 单 片 机 会 通 过 内 部 集 成 的 RF无 线 收 发 器 , 有 人 输 入 密 将 码 开 门 的 信 号传 输 给 中 央控 制 中 心 , 这样 中 央 控 制 中 心 就 能 知 道所 有楼 门 的 情 况 , 央 控 制 中 心 通 过 一 个 L D 显 中 C
W i es orCe tel r el s Do n r Sys e Ba ed on M SP4 0 t m s 3
Li i g e g,H u e uJ n p n iW i
( rh a t r i e st , h n a g 1 0 0 ,Ch n ) No t e s e n Unv r i S e y n 1 0 4 y i a

基于双MSP430单片机的新型电子锁

基于双MSP430单片机的新型电子锁

2018年第1湖y信息疼甲文章编号=1009 -2552(2018)01 -0075 -06D O I:10. 13274/ki.hdzj.2018. 01. 018基于双MSP430单片机的新型电子锁张秀再1>2,孔明昊\于子涵\庄玲1(1.南京信息工程大学电子与信息工程学院,南京210044 ;2.江苏省大气环境与装备技术协同创新中心,南京210044)摘要:文中设计了一种基于GPS模块、SIM900A模块、电容指纹传感器、MEMS加速度传感器和双MSP430F169单片机的新型电子锁系统。

系统可以通过指纹识别开锁,通过加速度传感器检测空间三轴上的重力加速度分量是否变化判断车辆等是否被异常移动,发生异常移动时进行报警,同时通过SIM900A通信模块将GPS定位信息发送至绑定手机上,开锁信息及定位信息由LCD显示。

该新型电子锁功能全面,适用范围广,具有较强的实用意义。

关键词:电子锁;GPS;GSM;MEMS传感器;指纹识别中图分类号:TP368. 1文献标识码:ANew electronic lock based on double single chip microcomputers MSP430 ZHANG Xiu-zai12,KONG Ming-hao1,YU Zi-han1,ZHUANG Ling1(1. School of Electronic and Information Engineering,Nanjing University of Information Scienceand Technology,Nanjing 210044,China;2. Jiangsu Collaborative Innovation Center on AtmosphericEnvironment and Equipment Technology,Nanjing 210044,China)Abstract :This paper designs a new pattern ol positioning alarm electronic lock based on GPS module, SIM900A module,capacitive fingerprint sensor and MSP430F169 micro-controller.The design uses a convenient fingerprint recognition to unlock.It judges whether the vehicle is moved abnormally or not by detecting the change of the gravity acceleration component on the three axes of the space.The system will alarm when the abnormal movement takes place,while positioning the vehicle location information through the GPS,and it then sends the information through the SIM900A to the specific mobile phone.It uses LCD to display the unlocking information.The system has certain practical significance for its comprehensive feature and wide range of application.Key words:electronic lock;GPS;GSM;MEMS sensor;fingerprint recognition0引百近年来,交通拥堵问题和环境污染问题日益突出,作为绿色交通工具的自行车再度成为世界人民的“宠儿”,全世界自行车的使用量进一步加大⑴。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

基于MSP430的电子密码锁设计一、预期性能指标1、(1)密码通过键盘输入,若密码正确,则将锁打开。

(2)报警、锁定键盘功能。

密码输入错误数码显示器会出现错误提示,若密码输入错误次数超过 3 次,LED红灯亮并且锁定键盘。

2、密码锁设计的关键问题是实现密码的输入、清除、更改、开锁等功能:(1)密码输入功能:按下一个数字键,一个“-”就显示在最右边的数码管上,再输入时显示数码管向右移动一个。

(2)密码清除功能:当按下清除键时,清除前面输入的所有值,并清除所有显示。

(3)开锁功能:当按下开锁键,系统将输入与密码进行检查核对,如果正确锁打开,否则不打开。

二、工作原理1、工作原理概述利用MSP430单片机灵活的编程设计和丰富的I/O端口,及其控制的准确性,实现基本的密码锁功能。

此次课程设计是以以前学过的msp430F149 单片机为核心,加上一些外围模块来实现电子锁应该具有的基本功能。

单片机灵活的编程设计和丰富的IO 端口,及其控制的准确性,不但能实现基本的密码锁功能,还能添加调电存储、声光提示甚至添加遥控控制功能,为其功能的扩展提供便利。

由于条件的限制此次实验只实现其基本功能,锁的开启关闭与锁定以二极管的发光来模拟,密码的输入用4X4 键盘替代,功能键用键盘上对应的10 以后的数字代替,这实现了在条件有所限制的情况下以有限的资源模拟电子锁的功能。

输入密码用矩形键盘,包括数字键和功能键。

LED 数码管显示输入密码,用uln2003A 驱动数码管发光且控制哪一位显示数码,用430 的P4 脚控制各位显示器分时进行显示。

用发光二极管代替开锁的电路,发光表示开锁锁定。

输入密码错误次数超过3 次,系统蜂鸣器响,发出警报。

打开电源后,显示器显示“0000”,设原始密码为“1234”,只要输入此密码便了开门。

这样可预防停电后再来电时无密码可用。

按“C”键,清除显示器为“000000”。

欲重新设定密码,先输入密码在案“*”。

输入密码,再按“D”键。

若密码与设定密码相同,则开门。

否则显示器清为“0000”。

软件的设计主要包括键盘键值的读取,LED 显示程序,密码比较程序和报警程序2、设计方案与原理框图(1)主要的设计实施过程:第一步,选用 msp430单片机,以及选购其他电子元器件(电阻(100欧、150欧、2K欧等)、发光二极管、三极管、数码管(阴极)、ULN2003AG芯片、按键、电线、PADS9.3软件、MATLEB软件、焊接电路板一块)。

第二步,使用PADS9.3软件设计硬件电路原理图,并设计 PCB图完成人工布线。

第三步,焊接电路第四步,MATLEB软件编写单片机的 C 语言程序、仿真、软件调试。

第五步,联合软、硬件调试电路板,完成本次设计。

(2)原理框图:3、原理框图的说明用户根据数码管显示使用键盘输入密码,输入密码时用户可以按相应的功能键来进行不同的操作控制,按键A 可以删除上一次输入的一位密码,按键B 确认密码,按键C 可以再“锁开”的状态下修改原始密码。

用户输入完密码后,单片机将用户输入的密码与真的密码进行比较,如果正确就开锁,如果不正确提示用户再次输入密码并累加密码输入错误的次数,当密码输入错误的次数大于3 时就发出警报,如果从新输入正确的密码则将累加器清零。

在输入密码正确锁开的状态下,按功能键C,就可以输入新的密码,新的密码需要进行二次确认,如果前后两次输入的密码一致单片机则保存新输入的4 位数字作为密码。

三、硬件设计1、器件选型选用 msp430单片机,以及选购其他电子元器件(电阻(100欧、150欧、2K 欧等)、发光二极管、三极管、数码管(阴极)、ULN2003AG芯片、按键、电线、PADS9.3软件、MA TLEB软件、焊接电路板一块)。

2、参数匹配键盘通过阻值为10 千欧的电阻与单片机的引脚可直接相连。

数码管的驱动电流很大,不能直接与单片机相连,选用可以同时驱动8 路500mA电流的uln2003a 芯片驱动数码管显示。

3、原理图及PCB图(包括PADS软件使用)(1)键盘电路设计Msp430单片机接口相对本次设计较多,故,采用独立按键的接法,一个按键占用一条I/O线的数目。

下图(为电路按键按键一组(4个)的解法):键盘处理程序首先执行等待按键并确认有无按键按下的程序段。

当确认有按键按下后,下一步就要识别哪一个按键按下。

对键的识别通常有两种方法:一种是常用的逐行扫描查询法;另一种是速度较快的中断响应法。

(2)LED显示电路显示电路是为了给使用者以提示而设置。

MSP430单片机驱动数码管发光显示数码和控制位选信号,以完成显示功,能显示电路的电路。

原理图如图:数码管的a,b,c,d,e,f,g,dp八个管脚,接在单片机的P4口八个口上,ULN2003的4个IN脚接在P3.7-P3.4口,用来控制那个数码管亮。

(3)msp430单片机的接口电路通过把MATLEB软件编写的单片机 C 语言程序,烧到单机芯片中,来运行功能、响应按键、控制输出。

(4)开锁和报警电路用发光二极管代替电磁锁,来反应单片机运行的功能。

电路图如下图:绿灯亮表示电子锁已经打开;红灯亮表示密码输入错误;黄灯亮表示设置密码阶段,允许修改密码;白灯亮表示单片机已锁且正常工作。

(5)ULN2003AG电路ULN2003AG是提高控制信号的驱动能力(即驱动芯片),用来作输出瑞驱动,单片机通过控制ULN2003AG的输入来控制是哪一个数码管亮。

(6)PCB图软件设计1、软件框图(1)键盘扫描(2)LED显示(3)密码比较与报警2、流程图4、设计体会这是一次理论结合实践的课程设计,而且对于实践的要求特别强,需要接触实际的器件和电路,查阅相关资料,并动手设计电路图和PCB图,这次硬件电路的设计,让我学会了用PADS 软件自己去设计一块满足要求的电路板,在老师的示范下,一步一步的按照要求如何画原理图。

刚刚开始时,使用软件还不熟练,有的地方画错了而不自知,或者不知道怎么样画,随着对软件的熟悉,和别的同学请教,慢慢掌握了技巧,比如器件它实际的形状和在电路板上的实际焊接,比如元器件如何画封装,画完图后还检查出很多不知道如何修改的电气错误,请教别人之后,就换种方法画,把错误一点点的改正,最终达到良好的设计效果,修改过程中是比较繁琐的,要耐着性子,细心认真的修改才行,当最终设计完成后心里是非常自豪和有成就感的。

不仅学习了新知识,加强了动手能力,还养成了越是繁琐的工作越要细致的好习惯。

说明键盘采用行列式矩阵键盘,键盘处理程序首先执行等待按键并确认有无按键按下的程序段,采用中断响应法响应即在有按键按下时中断处理程序才会执行,节省电量。

LED显示采用动态扫描显示,一次只显示一个数码管,不同时刻在不同位的数码管上显示相应的数字,但是更新的频率为2ms,所以显示的效果与静态一样。

按不同的功能键会调出不同的处理程序,实现相应的功能。

四、调试试验1、试验验证方法设计完硬件后,完成软件的设计,把程序烧录进单片机,就可以直接测试。

首先,正确的输入4 位密码,锁开在锁开的状态下按下修改密码键,两次真确输入新的密码,按确定键输入新密码,所重新打开连续输入错误的密码3 次,键盘锁定2、遇到问题及解决方法新输入的密码无法同时显示,由于数码管只由一个口8 线控制显示,所以显示时一个时间只能显示同一数字。

解决方法:使用动态显示,修改程序。

在没有开锁的情况下按修改密码键的时候仍然可以修改。

解决办法:无论什么时候按键,首先提示输入以前的密码,如果正确才让修改。

有时候会忘记自己的密码。

解决办法:在修改密码的时候,连续两次输入新的密码,两次输入的密码一致时,才保存新的密码。

在未完全输入密码时,按其他的功能键,有时候系统也会去相应,造成系统发生错误。

解决办法:在输入密码时(解锁或者修改密码),屏蔽其他中断,直到输入完毕,按确定键为止。

五、总结分析1、性能分析密码锁的基本功能:解锁,密码修改,电路报警,基本实现。

密码设计的是四位十进制密码,碰巧打开的机会很少。

由于缺少掉电保护,所以在断电后,再次开启的时候,前面的操作会失效。

而且有可能在修改密码后,出现密码复原现象。

2、试验结果分析实验过程中,规范的输入密码,开锁,修改密码都会成功。

当不按规范输入时,程序有时会出错,数码管出现乱码,需要断电后再开启才能恢复正常。

修改完密码后断电,再开启,密码依旧是没有修改的密码。

连续输入错误密码3 次系统会报警10 秒,且键盘锁定。

结果分析:程序编的不是很完善,缺少错误处理措施。

硬件没有断电保护电路,无法记忆前序操作六、自我评价1、设计总结课程设计是培养学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程.随着科学技术发展的日新日异,单片机已经成为当今计算机应用中空前活跃的领域,在生活中可以说得是无处不在。

因此作为二十一世纪的大学来说掌握单片机的开发技术是十分重要的。

回顾这两个星期的课程设计,我发现自己收获很大,学到很多的东西,不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识,更重要的是养成了细致耐心的处理复杂枯燥工作的习惯,刚刚开始时确实遇到很多困难,但随着一项一项的解决,自己也受到了很大的磨练。

通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有把所学的理论知识与实践相结合起来,才能做出有用、实用的东西来,提高自己的实际动手能力和独立思考的能力。

在设计的过程中遇到问题,由于第一次做,有很多不懂的,错误的。

在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固,对单片机汇编语言掌握得不好,通过这次课程设计之后,把以前所学过的书重新翻了出来,温习以前的相关内容。

最终顺利的完成了任务。

2、进一步改进措施通过这次课程设计,我学到了很多。

首先在设计之前要想好自己要设计什么,设计的东西要达到什么标准,有什么要求,在这次设计过程中我们小组就犯了这样的错误,在选题上没有彻底了解选题的内容,在做到一定程度后发现自己做不下去了,就只能改变选题了。

设计必须要有一个清晰地思路,要有一个大体的框架。

最初设计的时候,老是觉得设计过于复杂,到现在想一下,整个系统分为键盘,显示,系统,开锁模块是非常容易清晰的。

程序的设计必须依据硬件电路,还有就是要考虑各种意外情况,增加错误处理程序这样的系统才能稳定,接下来的改进措施应该注重电子锁的安全性、稳定性进行设计,还可以加上一些人性化设计。

七、附录1、软件和硬件工作时的图片报警中的图片2、程序主程序:/*********************************************** 程序功能:电子锁------------------------------------------------跳线设置:将跳线座J3 上的短路帽拔下------------------------------------------------测试说明:按动K1~K16 按键,观察数码管显示,聆听按键时蜂鸣器是否发声************************************************/ #include <msp430x14x.h>#include "Boa rdConfig.h"#include "Keypad.h"#include "gdata.h"uint num;ucha r a[4];/*******************报警函数*******************/ void alert(void ){long int i;P6OUT = 0; //蜂鸣器报警for(i = 99999; i > 0; i--);P6OUT |= BIT7;num++;}/**********************************************//********************主函数********************/void ma in(void){uint j,x,fla g,fla g1;long int i;num=0;fla g=0; //标记新一轮输入fla g1=0; //改码a[0]=1; a[1]=2; a[2]=3; a[3]=4;//初始密码值BoardConfig(0x80); //打开数码管、流水灯,关闭电平转换WDTCTL = WDT_ADL Y_1_9; //设置内部看门狗工作在定时器模式,1.9ms 中断一次IE1 |= WDTIE; //使能看门狗中断P2DIR = 0xff; //LED 显示P4DIR = 0xff;P5DIR = 0xff; //设置P2,P4,P5 的IO 方向为输出P6DIR |= BIT7;P2OUT = 0xff;P4OUT = 0x00; //设置P4,P5 的输出初值P5OUT = 0xff;P6OUT |= BIT7; //蜂鸣器对应IO 设置为输出_EINT(); //打开全局中断Init_Keypad();for(j=0;j<4;j++) //初始显示为“AAAA”Dispbuf[j] = 10;j=0;while(1){if(num>2){P1DIR = 0x00;P1OUT |= 0x00;P6OUT = 0;P2OUT ^= 0xff;for(i=999999;i>0;i--);P6OUT |= BIT7;P2OUT = 0xff;P1DIR = 0xf0; //P1.0~P1.3 设置为输入状态, P1.4~P1.7 设置为输出状态P1OUT |= 0xf0; // P1.4~P1.7 输出高电平num=0;}Key_Event();if(key_Fla g == 1) //按键已释放{key_Fla g = 0;if((key_val==12)||(key_val==14)||(key_val==15)) //容错{fla g=1;alert();for(j=0;j<4;j++)Dispbuf[j] = 10;j=0;}if(key_val==11) //取消密码{fla g=1;for(j=0;j<4;j++)Dispbuf[j] = 10;j=0;}/*GGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG GGGGGGGGGGGGGGGGGGGGGG*/if(fla g1==2) //改码{P2OUT ^= 0xff;for(i = 2000; i > 0; i--);P2OUT = 0xff; //提示灯a[j]=key_val;if(j==4){fla g=1; //fla g1=0;for(j=0;j<4;j++)Dispbuf[j] = 10;j=0;}}if(key_val==13) //改码的另一个条件{P2OUT ^= 0xff;for(i = 2000; i > 0; i--);P2OUT = 0xff; //提示灯fla g=1;fla g1+=1;for(j=0;j<4;j++)Dispbuf[j] = 10;j=0;} if(fla g1!=2)fla g1=0; //若两条件不同时满足,则取消/*GGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG GGGGGGGGGGGGGGGGGGGGGG*/if(j==4) //验证密码{fla g=1;if(key_val==10){if(a[0]==Dispbuf[0]){if(a[1]==Dispbuf[1]){if(a[2]==Dispbuf[2]){if(a[3]==Dispbuf[3]){P2OUT ^= 0xff;for(i = 99999; i > 0; i--);P2OUT = 0xff;fla g1=1; //改码的一个条件num=0;} else alert();} else alert();} else alert();} else alert();}else alert();for(j=0;j<4;j++)Dispbuf[j] = 10;j=0;}if(fla g==0){Dispbuf[3-j] = key_val; //Dispbuf[]为一数组,用于存放键值switch(3-j){case 2:x=Dispbuf[2];Dispbuf[2]=Dispbuf[3];Dispbuf[3]=x;break;case1:x=Dispbuf[1];Dispbuf[1]=Dispbuf[2];Dispbuf[2]=Dispbuf[3];Dispbuf[3]=x;break; case0:x=Dispbuf[0];Dispbuf[0]=Dispbuf[1];Dispbuf[1]=Dispbuf[2];Dispbuf[2]=Dispbuf [3];Dispbuf[3]=x;break;} j++;} elsefla g=0;P6OUT = 0; //蜂鸣器响一声for(i = 2000; i > 0; i--);P6OUT |= BIT7;}}}/*******************************************函数名称:watchdog_timer功能:看门狗中断服务函数,在这里输出数码管的段选和位选信号参数:无返回值:无********************************************/#pragma vector=WDT_VECTOR__interrupt void watchdog_timer(void){P5OUT = 0xff;P4OUT = scandata[Dispbuf[cnt]]; //输出段选信号P5OUT &= ~(1 << (cnt+2)); //输出位选信号cnt++; //位计数变量在0~4 之间循环if(cnt == 4) cnt = 0;}。

相关文档
最新文档