#ifndef DLDEF #define DLDEF #define FRAME_SIZE 32 #define FRAME_LOAD_SIZE FRAME_SIZE - 7 #define FRAME_START 0xFC #define FRAME_STOP 0xFD #define DATA 0 #define ACK 1 typedef struct{ unsigned char from; unsigned char to; unsigned char kind; unsigned char frameNumber; unsigned char checkSum; unsigned char load[FRAME_LOAD_SIZE]; }FRAME; #include "mac.h" #include "transport.h" unsigned char datalinkInit(); void dataLinkSend(unsigned char a, unsigned char* t, unsigned int length); void dataLinkReceive(unsigned char* f); unsigned char getCheckSum(unsigned char[FRAME_LOAD_SIZE]); char sendFrame(unsigned char a, FRAME f); void errorUp(); void dataLinkMsg2Stream(TRANS_MSG* m, unsigned char* s); void dataLinkStream2Msg(unsigned char* s, FRAME* f); void dataLinkFrame2Stream(FRAME* f, unsigned char* s); #endif