From 258ea95de268c7b7bef6dd12c7409f4e01d49f59 Mon Sep 17 00:00:00 2001 From: Rickventura <43839047+Rickventura@users.noreply.github.com> Date: Mon, 12 Nov 2018 14:01:16 +0100 Subject: [PATCH] TITagitstandardFlipUid refactored --- .../Application/TITagitstandard.c | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/Firmware/Chameleon-Mini/Application/TITagitstandard.c b/Firmware/Chameleon-Mini/Application/TITagitstandard.c index 103e964..b68a243 100644 --- a/Firmware/Chameleon-Mini/Application/TITagitstandard.c +++ b/Firmware/Chameleon-Mini/Application/TITagitstandard.c @@ -76,6 +76,7 @@ uint16_t TITagitstandardAppProcess(uint8_t* FrameBuf, uint16_t FrameBytes) if (ISO15693Addressed(FrameBuf)) { if (ISO15693CompareUid(&FrameBuf[ISO15693_REQ_ADDR_PARAM], Uid)) /* read is addressed to us */ + /* pick block 2 + 8 (UID Lenght) */ PageAddress = FrameBuf[ISO15693_REQ_ADDR_PARAM + 0x08]; else /* we are not the addressee of the read command */ @@ -103,6 +104,7 @@ uint16_t TITagitstandardAppProcess(uint8_t* FrameBuf, uint16_t FrameBytes) } MemoryReadBlock(FramePtr, PageAddress * TITAGIT_BYTES_PER_PAGE, TITAGIT_BYTES_PER_PAGE); + } else if (Command == ISO15693_CMD_WRITE_SINGLE) { @@ -181,10 +183,13 @@ void TITagitstandardSetUid(ConfigurationUidType Uid) void TITagitstandardFlipUid(ConfigurationUidType Uid) { - uint8_t UidTemp[ActiveConfiguration.UidSize]; - int i; - for (i = 0; i < ActiveConfiguration.UidSize; i++) - UidTemp[i] = Uid[i]; - for (i = 0; i < ActiveConfiguration.UidSize; i++) - Uid[i] = UidTemp[ActiveConfiguration.UidSize - i - 1]; + + uint8_t tmp , *tail ; + tail = Uid + ActiveConfiguration.UidSize - 1; + while ( Uid < tail ){ + tmp = *Uid; + *Uid++ = *tail ; + *tail-- = tmp; + } + } \ No newline at end of file