Subversion Repositories NaviCtrl

Rev

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

Rev 434 Rev 435
Line 77... Line 77...
77
 
77
 
Line 78... Line 78...
78
FTP_direntry_t FTP_direntry;
78
FTP_direntry_t FTP_direntry;
Line 79... Line -...
79
 
-
 
80
char FTP_data[DATA_TRANSFER_SIZE+10];                             //  rx & tx buffer to avoid 2 buffers
-
 
81
 
79
 
Line 82... Line 80...
82
u16 CompressBuffer(char *buf, u16 size, u16 offset)
80
char FTP_data[DATA_TRANSFER_SIZE+10];                             //  rx & tx buffer to avoid 2 buffers
83
{
81
 
84
  #define KEYWORD_COUNT 44
82
  #define KEYWORD_COUNT 46
-
 
83
 
85
 
84
  // most used gpx tags can be compressed 
86
  // most used gpx tags can be compressed 
85
  const char keyword[KEYWORD_COUNT][16]=
87
  const char keyword[KEYWORD_COUNT][16]=
86
                                        {"Altimeter>\0    \0",
88
                                        {"Altimeter>\0    \0",
87
                                         "MotorCurrent>\0 \0",
89
                                         "Current>\0      \0",
88
                                         "Current>\0      \0",
Line 109... Line 108...
109
                                         "time>\0         \0",
108
                                         "time>\0         \0",
110
                                         "sat>\0          \0",
109
                                         "sat>\0          \0",
111
                                         "ele>\0          \0",
110
                                         "ele>\0          \0",
112
                                         " lat=\0         \0",
111
                                         " lat=\0         \0",
113
                                         " lon=\0         \0",
112
                                         " lon=\0         \0",
-
 
113
                                         "0,0,0,0\0       \0",
114
                                         "name>\0         \0",
114
                                         "name>\0         \0",
115
                                         "FCFlags2>\0     \0",
115
                                         "FCFlags2>\0     \0",
116
                                         "MagnetField>\0  \0",
116
                                         "MagnetField>\0  \0",
117
                                         "trkseg>\0       \0",
117
                                         "trkseg>\0       \0",
118
                                         "MotorCurrent>\0 \0",
-
 
119
                                         "AnalogInputs>\0 \0",
118
                                         "AnalogInputs>\0 \0",
120
                                         "Servo>\0        \0",
119
                                         "Servo>\0        \0",
121
                                         "BL_State>\0     \0",
120
                                         "BL_State>\0     \0",
122
                                         "BL_MaxPWM>\0    \0",
121
                                         "BL_MaxPWM>\0    \0",
123
                                         "MikroKopter\0   \0",
122
                                         "MikroKopter\0   \0",
-
 
123
                                         "nter>000</\0    \0",
124
                                         "metadata>\0     \0",
124
                                         "metadata>\0     \0",
125
                                         "<WP>----,0,0,0<\0",
125
                                         "<WP>----,0,0,0<\0",
126
                                         "MagnetInclinati\0",
126
                                         "MagnetInclinati\0",
127
                                         "BL_Temperature<\0",
127
                                         "BL_Temperature>\0",
128
                                         "AvaiableMotorPo\0",
128
                                         "AvaiableMotorPo\0",
129
                                         "FC_I2C_ErrorCom\0",
129
                                         "FC_I2C_ErrorCou\0",    
130
                                         "FC_SPI_ErrorCom\0",
130
                                         "FC_SPI_ErrorCou\0",
131
                                         "TargetDistance>\0" };
131
                                         "TargetDistance>\0" };
Line -... Line 132...
-
 
132
 
-
 
133
u16 CompressBuffer(char *buf, u16 size, u16 offset)
-
 
134
{
132
 
135
 
133
  u16 i, count = size;
136
  u16 i, count = size;
Line 134... Line 137...
134
  char *s = NULL, *start = buf+offset;
137
  char *s = NULL, *start = buf+offset;
135
 
138
 
Line 272... Line 275...
272
                               
275
                               
273
                                if (compressLevel > 1)
276
                                if (compressLevel > 1)
274
                                {
277
                                {
275
                                        if (size < DATA_TRANSFER_SIZE - 50)
278
                                        if (size < DATA_TRANSFER_SIZE - 50)
276
                                        {              
279
                                        {              
277
                                                fread_(&FTP_data[size], DATA_TRANSFER_SIZE - size, 1, fp);                              // read data block to buffer);          
280
                                                fread_(&FTP_data[size], DATA_TRANSFER_SIZE - size, 1, fp);                              // read data block to buffer);  
278
                                                FTP_data[DATA_TRANSFER_SIZE] = 0;              
281
                                                FTP_data[DATA_TRANSFER_SIZE] = 0;              
279
                                                size = CompressBuffer(FTP_data, DATA_TRANSFER_SIZE, size);
282
                                                size = CompressBuffer(FTP_data, DATA_TRANSFER_SIZE, size);
280
                                        }
283
                                        }
281
                                }
284
                                }
Line 323... Line 326...
323
                case FTP_CMD_NONE:
326
                case FTP_CMD_NONE:
324
                default:
327
                default:
325
                        FTP_command = FTP_CMD_NONE;
328
                        FTP_command = FTP_CMD_NONE;
326
                        Debug("ftp: CMD None");
329
                        Debug("ftp: CMD None");
327
                        break;
330
                        break;
-
 
331
 
-
 
332
                case FTP_CMD_GET_KEYWORDS:
-
 
333
                        {
-
 
334
                        u8 count = KEYWORD_COUNT;
-
 
335
 
-
 
336
                        MKProtocol_CreateSerialFrame(&UART1_tx_buffer, 'F', NC_ADDRESS, 3, &FTP_command, 1, &count, 1, keyword, sizeof(keyword) );
-
 
337
                        }
-
 
338
                        break;
-
 
339
 
-
 
340
 
328
        }
341
        }
329
}
342
}