找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 5635|回復: 3
打印 上一主題 下一主題
收起左側(cè)

stm32 RFID-RC522識別卡片例程(各大開發(fā)板的程序匯總)

[復制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:379991 發(fā)表于 2018-10-22 01:40 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式
在學習RFID-RC522過程中總總結(jié)一些歷程,希望對大家有所幫助。


所有資料51hei提供下載:
RFID-RC522各大開發(fā)板配套例程.rar (2.46 MB, 下載次數(shù): 231)

stm32單片機源程序如下:
  1. #include "stm32f10x.h"
  2. #include "./usart/bsp_usart.h"        
  3. #include "./lcd/bsp_ili9341_lcd.h"
  4. #include "./flash/bsp_spi_flash.h"
  5. #include "./SysTick/bsp_SysTick.h"
  6. #include "rc522_config.h"
  7. #include "rc522_function.h"
  8. #include <stdbool.h>


  9. /**
  10.   * @brief  IC測試函數(shù)
  11.   * @param  無
  12.   * @retval 無
  13.   */
  14. void IC_test ( void )
  15. {
  16.         char cStr [ 30 ];
  17.   uint8_t ucArray_ID [ 4 ];    /*先后存放IC卡的類型和UID(IC卡序列號)*/                                                                                         
  18.         uint8_t ucStatusReturn;      /*返回狀態(tài)*/                                                                                          
  19.   static uint8_t ucLineCount = 0;

  20.   while ( 1 )
  21.   {
  22.                
  23.     /*尋卡*/
  24.                 if ( ( ucStatusReturn = PcdRequest ( PICC_REQALL, ucArray_ID ) ) != MI_OK )  
  25.        /*若失敗再次尋卡*/
  26.                         ucStatusReturn = PcdRequest ( PICC_REQALL, ucArray_ID );                                                               

  27.                 if ( ucStatusReturn == MI_OK  )
  28.                 {
  29.       /*防沖撞(當有多張卡進入讀寫器操作范圍時,防沖突機制會從其中選擇一張進行操作)*/
  30.                         if ( PcdAnticoll ( ucArray_ID ) == MI_OK )                                                                  
  31.                         {
  32.                                 sprintf ( cStr, "The Card ID is: %02X%02X%02X%02X",
  33.                   ucArray_ID [ 0 ],
  34.                   ucArray_ID [ 1 ],
  35.                   ucArray_ID [ 2 ],
  36.                   ucArray_ID [ 3 ] );
  37.         
  38.                 printf ( "%s\r\n",cStr );         
  39.                                 
  40.                                 if ( ucLineCount == 0 )
  41.           LCD_SetTextColor(RED);         
  42.                                 
  43.                                 ILI9341_DispStringLine_EN(LINE(ucLineCount) , (char* )cStr );
  44.       
  45.                                 
  46.                                 ucLineCount ++;
  47.                                 
  48.                                 if ( ucLineCount == 17 ) ucLineCount = 0;                                
  49.                         }               
  50.                 }               
  51.   }        
  52. }

  53. /**
  54.   * @brief  主函數(shù)
  55.   * @param  無
  56.   * @retval 無
  57.   */
  58. int main(void)
  59. {        
  60.   /*滴答時鐘初始化*/
  61.   SysTick_Init ();     
  62.         /*LCD 初始化*/
  63.         ILI9341_Init ();         

  64.         /* USART config */
  65.         USART_Config();
  66.   
  67.   /*RC522模塊所需外設的初始化配置*/
  68.   RC522_Init ();     
  69.         
  70.   printf ( "WF-RC522 Test\n" );
  71.         
  72.   /*其中0、3、5、6 模式適合從左至右顯示文字,*/
  73.         ILI9341_GramScan ( 6 );
  74.   LCD_SetFont(&Font8x16);
  75.         LCD_SetColors(BLACK,BLACK);
  76.   
  77.   /* 清屏,顯示全黑 */
  78.   ILI9341_Clear(0,0,LCD_X_LENGTH,LCD_Y_LENGTH);
  79.   
  80.         /********顯示字符串示例*******/
  81.   LCD_SetTextColor(RED);  

  82.   ILI9341_DispStringLine_EN(LINE(18),
  83.        (char* )"Please put the IC card on WF-RC522 antenna area ...");
  84.   
  85.   LCD_SetTextColor(YELLOW);
  86.   
  87.   PcdReset ();
  88.    
  89.   /*設置工作方式*/   
  90.         M500PcdConfigISOType ( 'A' );
  91.   
  92.   while(1)
  93.   {
  94.     /*IC卡檢測        */   
  95.     IC_test ();               
  96.   }

  97. }


  98. /* ------------------------------------------end of file---------------------------------------- */
復制代碼

評分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂 踩
回復

使用道具 舉報

沙發(fā)
ID:1 發(fā)表于 2018-11-2 15:18 | 只看該作者
好資料,51黑有你更精彩!!!
回復

使用道具 舉報

板凳
ID:174087 發(fā)表于 2018-11-19 15:18 | 只看該作者
資料有了 但是還是調(diào)試不成功啊 難受
回復

使用道具 舉報

地板
ID:112282 發(fā)表于 2021-1-6 17:23 | 只看該作者
好資料,51黑有你更精彩!!!
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復 返回頂部 返回列表