사용자 도구

사이트 도구

English

moacon:getcrc:index

getCrc

u16 getCrc(u8 * targetArray, u16 datalength)

targetArray : 데이터가 저장된 배열명 (배열의 명칭만 적어줘야 합니다.)
dataLength : CRC16 계산할 데이터 개수

설명

MODBUS RTU 마스터 송신관련 함수를 직접 만들어 사용하실 분들을 위해 CRC16 계산 함수를 준비해 두었습니다.

특정 배열에 있는 데이터중 원하는 개수만큼 CRC16 값을 계산해줍니다. 이때 배열은 반드시 바이트형 배열을 사용해야 합니다. 결과는 16 비트 정수값으로 리턴해줍니다.

사용예

u8 modbusTxdata[8],i,blen,j,totalnum;
 u16 crc,tadr;
 modbusTxdata[0] = slaveAdr; // 송신해야 될 값들을 모두 배열에 넣습니다.
 modbusTxdata[1] = 1;
 modbusTxdata[2] = targetAdr >> 8;
 modbusTxdata[3] = targetAdr;
 modbusTxdata[4] = numberOfCoils >> 8;
 modbusTxdata[5] = numberOfCoils;
 crc = getCrc(modbusTxdata,6); // 배열에 있는 데이터를 가지고 CRC16 값을 계산합니다. 

목록으로 가기

moacon/getcrc/index.txt · 마지막으로 수정됨: 2016/04/14 09:50 (바깥 편집)