Subversion Repositories NaviCtrl

Rev

Rev 220 | Rev 313 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 220 Rev 245
Line 1... Line 1...
1
#ifndef _MKPROTOCOL_H
1
#ifndef _MKPROTOCOL_H
2
#define _MKPROTOCOL_H
2
#define _MKPROTOCOL_H
-
 
3
#include "buffer.h"
Line 3... Line 4...
3
 
4
 
4
// slave addresses
5
// slave addresses
5
#define ANY_ADDRESS 0
6
#define ANY_ADDRESS 0
6
#define FC_ADDRESS 1
7
#define FC_ADDRESS 1
Line 9... Line 10...
9
#define MKOSD_ADDRESS 4
10
#define MKOSD_ADDRESS 4
10
#define BL_ADDRESS 5
11
#define BL_ADDRESS 5
Line 11... Line 12...
11
 
12
 
12
typedef struct
13
typedef struct
13
{
-
 
14
        u8* pData;
-
 
15
        u16 Size;
-
 
16
        u16 DataBytes;
-
 
17
        u16 Position;
-
 
18
        u8  Locked;
-
 
19
} __attribute__((packed)) Buffer_t;
-
 
20
 
-
 
21
extern void Buffer_Init(Buffer_t* pBuffer, u8* pDataBuffer, u16 DataBufferSize);
-
 
22
extern void Buffer_Clear(Buffer_t* pBuffer);
-
 
23
extern u8 Buffer_Copy(Buffer_t* pSrcBuffer, Buffer_t* pDstBuffer);
-
 
24
 
-
 
25
typedef struct
-
 
26
{
14
{
27
        u8 Address;
15
        u8 Address;
28
        u8 CmdID;
16
        u8 CmdID;
29
        u8* pData;
17
        u8* pData;
30
        u16 DataLen;
18
        u16 DataLen;
Line 31... Line 19...
31
} __attribute__((packed)) SerialMsg_t;
19
} __attribute__((packed)) SerialMsg_t;
32
 
20
 
33
extern u8 MKProtocol_CollectSerialFrame(Buffer_t* pRxBuff, u8 c);
21
u8 MKProtocol_CollectSerialFrame(Buffer_t* pRxBuff, u8 c);
34
extern void MKProtocol_CreateSerialFrame(Buffer_t* pTxBuff, u8 CmdID, u8 Address, u8 numofbuffers , ...); //u8 *data, u8 len, ....;
22
u8 MKProtocol_CreateSerialFrame(Buffer_t* pTxBuff, u8 CmdID, u8 Address, u8 numofbuffers , ...); //u8 *data, u8 len, ....;
Line 35... Line 23...
35
extern void MKProtocol_DecodeSerialFrameHeader(Buffer_t* pRxBuff, SerialMsg_t* pSerialMsg);
23
void MKProtocol_DecodeSerialFrameHeader(Buffer_t* pRxBuff, SerialMsg_t* pSerialMsg);