你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

【经验分享】STM32的RFID智能门禁系统设计

[复制链接]
STMCU小助手 发布时间:2022-5-11 13:56
一.硬件方案0 _- {7 K1 z% K6 r9 r
门禁系统采用STM32 单片机作为控制核心,外围加蜂鸣器控制电路、开门指示灯电路、电控锁控制电路以及液晶显示电路等。门禁系统主要组成:由CPU、复位电路、电源指示、工作指示、振荡电路、蜂鸣器电路、门控锁电路、出门按钮、读卡模块、显示模块等组成。采用射频卡完成刷卡进门,按钮出门功能。3 ?, f" p4 {1 _
主要由STM32F103单片机+LCD1602液晶显示+蜂鸣器报警电路+RC522射频卡+继电器电路+按键模块;如图:+ s, A2 W8 T0 ]/ U" q/ p4 E% i5 C; ?
; s3 i3 i4 B4 Y% R! g
(WCVJ9UH}BZTK{KN}QY$B[F.png
( w( ]" t+ V/ G( S" M' c5 h* f5 B) N: u" x; n1 \+ ]* s' A
二.设计功能
5 x# f: o; J6 \. C7 h(1)采用LCD1602液晶显示当前信息。' h8 X8 U; M- k7 O+ P' @
(2)按键对当前的ic卡进行注册、删除、返回。+ S1 A% ?' J) H' ^* {
(3)注册成功后,刷卡成功继电器打开。, P/ ~- `1 C5 N
(4)感应到IC卡后会进行蜂鸣器提醒。
! V8 ?1 E# g1 U
5 R) g' c' A4 }" b4 Q2 b) N三.设计原理图

( R7 ?% G" B. }# J(1)原理图主要采用AD软件进行设计,如图:! b. |7 B, I. X1 {2 W, w  ^: R
7 e6 b1 U; T8 }0 V8 Q8 v8 _* F

, {6 }! U& ]: N: R1 l  O  k& v5 [( T1 t
(2)PCB图如下:
( w1 Q7 u- M, S3 K1 c0 o, i7 z/ h! P, S: j  _) ^2 A; ^) U
T5(P45]4NOIU41MV[E8~R@J.png " m. f$ o( j$ ^% E5 Y5 o6 K2 a2 g/ w9 U3 a

# M: r, M/ k/ o/ @: q四.软件设计
7 [5 d+ V; y1 K# H1 Y6 u2 d, d(1)程序流程图
4 H' t4 \  g# u8 d1 `5 k1 p" `: ~/ i& v0 p/ p+ Q" E4 S% G
L2MV[FO1_[G}YQQXE%4WKR1.png
; ]' `4 @* L; t/ m2 K+ X6 K$ T. m) h. x% j7 Y0 V/ `' S
(2)主程序源码) h) _' `8 S$ u/ K6 k

' A' s3 ^6 J5 T9 [
  1. int main(void)
    : q& _8 v7 J2 H4 L9 Z5 [- a" h
  2. {        , p, n, P- P4 A
  3.   u8 stauts = 1,key;; R0 H2 Z0 C4 x  I9 N8 `5 o! F
  4.         RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO, ENABLE);) q8 y# r6 ~5 C/ r4 K' I2 ~
  5.         GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable,ENABLE);
    - Z; J0 i. `$ d) K! r+ v
  6.         delay_init();            //延时函数初始化          $ m" b1 Z1 w  q# m  [
  7.         KEY_GPIO_Init();    //按键初始化
    ; D7 T8 y; y% V' i( F' e1 d1 _, V
  8.         RELAY_INIT();
    4 L' N) v$ x; w. ]3 o
  9.         Human_induction_Iint();5 p) H1 M1 ~  s- [
  10.         BEEP_DISENABLE();) I4 o1 h2 \; V! i4 I$ h. n6 |% |
  11.         delay_ms(100);       //上电瞬间加入一定延时在初始化
    2 P. L3 }3 `% {; }: e8 I, ]
  12.         LCD_Init();         //屏幕初始化5 E6 d8 y3 `4 I7 R% a
  13.         LCD_Write_String(0,0,"Please Bush Card"); 4 j( W% S' ]: m- ~; M
  14.   CHECK_NEW_MCU();& c( U3 t: F8 e; W  Y7 U
  15.         TIM2_Init(1000,719);    //以100Hz计数( e) {* j8 {" G7 c6 M6 b) j: w
  16.         UART1_INIT((u32)9600);
    ( ]" i. E7 \0 R0 D2 j
  17.   RC522_Init();
    8 b8 k' t: L2 n" w  n7 [3 ~  x
  18.         PcdReset (); //复位RC522 8 `0 V$ H6 J# y% Y
  19.         M500PcdConfigISOType ( 'A' );//设置工作方式        
    4 U1 `5 j- z3 n) s
  20. % f3 L3 K- k# t1 X
  21.         while(1)5 u! b# P( v. O: R6 Y0 W
  22.         {     
    ) F, ]8 L( G+ k' K
  23.                 . y* l5 ^* Q. o

  24. 0 A# z7 g! ~$ C% H  v
  25.                  if(key == 1)   stauts = !stauts;4 ^$ P* w- Y. t+ Y6 \
  26.                  if(stauts)
    & x2 m! N+ b9 n7 S
  27.                          key = COMPER_ID_MODE();
    $ C+ `3 t1 C. W( }/ z9 }; x
  28.                  else' ]& K* F7 j2 H: s+ R. W7 ]
  29.                  {
    & ^1 s: J0 e: z/ m
  30.                           key = 2;
    9 @# T( u8 W5 O! v0 O
  31.                           while(key != 1)% q4 V! P- P$ L# B2 {6 v6 X$ e8 a
  32.                                 {
    ) p% U, E. h" a; d) w
  33.                                          switch(key)4 A, k, \8 v% c/ T
  34.                                          {, D) W" Z/ z+ ?6 w5 [! t1 G
  35.                                            case 2: key = ADD_ID_MODE(); break;
    6 {0 W' V" b2 W+ @
  36.                                            case 3: key = DEL_ID_MODE(); break;
    0 w8 Z% s# j2 f7 x$ N7 S
  37.                                                  case 4: CLEAR_ALL_MES(); key = 2; break;" M& Y& s# L: H2 M, g3 m
  38.                                                  default : break;# x& D- Y4 H7 x, z& r6 Z
  39.                                          }
    8 G! r8 [0 R) c0 s  l- F: D
  40.                                 }, L' w$ h. |8 s; q8 v

  41. : P7 q6 t* A- A
  42.                  }
    - D- @4 P  a  W, _* v
  43.         }! L% r9 H: l) Z; v9 f
  44. }6 K+ M' m: T4 G+ C6 b# x
  45. * p. s9 w( {  ]: I1 |- V
  46. 2 l( a5 j3 M+ D2 ~) t- L
复制代码
+ i, G" w, ]* \# f
赞 收藏 评论0 发布时间:2022-5-11 13:56

举报

0个回答

所属标签

相似技术帖

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
人形机器人运动控制、感知与智能配电
半导体创新技术与应用方向
EE架构与软件定义汽车
12V/48V 汽车智能配电(SPD)
区域控制单元(ZCU)与分区架构
关注我们
st-img 微信公众号
st-img 手机版