Modbus RTU 및 CRC 계산 검증하기 (CRC calculation)
펌웨어를 개발하다보면 CRC 계산을 해야되는 경우가 종종 있습니다. 필자가 즐겨쓰는 CRC 계산 사이트를 소개하고 값을 입력해보며 설명 해보겠습니다. https://www.lammertbies.nl/comm/info/crc-calculation?crc=8005&method=hex 위의 그림은 해당사이트의 CRC 계산 데이터를 입력하는 창입니다. 저는 주로 modbus rtu 데이터를 검증할때 사용하며 위에서 3번째에 있는 CRC16(Modbus) 가 모드버스 CRC 값이 됩니다. [사용방법] Input type을 ASCII와 HEX중 선택하고, 그 위 입력창에 계산을 원하는 데이터를 모두 입력후 Calculate CRC 버튼을 누르면 위 박스 데이터에 패킷 형태에 맞게 CRC가 자동계산됩니다. 예제 데이터를 입력해보며 같이 확인해 보겠습니다. 필자의 경우 modbus rtu 데이터 패킷을 master에 아래와 같이 보내려고 합니다. 이때 CRC값을 데이터끝에 2byte로 보내야 하는데 이럴때 이 계산기가 유용하게 사용됩니다. 펌웨어를 통해 내가 계산한 CRC값과 검증이 필요할때도 사용하면 유용합니다. 자~!! 데이터를 한번 보낸다고 가정하고 CRC를 계산해보겠습니다. Read temperature data of Modbus RTU (Master to Slave) Modbus Slave ID Function Code Start Protocol Address Quantity of Registers CRC16 Hi Lo Hi Lo Lo Hi C0 03 9C 40 00 02 ?? ?? ...
댓글
댓글 쓰기