-
Notifications
You must be signed in to change notification settings - Fork 1
/
xmodem.h
42 lines (31 loc) · 1.37 KB
/
xmodem.h
1
#ifndef XMODEM_H#define XMODEM_H#define ACK 0x06#define NAK 0x15#define CAN 0x18#define SOH 0x01#define EOT 0x04#define ETX 0x03#define HEAD 0 /* ブロックヘッダ */#define SEQ 1 /* シーケンス番号 */#define COM 2 /* シーケンス番号の補数 */#define DAT 3 /* データ開始番地 */#define CHK 131 /* チェックサム番地 */#define CRCH 131 /* CRC Highバイト */#define CRCL 132 /* CRC Lowバイト */#define WAIT_NACK_TIMEOUT 500 /* NAK接続要求待ちタイムアウト */#define WAIT_NACK_RETRY 5 /* NAK接続要求リトライ回数 */#define WAIT_ACK_TIMEOUT 100 /* ACK応答待ちタイムアウト */#define WAIT_ACK_RETRY 50 /* ACK応答リトライ回数 */#define WAIT_HEAD_TIMEOUT 500 /* ヘッダ受信タイムアウト */#define WAIT_HEAD_RETRY 20 /* 送信開始待ちリトライ回数 */#define PACKET_LOSS_TIMEOUT 100 /* パケットロスタイムアウト */#define REQ_NACK_RETRY 20 /* 再送要求リトライ回数 */#define TRUE 1#define FALSE 0extern void xmodem_init(void); /* XMODEM初期化 */extern int xmodem_start_session(void); /* XMODEMセッション開始 */extern int xmodem_transmit(void* p, uint32_t blocks); /* XMODEM送信ルーチン */extern void xmodem_end_session(void); /* XMODEMセッション終了 */extern void xput(void);#endif