欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標(biāo)題: 51單片機(jī)實戰(zhàn)-rfid門禁-自己寫代碼實現(xiàn) [打印本頁]

作者: darenwu    時間: 2021-8-16 09:15
標(biāo)題: 51單片機(jī)實戰(zhàn)-rfid門禁-自己寫代碼實現(xiàn)
前段時間,家里正好需要換個rfid+密碼的門禁。
淘了一個


在搜索的過程中發(fā)現(xiàn)是51單片機(jī)(STC8f2k64s2)實現(xiàn)的,回來就倒騰倒騰了一下。





現(xiàn)在已經(jīng)實現(xiàn)了基本功能:
1.密碼開鎖
2.刷卡開鎖
3.增加管理密碼
4.增加開鎖密碼
5.增加開鎖ic卡

其他可能也實現(xiàn)了一些,但是還沒有來得及測試,后續(xù)還會繼續(xù)完善。先分享給大家玩玩。有興趣的可以一起來討論哈。

單片機(jī)源程序如下:

  1. #include <includes.H>

  2. /*
  3.         1.完成基本功能,刷卡,密碼
  4.         2.esp8266 連接(串口透傳),能用電腦增加,刪除ic
  5.         3.esp8266遠(yuǎn)程升級?? 可能實現(xiàn)不了。
  6.         4.最好能有個顯示屏,顯示狀態(tài)。
  7.         5.增加臨時密碼的功能,有效時間10分鐘



  8.         單片機(jī)64k
  9.         30k 分給 程序
  10.         34k 分給eeprom   0-511 第一個扇區(qū) 存儲
  11.                                         系統(tǒng)密碼(6個字節(jié)) 和 通用PIN(6個字節(jié)) 和管理員卡號(4個字節(jié)) 以及 用戶總數(shù)(2個字節(jié))
  12.                                          
  13.                                          第二扇區(qū) 512字節(jié),每個用戶需要10個字節(jié),大約存放51個用戶

  14. */
  15. unsigned char idle_times = 0;   //空閑計時,沒有刷卡,沒有按鍵時開始計時。

  16. void GPIO_CONFIG_INIT(void);




  17. /////////////////////////////////////////////////////////////////////
  18. //系統(tǒng)初始化
  19. /////////////////////////////////////////////////////////////////////
  20. void InitializeSystem()
  21. {
  22.         GPIO_CONFIG_INIT();

  23. //        blockData_init();   //數(shù)據(jù)初始化
  24.         key_init();
  25.        
  26.           led_init();

  27.         init_uart();     //串口0初始化
  28.        
  29.         RFID_SPI_init();   //spi控制器-rfid
  30.        
  31.         init_timer0();    //按鍵掃描,led燈閃,蜂鳴器響控制,RFID掃描
  32.        
  33.         beep_init();

  34.         PN512_Init(0);
  35.        
  36.         user_init();
  37.        
  38.         lock_ctrl_init();
  39.        
  40.         printf("Init ok! 20210814\n");
  41.                     
  42. }


  43. void main()
  44. {
  45. //        INT8U i = 0;       
  46.        
  47.         InitializeSystem();
  48.        
  49.         while(1)
  50.         {
  51.                 handle_key_function();   //狀態(tài)機(jī)切換
  52.                
  53.                 led_change_state();                  //根據(jù)狀態(tài)改變led的閃爍情況       
  54.                                
  55.                 scan_card();

  56.         //        printf("xxxx----");
  57.         }       
  58. }



  59. void GPIO_CONFIG_INIT(void)
  60. {
  61.     P0M0 = 0x00;
  62.     P0M1 = 0x00;
  63.     P1M0 = 0x00;
  64.     P1M1 = 0x00;
  65.     P2M0 = 0x00;
  66.     P2M1 = 0x00;
  67.     P3M0 = 0x00;
  68.     P3M1 = 0x00;
  69.     P4M0 = 0x00;
  70.     P4M1 = 0x00;
  71.     P5M0 = 0x00;
  72.     P5M1 = 0x00;
  73.     P6M0 = 0x00;
  74.     P6M1 = 0x00;
  75.     P7M0 = 0x00;
  76.     P7M1 = 0x00;       
  77. }
復(fù)制代碼

講解視頻分享在b站了,基本功能的實現(xiàn)都稍微講了一下。
使用狀態(tài)機(jī),定時器掃描等實現(xiàn)的。
https://www.bilibili.com/video/BV1Aw411d76F/

全部代碼51hei附件下載:
stc8f2k64s2-door-lock(2021-08-14).7z (108.15 KB, 下載次數(shù): 142)


作者: dao767    時間: 2021-8-21 10:08
代碼寫的非常好,下載到我的開發(fā)板效果很好
作者: zdmjjp    時間: 2021-8-25 10:22
謝謝樓主分享!下載學(xué)習(xí)一下
作者: ygm2020    時間: 2021-8-26 14:30
89C52RC可以用么
作者: ststst    時間: 2022-1-24 17:03
dao767 發(fā)表于 2021-8-21 10:08
代碼寫的非常好,下載到我的開發(fā)板效果很好

是指南者的板子嗎

作者: Jane123123    時間: 2022-7-23 22:56
寫的實在是太好了
作者: QQQQ987    時間: 2022-8-18 13:09
非常不錯的,值得我們學(xué)習(xí),
作者: csgtli    時間: 2022-8-29 09:20
教程級視頻
作者: 百無禁忌155    時間: 2022-8-31 10:04
標(biāo)記一下,以后有時間自己制作
作者: SURUBU1976    時間: 2022-9-17 16:50
按鍵是觸摸帶燈的?
作者: cycserver    時間: 2024-11-10 16:06
寫的真好,真不錯哦




歡迎光臨 (http://m.raoushi.com/bbs/) Powered by Discuz! X3.1