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

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

[复制链接]
STMCU小助手 发布时间:2022-5-11 13:56
一.硬件方案8 Z( j! o/ i) ~8 w! l! E$ |
门禁系统采用STM32 单片机作为控制核心,外围加蜂鸣器控制电路、开门指示灯电路、电控锁控制电路以及液晶显示电路等。门禁系统主要组成:由CPU、复位电路、电源指示、工作指示、振荡电路、蜂鸣器电路、门控锁电路、出门按钮、读卡模块、显示模块等组成。采用射频卡完成刷卡进门,按钮出门功能。
6 e: r3 M! u0 b5 X( _: i主要由STM32F103单片机+LCD1602液晶显示+蜂鸣器报警电路+RC522射频卡+继电器电路+按键模块;如图:
% A6 ~7 F& e% J. x) B' G, M# R7 _' ]  M% v' L0 G  e0 H" |/ M
(WCVJ9UH}BZTK{KN}QY$B[F.png " @+ ?1 M: u0 E+ s( |4 \

( ^- ]$ {* g6 P* D+ t二.设计功能5 n! ~; u$ S, r
(1)采用LCD1602液晶显示当前信息。8 C3 M! S8 Z1 B& Y/ c
(2)按键对当前的ic卡进行注册、删除、返回。5 Q0 f5 @. i/ B! K
(3)注册成功后,刷卡成功继电器打开。
% Z8 [% y! h. V* @' Z* }: h(4)感应到IC卡后会进行蜂鸣器提醒。
8 Z& L* f" R! G9 r5 S2 ]/ h% ?% m  a" s) [& V
三.设计原理图

2 T7 X( {% u/ p(1)原理图主要采用AD软件进行设计,如图:
" R, A& S' ?# r& V/ ^) j. b9 y5 S+ `' V- I5 G
# d6 T- A- B, b3 U, S8 @6 N6 Z
) m# n1 k4 G7 I, ]. G" e5 l
(2)PCB图如下:
9 N1 R$ u& \" |1 M9 S& C$ n, o( l1 ~/ ]
T5(P45]4NOIU41MV[E8~R@J.png
" [$ k) q$ ?1 w5 |* W4 S! e+ w5 N; |2 c# S# N
四.软件设计2 \6 I; b  P/ t1 n$ w) }
(1)程序流程图
9 d$ p5 _) F: \4 d$ q" U, e- s4 x' X* m( ~7 ^# I( x6 |1 V4 p) L) s) \$ r
L2MV[FO1_[G}YQQXE%4WKR1.png
1 V9 M" @3 O# ~7 M& T1 O/ ^! J  Q& n8 D5 X
(2)主程序源码' |% a& e" T1 R" N. B
/ |( j1 O  e# [$ K
  1. int main(void)8 x1 H; @7 \  v8 C% U1 f1 @
  2. {        
    : e: s* M. N* ?7 N; M. t$ H9 k) s
  3.   u8 stauts = 1,key;
    # Z, i  O. Z8 S) E
  4.         RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO, ENABLE);
    # u) ^9 p! {' x2 q4 _( V
  5.         GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable,ENABLE);
    ( U' v% _5 h* p) i6 S- o
  6.         delay_init();            //延时函数初始化          " L9 b+ Y) j" b$ R7 e
  7.         KEY_GPIO_Init();    //按键初始化
    " c, a# T6 i* J5 c
  8.         RELAY_INIT();
    . p, n2 C" s+ r1 K# U. ?1 Z
  9.         Human_induction_Iint();
    : i+ h( y; u- ]
  10.         BEEP_DISENABLE();
      V. k2 k. o5 W% x5 Q8 Z, ]
  11.         delay_ms(100);       //上电瞬间加入一定延时在初始化
    % y3 ]  Q& w* Z! u  E
  12.         LCD_Init();         //屏幕初始化8 K7 G4 J; r4 J2 {* v9 C
  13.         LCD_Write_String(0,0,"Please Bush Card");
    0 T2 t, }; R9 B" J# A' f
  14.   CHECK_NEW_MCU();
    % Z0 Z* v" X/ J# Q$ a
  15.         TIM2_Init(1000,719);    //以100Hz计数
    " r7 R1 D8 b+ o4 T0 a  J* r/ B1 n
  16.         UART1_INIT((u32)9600);3 N) `# i/ _$ }- ~* k) @
  17.   RC522_Init();( y  f+ g& j" r7 y
  18.         PcdReset (); //复位RC522
    ' m0 O. v2 ?3 M) H! t3 i+ m: z, @' r3 @
  19.         M500PcdConfigISOType ( 'A' );//设置工作方式        
    , g+ e. p/ Z+ i: m2 ?0 k# ?) n8 ^

  20. * f$ |1 U. `  y. \) g
  21.         while(1)" M( K' s2 [9 r+ V) d! \
  22.         {     
    4 P8 i' p" F7 v, g6 T3 g
  23.                
    ' T. D9 J; `/ ]# I: i  X
  24. & l$ I5 c5 F! N" H3 Z
  25.                  if(key == 1)   stauts = !stauts;
    & B" f1 }$ @: u0 i8 {
  26.                  if(stauts)
    ) Q% V$ B0 @) x( o$ Y  m) i
  27.                          key = COMPER_ID_MODE();
    9 V' w/ z$ g! Y# i; ?* E0 `
  28.                  else
    : ^0 E4 F/ x2 K. O$ k
  29.                  {+ |- U2 `) `' H- Z: w
  30.                           key = 2;
    / w2 B' H; g7 b$ R7 p5 u# g
  31.                           while(key != 1)
    ; D  T* ~. O9 J3 X
  32.                                 {  u3 q- J3 D' [" a' F, s& r& e
  33.                                          switch(key)
    5 s: M' ^/ d' }, f$ D
  34.                                          {% V  b2 ^. Y* R+ H# s, G9 f
  35.                                            case 2: key = ADD_ID_MODE(); break;6 o, Q6 G: I& J$ _& I( [
  36.                                            case 3: key = DEL_ID_MODE(); break;
    5 i" I3 }+ H, C8 i
  37.                                                  case 4: CLEAR_ALL_MES(); key = 2; break;" k. p" f) X) m3 J" T
  38.                                                  default : break;1 ]! f: Z3 Q8 l3 x& ~
  39.                                          }+ w- ^# c0 M, }  }
  40.                                 }
    " M) @" T. q- a; m% w

  41. 2 M+ x0 i# U" Z; D9 @8 V' u& X
  42.                  }
    * b/ M$ ]( m9 M+ e- b% i
  43.         }
    * O& P0 y6 v( X* w, N
  44. }* l* u: y" ?; r+ X' h
  45. 6 ~8 u4 I2 B* p/ r/ R
  46. 7 ]2 K$ X4 b; Y3 F7 a# s% D
复制代码
! ?5 r0 k9 o* B( B4 G
收藏 评论0 发布时间:2022-5-11 13:56

举报

0个回答

所属标签

相似分享

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版