Commit 73312f4b authored by 何锐's avatar 何锐

feat:增加UID读取功能

parent 185cd29c
......@@ -479,6 +479,9 @@ extern uint8_t Data_786_10[8]= {0x22,0x30,0x31,0x32,0x30,0x32,0x35,0x30};
extern uint8_t Data_786_11[8]= {0x23,0x36,0x31,0x39,0x30,0x30,0x30,0x30};
extern uint8_t Data_786_12[8]= {0x24,0x30,0x30,0x30,0x30,0x30,0x30,0x31};
extern uint8_t Data_786_13[8]= {0x25,0x31,0xAA,0xAA,0xAA,0xAA,0xAA,0xAA};
extern uint8_t Data_786_14[8]= {0x03,0x22,0x10,0x88,0xAA,0xAA,0xAA,0xAA};
extern uint8_t Data_786_15[8]= {0x30,0x00,0x00,0xAA,0xAA,0xAA,0xAA,0xAA};
extern uint8_t Data_786_16[8]= {0x02,0x3E,0x00,0xAA,0xAA,0xAA,0xAA,0xAA};
uint8_t UIDStep;
uint8_t uidWrite;
......@@ -501,7 +504,7 @@ void UID_ADD(void)
}
}
}
uint8_t uidwriteStep = 0;
void Can_Set_Buff_786(uint8_t CopyData [])
{
uint8_t i = 0u;
......@@ -667,6 +670,36 @@ void Can_Set_Buff_786(uint8_t CopyData [])
break;
}
}
if(writeflag == 1)
{
switch (uidwriteStep)
{
case 0:
for(uint8_t i = 0;i < 8;i++)
{
pCANMsg->Msg[i] = Data_786_14[i];
}
break;
case 1:
for(uint8_t i = 0;i < 8;i++)
{
pCANMsg->Msg[i] = Data_786_15[i];
}
break;
default:
break;
// case 6:
// for(uint8_t i = 0;i < 8;i++)
// {
// pCANMsg->Msg[i] = Data_786_16[i];
// }
// writeflag = 0;
// break;
}
}
}
void Can_Set_Buff_207(uint8_t CopyData [])
......
......@@ -287,5 +287,6 @@ extern uint8_t UIDGetstep;
extern uint8_t VSpeed;
extern uint8_t Student_Card;
extern uint8_t UIDStep;
extern uint8_t writeflag;
// uint8_t Student_Card_Last;
#endif
......@@ -4091,13 +4091,14 @@ void Display_Version_Info(uint32_t ON_OFF)
}
uint8_t UUIDX = 170;
uint8_t UIDNumber2[19] = {2,5,0,6,1,9,0,0,0,0,0,0,0,0,0,0,1,1,0xFF};
uint8_t UIDNumberread[33];
void UIDDisplay(void)
{
General_Number_Disp(UIDNumber, 3, 100); //固定UID数字
General_Number_Disp(UIDNumber2, 3, 125); //可调UID数字
General_Number_Disp(UIDNumber, 3, 50); //固定UID数字
General_Number_Disp(UIDNumber2, 3, 75); //可调UID数字
uint8_t UUIDS[2] = {45,0xFF};
General_Number_Disp(UUIDS, UUIDX, 140); //UID下——
TFT_LCD_Draw_Bmp(3, 75, ( uint8_t * )gImage_Dyy_words_3X6_Y88 ); //UID写入
General_Number_Disp(UUIDS, UUIDX, 90); //UID下——
TFT_LCD_Draw_Bmp(3, 25, ( uint8_t * )gImage_Dyy_words_3X6_Y88 ); //UID写入
}
......
......@@ -120,6 +120,7 @@ extern uint8_t canData3[10];
extern uint8_t canData4[8];
extern uint8_t UUIDX;
extern uint8_t UIDNumber2[19];
extern uint8_t UIDNumberread[33];
extern uint8_t can_car_return_Data[8];
#define PCodeText_Space_size 2//故障文字 英文空格的像素数
#endif
......@@ -158,5 +158,7 @@ extern const unsigned char gImage_Dyy_words_5X6_Y137[];
extern const unsigned char gImage_Dyy_words_3X6_Y88[];
extern uint8_t Study_Flag;
extern uint8_t Require_card_flag;
extern uint8_t writeflag;
extern uint8_t uidwriteStep;
#endif
......@@ -129,6 +129,7 @@ void Key_Operation_SW3(Key_Event_en_t enKeyEvent)
}
}
uint8_t change = 17;
uint8_t writeflag = 0;
void Key_Operation_SW4(Key_Event_en_t enKeyEvent)
{
if ( enKeyEvent == KEY_EVENT_SHORT_PRESS )
......@@ -148,7 +149,9 @@ void Key_Operation_SW4(Key_Event_en_t enKeyEvent)
}
else if ( enKeyEvent == KEY_EVENT_LONG_PRESS )
{
Display_TFT_Clear();
writeflag = 1;
uidwriteStep = 0;
}
else if ( enKeyEvent == KEY_EVENT_SUPER_LONG_PRESS )
{
......
......@@ -799,7 +799,9 @@ void RSCAN0_CH3_Receive(CAN_Frame_st_t *pstCANFrame)
}
}
uint8_t writesuccess[8] = {83,85,67,67,69,83,83,0xFF};
uint8_t readfail[5] = {70,97,105,108,0xff};
uint8_t u8get786msg[8];
uint8_t u8get786readmsg[8];
uint8_t seednum[4] = {0};
uint8_t seedresult[4] = {0};
uint32_t key_value;
......@@ -971,12 +973,109 @@ void RSCAN0_CH4_Receive(CAN_Frame_st_t *pstCANFrame)
{
uidWrite = 0;
UIDGetstep = 5;
General_Number_Disp(writesuccess, 3, 200); //写入成功
Display_TFT_Clear();
General_Number_Disp(writesuccess, 3, 120); //写入成功
UID_ADD();
}
}
}
}
if(writeflag == 1)
{
if(pstCANFrame->u32CANID==0x750u)
{
u8get786readmsg[0] = pstCANFrame->unCANData.u8CANData[0];
u8get786readmsg[1] = pstCANFrame->unCANData.u8CANData[1];
u8get786readmsg[2] = pstCANFrame->unCANData.u8CANData[2];
u8get786readmsg[3] = pstCANFrame->unCANData.u8CANData[3];
u8get786readmsg[4] = pstCANFrame->unCANData.u8CANData[4];
u8get786readmsg[5] = pstCANFrame->unCANData.u8CANData[5];
u8get786readmsg[6] = pstCANFrame->unCANData.u8CANData[6];
u8get786readmsg[7] = pstCANFrame->unCANData.u8CANData[7];
if(uidwriteStep == 0)
{
if(u8get786readmsg[0] == 0x10 && u8get786readmsg[4] == 0x88)
{
uidwriteStep = 1;
UIDNumberread[0] = u8get786readmsg[5];
UIDNumberread[1] = u8get786readmsg[6];
UIDNumberread[2] = u8get786readmsg[7];
}
else if(u8get786readmsg[0] == 0x03 && u8get786readmsg[1] == 0x7E)
{
General_Number_Disp(readfail, 3, 200); //写入失败
}
}
else if(uidwriteStep == 1)
{
if(u8get786readmsg[0] == 0x21)
{
uidwriteStep = 2;
UIDNumberread[3] = u8get786readmsg[1];
UIDNumberread[4] = u8get786readmsg[2];
UIDNumberread[5] = u8get786readmsg[3];
UIDNumberread[6] = u8get786readmsg[4];
UIDNumberread[7] = u8get786readmsg[5];
UIDNumberread[8] = u8get786readmsg[6];
UIDNumberread[9] = u8get786readmsg[7];
}
}
else if(uidwriteStep == 2)
{
if(u8get786readmsg[0] == 0x22)
{
uidwriteStep = 3;
UIDNumberread[10] = u8get786readmsg[1];
UIDNumberread[11] = u8get786readmsg[2];
UIDNumberread[12] = u8get786readmsg[3];
UIDNumberread[13] = u8get786readmsg[4];
UIDNumberread[14] = u8get786readmsg[5];
UIDNumberread[15] = u8get786readmsg[6];
UIDNumberread[16] = u8get786readmsg[7];
}
}
else if(uidwriteStep == 3)
{
if(u8get786readmsg[0] == 0x23)
{
uidwriteStep = 4;
UIDNumberread[17] = u8get786readmsg[1];
UIDNumberread[18] = u8get786readmsg[2];
UIDNumberread[19] = u8get786readmsg[3];
UIDNumberread[20] = u8get786readmsg[4];
UIDNumberread[21] = u8get786readmsg[5];
UIDNumberread[22] = u8get786readmsg[6];
UIDNumberread[23] = u8get786readmsg[7];
}
}
else if(uidwriteStep == 4)
{
if(u8get786readmsg[0] == 0x24)
{
uidwriteStep = 5;
UIDNumberread[24] = u8get786readmsg[1];
UIDNumberread[25] = u8get786readmsg[2];
UIDNumberread[26] = u8get786readmsg[3];
UIDNumberread[27] = u8get786readmsg[4];
UIDNumberread[28] = u8get786readmsg[5];
UIDNumberread[29] = u8get786readmsg[6];
UIDNumberread[30] = u8get786readmsg[7];
}
}
else if(uidwriteStep == 5)
{
if(u8get786readmsg[0] == 0x25)
{
writeflag = 0;
UIDNumberread[31] = u8get786readmsg[1];
UIDNumberread[32] = 0xff;
General_Number_Disp(UIDNumberread, 3, 180);
General_Number_Disp(writesuccess, 3, 230); //读取成功
}
}
}
}
}
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment