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

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

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


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





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

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

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

  1. #include <includes.H>

  2. /*
  3.         1.完成基本功能,刷卡,密碼
  4.         2.esp8266 連接(串口透?jìng)鳎苡秒娔X增加,刪除ic
  5.         3.esp8266遠(yuǎn)程升級(jí)?? 可能實(shí)現(xiàn)不了。
  6.         4.最好能有個(gè)顯示屏,顯示狀態(tài)。
  7.         5.增加臨時(shí)密碼的功能,有效時(shí)間10分鐘



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

  14. */
  15. unsigned char idle_times = 0;   //空閑計(jì)時(shí),沒(méi)有刷卡,沒(méi)有按鍵時(shí)開(kāi)始計(jì)時(shí)。

  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站了,基本功能的實(shí)現(xiàn)都稍微講了一下。
使用狀態(tài)機(jī),定時(shí)器掃描等實(shí)現(xiàn)的。
https://www.bilibili.com/video/BV1Aw411d76F/

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


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

是指南者的板子嗎

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




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