CRC16값을 쉽게 넣어봅시다.
-------------------------------------------------------------------------------------------
함수본체
void *를 인자를 받아서 CRC16값을 만들기 위함
((unsigned char *)DATA)로 형변환 해줌 (char *로 형변환, 배열의 이름은 어차피주소니까 char 배열과 같음 )
CRC_PRESET과 CRC_POLYNOM은 Char형 변수로 만들지 않고 #define으로 상수로변경
-------------------------------------------------------------------------------------------
숫자1을 누르면 DEVICE로 데이터가 ucHostComm의 데이터를 보내는데 CRC값을 자동으로 채워주자!
간단하게 정리하면 ucHostComm[0] + ucHostComm[0][0]-2 = CRC16( );
아래 배열의 주소 + 첫번째 값0x0D-2 == 원래 주소 +11이다.
이주소값을 다시 short *로 바꾸면 해결( CRC16함수의 반환값이 unsigned short형)
ucHostComm[0][0]이 명령어 전체길이를 알수있어서 가능한 방법
그러면 데이터 시트를 보자.
이명령어를 0~4번배열 까지만 써주면 CRC코드는 5~6번에는 자동바뀌어서 들어가게끔 해놨었다.
결론: 이명령어를 실행하고, 트랜스폰더(ID카드)를 리더기에 대면
호스트에 UID(고유식별자)및 정보가 온다.
------------------------------------------------------------------------
C++
오늘은 좀 ㅈㅅㅈㅅ
'코스웨어 > 14년 스마트컨트롤러' 카테고리의 다른 글
RFID 시리얼 통신 소스 (0) | 2014.10.21 |
---|---|
MDS테크 신입 및 경력 모집 (0) | 2014.10.21 |
20141020월요일 업무일지 출석10번 김화린 (8) | 2014.10.21 |
2014.10.17 일일 보고서 김진철 (9) | 2014.10.17 |
2014년 10월 15일 수업일지 김용우 (7) | 2014.10.15 |
2014.10.14 업무일지 - 김상엽 (9) | 2014.10.14 |
2014.10.13 일일 교육보고 - 김대희 (3) (9) | 2014.10.13 |
20141010 출석번호 1번 업무일지 고윤석 (9) | 2014.10.12 |