내 프로젝트에서 RFID 태그의 고유 ID를 읽은 결과는 uint8_t TagRead[4]
형식입니다.uint8_t 값에 유형 할당
결과를 미리 정의 된 여러 태그 ID 값과 비교하여 어떤 태그가 읽혔는지 확인합니다. 예를 들어
:
uint8_t RED1[4] = { 0x73, 0xD5, 0xB7, 0xAC };
uint8_t RED2[4] = { 0x7E, 0x27, 0x49, 0x4E };
uint8_t RED3[4] = { 0x02, 0xFD, 0x06, 0x40 };
uint8_t GREEN1[4] = { 0xAB, 0xEC, 0x68, 0x80 };
uint8_t GREEN2[4] = { 0xEE, 0x20, 0x50, 0x4E };
uint8_t GREEN3[4] = { 0x27, 0x06, 0x40, 0x73 };
if (*((uint32_t *)TagRead) == *((uint32_t *)RED2)) {
// RED2 tag has been read
}
else if (*((uint32_t *)TagRead) == *((uint32_t *)GREEN3)) {
// GREEN3 tag has been read
}
내 질문은 액션이 스캔 된 태그의 색상에 따라 수행 할 수 있도록 태그 그룹에 형/범주를 할당 할 수있는에 관한 것이다.
RED 태그를 스캔 할 때 빨간색 LED가 켜지고 녹색 태그가 스캔 될 때 파란색 LED가 켜질 수 있습니다.
각 색상별로 대략 50 개의 태그가 있기 때문에 If 문에 모든 태그 이름을 나열하고 싶지 않습니다. 대신, 태그에 색상을 지정할 수 있습니까?
그 다음을 수행 할 수있을 것입니다 : 스캔 태그 유형 RED이다
경우, 빨간색 행동을한다. 스캔 한 태그의 유형이 녹색 인 경우 녹색 작업을 수행하십시오.
도움 주셔서 감사합니다.
감사합니다. 모든 독자가 제공하는 구조체의 ID 부분입니다, 그래서 어떻게 그 ID가 속한 태그를 반환하는 데 사용할 수 있습니까? 이 작업을 수행 할 수 있다면, 내가 한 것처럼 tag.color를 사용하여 색상을 얻을 수 있습니다. – mgh75