|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
摘要:在介绍基于MSP430单片机的指纹保险柜工作原理的基础上,从系统软件设计的角度出发,+ l7 E8 L. c' u9 V: Y9 m
详细介绍了指纹保险柜软件的总体分析过程、程序结构的设计以及代码的编写,给出了按键管理, _, {7 N2 V% p# e8 N9 [# x
流程和部分源代码。, N2 f; h$ m5 I; }
% y! l$ y" b) a" x& H关键 词:单片机; 指纹保险柜;软件设计; MSP430 |: y7 g6 X0 ]- H- _) [1 v
! \& {& A' E+ E, U7 g
1引言
8 W: t9 X, S+ p Q! r近几年来单片机技术飞速发展,各种新型号的7 v% A# u- l) X. b
单片机层出不穷,在家电控制、仪表等领域起到了" Z* i" ?' M" v( e% ]7 j
举足轻重的作用。MSP430是- -款具有超低功耗、丰
# F1 p6 w5 P; b* N I( r' o) g富的片内外围模块、软件对硬件灵活控制等特点的
, R% g* H0 s- f单片机,特别适用于由电池供电的应用。本文介绍
/ {5 r1 `: z9 d, {: d9 j9 X了一种以MPS430单片机为控制核心的指纹保险柜
4 `- t9 x# [( y2 d; h, U的工作原理,重点讨论实现指纹保险柜功能的软件, f* {# \$ p; M
设计。$ ?+ Q) h% ^* r E
2
/ x1 n! ^+ {8 D指纹保险柜的工作原理7 r$ n8 g- K0 w4 j a" Q; m) O
指纹保险柜不用钥匙或密码,仅凭指纹实现保7 B$ n8 }& M4 e! t1 n/ ~/ v4 c
险柜的安全控制。指纹保险柜的原理图如图1所示。
3 ^0 z5 F* t& [- Z2 o图1中的“控制电路”部分为指纹门锁的控制
; Q: C/ u3 G; ^5 Q2 O. ~8 Q( P中心。它从“指纹比对模块”部分取得指纹比对的结
1 @3 T$ |8 e3 g) ~果数据,如指纹比对成功,“控制电路"向机械锁芯
, q2 a7 C1 `" p中的“动作部分”发出开锁的信号。同时监测动作的 Z+ W- e% ? \& L# O- N$ J
执行情况与锁的开/关状态。; e& [5 P# \( Z0 y' K
除此以外,“控制电路"还可控制“指纹比对模) H+ m1 r r V( N2 N) e
块”部分进行指纹录入/删除,并对整个电路的工作
, \0 v; s5 ^" A4 `; W) l" ^状态进行管理控制,对错误进行报警等。
& _2 ]# l" ~9 [4 G" W% |5 w本指纹保险柜具有机械自动触发、锁定功能。" [7 w5 |' M ?; R1 ^' W
一旦门被打开,就关断控制电路,其余工作交予机
; B( J) ]0 n3 S& `8 r) p! a械部分管理。
0 c$ d$ _9 D% T- B- F5 f% i! z3系统软件设计
' m7 ]3 Z) q! E3.1系统分析
# S: \) {' h, H1 O1 I系统分析是整个程序设计工作的基点,应根据+ B. d \( U5 Y4 j& Z7 K+ e! u
系统功能进行结构化设计,即将整个程序分为若干7 f# x2 [' G4 `, p4 v" X* V
个模块,通过主程序将各个模块有机地组织起来。
: p/ P( S* a) R% {2 `% c, y7 A) D# I指纹保险柜的系统程序主要由主程序、按键模块、
4 `6 e. S6 c7 m+ s) W B5 J控制模块.显示模块、计时模块和串口通讯模块组
6 O. E7 a, [2 R9 o3 H4 _成。9 m* F6 s6 J# d; ]- I5 Z
下面以按键模块为例, 分析该模块详细设计过
4 {1 Z2 H* [4 j4 Q) [$ X程。
8 X K( j+ x' q. D- d2 w本指纹保险柜控制电路可存储30个指纹数/ H. n) v$ K4 a* g
据,其中包含1个管理者和29个普通用户的指纹
5 O# Q! E+ H$ c, k数据。它们之间的管理关系为0号管理者管理普通' r% {! O4 d" E' b/ i; [9 A3 h I) B/ t# ?
用户群。0号管理者的指纹数据存储于固定的位置
5 b4 b/ m9 |" }6 V: U2 w, L# u* y/ T00,其他位置为普通用户位置。按键模块分为按键
; k7 F' M! P0 Q$ ~8 f7 [( C查询和按键管理两部分。
0 E* w5 l) E5 n, u/ v1)按键查询。保险柜具有4个按键,其中,上电
. b- q% E% X$ f; `' \2 N键用于为系统加电;录入键用于控制电路执行录入
4 M+ h. q; t% ^& U/ ~& y指纹的功能,即将指纹以数据形式存入保险柜中;
, r/ E, |+ J1 I& _! ^删除键用于控制电路执行删除数据指纹的功能;而5 V! e# N$ f9 h+ Y) e3 P
全清键用于使控制电路执行删除全部数据指纹的$ Y A: K- C9 X7 r
) f! V; k, O* F8 _- x$ A
1 G# Z1 J5 E& k
7 H* n- M! _+ _9 A1 {# ^附件下载:
: Y% x/ `2 P( K- L# @ {' [5 t
+ N5 H+ w) I3 c7 Q- c, |
6 n: q ~, m7 L, T& d5 b/ N& Q/ {, |) F( @% U
|
|