標(biāo)題: 基于STM32的ESP8266 WiFi+RC522門禁控制器源碼 [打印本頁]

作者: aux123456789    時間: 2019-2-28 22:16
標(biāo)題: 基于STM32的ESP8266 WiFi+RC522門禁控制器源碼
本次WIFI門禁控制器的總體設(shè)計:首先通過ESP8266 WiFi模塊連接手機(jī),然后利用RC-522模塊非接觸讀取IC卡的卡號,經(jīng)過單片機(jī)判斷該卡號是否正確。如果正確,則繼電器閉合打開電子鎖開門,蜂鳴器通電提示開門;如果卡號錯誤,則繼電器斷開,蜂鳴器不響。通過OLED輸出卡號和提示信息。用戶可以通過WiFi連接手機(jī)對卡號進(jìn)行查詢、刪除、添加等操作,卡號存儲在單片機(jī)內(nèi)部flash,刷卡的提示信息通過串口傳送到電腦上,這樣就可以實時了解門禁控制器的情況。

單片機(jī)源程序如下:
  1. #include "stm32f10x.h"
  2. #include "bsp_gpio.h"
  3. #include "bsp_usart1.h"
  4. #include "bsp_usart2.h"
  5. #include "wifi_config.h"
  6. #include "wifi_function.h"
  7. #include "bsp_SysTick.h"
  8. #include "wifi_data.h"
  9. #include "flash.h"
  10. #include <string.h>
  11. #include "rc522_function.h"
  12. #include "rc522_config.h"
  13. #include "bsp_TiMbase.h"
  14. #include "OLED_I2C.h"
  15. #include "bsp_i2c_gpio.h"
  16. #include "codetab.h"
  17. #include <stdbool.h>




  18. extern char IC_id[20][8];
  19. extern char * Re_ID[3];

  20. void Oled_INIT(void)//初始化OLED界面
  21. {
  22.                   OLED_Fill(0x00);//全屏滅;               
  23.                 for(i=0;i<4;i++)
  24.                 {
  25.                         OLED_ShowCN(30+i*16,0,F16x16,i);                                                               
  26.                 }
  27.                 for(i=0;i<3;i++)
  28.                 {
  29.                         OLED_ShowCN(i*16,3,F16x16_1,i);                                                               
  30.                 }
  31. }



  32. /**
  33.   * @brief  主函數(shù)
  34.   * @param  無
  35.   * @retval 無
  36.   */
  37. int main(void)
  38. {
  39.         /* 初始化 */
  40.         WiFi_Config();   //初始化WiFi模塊使用的接口和外設(shè)                                                               
  41.         SysTick_Init();  //配置 SysTick 為 1ms 中斷一次
  42.         i2c_CfgGpio();                                 /*I2C總線的GPIO初始化*/
  43.         OLED_Init();                                         /* OLED初始化 */
  44.   Oled_INIT();       //OLED界面初始化
  45.   Beep_GPIO_Config();//蜂鳴器和繼電器初始化
  46.   PC_Usart("\r\n即將進(jìn)行的測試是:1.STA模式: TCP Client\r\n");
  47.   ESP8266_STA_TCP_Client ();
  48.         RC522_Init ();     /*RC522模塊所需外設(shè)的初始化配置*/
  49.         PcdReset ();
  50.         M500PcdConfigISOType ( 'A' );/*設(shè)置工作方式*/       
  51.         Read_Flash();//讀取卡號

  52.        
  53.         BASIC_TIM_Init();//定時器3初始化

  54.        
  55.         while (1)
  56.         {
  57.                 WIFI_operate_data();
  58.                 if( (strcmp( Re_ID[1],"1")==0)|(strcmp(Re_ID[1],"2")==0))//如果是刪除和添加就進(jìn)行flash操作
  59.                 {
  60.                   InternalFlash_Test();//向flash寫入保存的數(shù)據(jù)
  61.                 }
  62.         }
  63. }


  64. /*********************************************END OF FILE**********************/
復(fù)制代碼

所有資料51hei提供下載:
課設(shè)程序3.0.7z (214.33 KB, 下載次數(shù): 194)



作者: omg_gooddddd    時間: 2019-7-9 17:37
樓主這個是有APP嗎,還是通過網(wǎng)絡(luò)調(diào)試助手添加卡號?
作者: jackman0925    時間: 2020-2-1 21:42
這個或以聯(lián)合開發(fā),我這里可以幫忙開發(fā)app 或小程序 免費(fèi)的請放心,如果樓主的東西比較穩(wěn)定的話。
作者: dzxqyt    時間: 2020-2-15 19:00
這個或以聯(lián)合開發(fā),我這里可以幫忙開發(fā)app 或小程序 免費(fèi)的請放心,




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