Browse Source

[Improve][Module_RFID.c][Module_RFID.h]
Action:
1. Improve : FELICA_REQUEST_SN() function. Card length up to 8 bytes.
2. Improve : FELICA_REQUEST_SN() function. Read rfid card number up to 8 bytes.

File
1. Module_RFID.c & Module_RFID.h
ACTION 1
ACTION 2

RFID VERSION: VO.04

8009 2 years ago
parent
commit
57afb2b4de
2 changed files with 10 additions and 8 deletions
  1. 7 6
      EVSE/Modularization/Module_RFID.c
  2. 3 2
      EVSE/Modularization/Module_RFID.h

+ 7 - 6
EVSE/Modularization/Module_RFID.c

@@ -2,9 +2,9 @@
  * 	Module_RFID.c
  *
  *  Created on: 2019-10-24
- *  Update: 2020-10-19
+ *  Update: 2022-08-09
  *  Author: Eason Yang
- *	Version: V0.03
+ *	Version: V0.04
  *
  * History 
  * 1. Added : Reyax code.
@@ -60,6 +60,7 @@ unsigned int LENGTH_0	= 0;
 unsigned int LENGTH_4	= 4;
 unsigned int LENGTH_6	= 6;
 unsigned int LENGTH_7	= 7;
+unsigned int LENGTH_8	= 8;
 unsigned int LENGTH_10	= 10;
 
 //==================================
@@ -250,7 +251,7 @@ bool getRequestCardSN(int Fd, int moduleType, RFID* rfid)
 	else if(FELICA_REQUEST_SN(Fd,moduleType,serialNumber) == true)
 	{
 		rfid->cardType = FELICA;
-		rfid->snType = RFID_SN_TYPE_6BYTE;
+		rfid->snType = RFID_SN_TYPE_8BYTE;
 		memcpy(rfid->currentCard, &serialNumber, 32);
 		sleep(2);
 
@@ -571,9 +572,9 @@ bool FELICA_REQUEST_SN(int Fd, int moduleType, unsigned char *data)
 					{
 						if((rxByte[1] == RFID_CMD_FELICA_POLLING_REQUEST) && (rxByte[0] >= 22))
 						{
-							cardLength = LENGTH_6;
-							memcpy(data, rxByte+6, cardLength);
-							DEBUG_INFO_1("FELICA SN: %02X-%02X-%02X-%02X-%02X-%02X\n", data[0], data[1], data[2], data[3], data[4], data[5]);
+							cardLength = LENGTH_8;
+							memcpy(data, rxByte+4, cardLength);
+							DEBUG_INFO_1("FELICA SN: %02X-%02X-%02X-%02X-%02X-%02X-%02X-%02X\n", data[0], data[1], data[2], data[3], data[4], data[5], data[6], data[7]);
 
 							isSuccess = true;
 						}

+ 3 - 2
EVSE/Modularization/Module_RFID.h

@@ -2,9 +2,9 @@
  * 	Module_RFID.h
  *
  *  Created on: 2019-10-24
- *  Update: 2020-10-19
+ *  Update: 2022-08-09
  *  Author: Eason Yang
- *	Version: V0.03
+ *	Version: V0.04
  *
  * History
  * 1. Added : Reyax constant.
@@ -63,6 +63,7 @@ typedef struct Rfid
 #define RFID_SN_TYPE_4BYTE		4
 #define RFID_SN_TYPE_6BYTE		6
 #define RFID_SN_TYPE_7BYTE      7
+#define RFID_SN_TYPE_8BYTE		8
 #define RFID_SN_TYPE_10BYTE     10
 
 //==================================