7 #include "../../Library/endian.h"
8 #include "../../Library/crc.h"
uint16_t CRC_calc_crc_16_ccitt_left(uint16_t crc, const uint8_t *c, size_t n, int rev_flag)
CRC-16-CCITT
const uint8_t * DSSC_get_rx_frame(const DS_StreamConfig *p_stream_config)
確定したフレームを取得
uint16_t EB90_FRAME_calc_crc(const uint8_t *data, size_t len)
EB90 Frame の CRC の計算
const uint8_t EB90_FRAME_kStx[EB90_FRAME_STX_SIZE]
const uint8_t * EB90_FRAME_get_packet_head_from_dssc(const DS_StreamConfig *p_stream_config)
受信フレームから Packet Field の先頭ポインタを取得する
uint8_t EB90_FRAME_is_valid_crc_of_dssc(const DS_StreamConfig *p_stream_config)
EB90 Frame に付与された CRC が正しいかチェック
uint16_t EB90_FRAME_get_crc_from_dssc(const DS_StreamConfig *p_stream_config)
CRC の取得
const uint8_t EB90_FRAME_kEtx[EB90_FRAME_ETX_SIZE]
uint16_t EB90_FRAME_get_packet_length_from_dssc(const DS_StreamConfig *p_stream_config)
Packet Length の取得
コンポ間通信などで標準的に使う データリンク層 の EB90 Frame
#define EB90_FRAME_STX_1ST_BYTE
EB90 Frame の STX 1st byte
#define EB90_FRAME_HEADER_SIZE
EB90 Frame のヘッダサイズ
#define EB90_FRAME_ETX_1ST_BYTE
EB90 Frame の ETX 1st byte
#define EB90_FRAME_STX_2ND_BYTE
EB90 Frame の STX 2nd byte
#define EB90_FRAME_ETX_2ND_BYTE
EB90 Frame の ETX 2nd byte
#define EB90_FRAME_LEN_SIZE
EB90 Frame の LEN のサイズ
#define EB90_FRAME_ETX_SIZE
EB90 Frame の ETX のサイズ
#define EB90_FRAME_CRC_SIZE
EB90 Frame の CRC のサイズ
#define EB90_FRAME_STX_SIZE
EB90 Frame の STX のサイズ
void * ENDIAN_memcpy(void *dest, const void *src, size_t size)
エンディアンを考慮した memcpy