Subversion Repositories FlightCtrl

Rev

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

Rev 492 Rev 499
Line 17... Line 17...
17
unsigned volatile char NeueKoordinateEmpfangen = 0;
17
unsigned volatile char NeueKoordinateEmpfangen = 0;
18
unsigned volatile char UebertragungAbgeschlossen = 1;
18
unsigned volatile char UebertragungAbgeschlossen = 1;
19
unsigned volatile char CntCrcError = 0;
19
unsigned volatile char CntCrcError = 0;
20
unsigned volatile char AnzahlEmpfangsBytes = 0;
20
unsigned volatile char AnzahlEmpfangsBytes = 0;
21
unsigned volatile char PC_DebugTimeout = 0;
21
unsigned volatile char PC_DebugTimeout = 0;
-
 
22
unsigned char RemotePollDisplayLine = 0;
22
unsigned char NurKanalAnforderung = 0;
23
unsigned char NurKanalAnforderung = 0;
-
 
24
unsigned char DebugTextAnforderung = 255;
23
unsigned char PcZugriff = 100;
25
unsigned char PcZugriff = 100;
24
unsigned char MotorTest[4] = {0,0,0,0};
26
unsigned char MotorTest[4] = {0,0,0,0};
25
unsigned char DubWiseKeys[3] = {0,0,0};
27
unsigned char DubWiseKeys[3] = {0,0,0};
26
unsigned char MeineSlaveAdresse;
28
unsigned char MeineSlaveAdresse;
27
struct str_DebugOut    DebugOut;
29
struct str_DebugOut    DebugOut;
28
struct str_Debug       DebugIn;
30
struct str_Debug       DebugIn;
29
struct str_VersionInfo VersionInfo;
31
struct str_VersionInfo VersionInfo;
30
int Debug_Timer;
32
int Debug_Timer;
Line -... Line 33...
-
 
33
 
-
 
34
const unsigned char ANALOG_TEXT[32][16] =
-
 
35
{
-
 
36
   //1234567890123456 
-
 
37
    "IntegralNick    ", //0
-
 
38
    "IntegralRoll    ",
-
 
39
    "AccNick         ",
-
 
40
    "AccRoll         ",
-
 
41
    "GyroGier        ",
-
 
42
    "HoehenWert      ", //5
-
 
43
    "AccZ            ",
-
 
44
    "Gas             ",
-
 
45
    "KompassValue    ",
-
 
46
    "MesswertNick    ",
-
 
47
    "10_SenderOkay   ", //10
-
 
48
    "11_MesswertRoll ",
-
 
49
    "Motor_Vorne     ",
-
 
50
    "Motor_Hinten    ",
-
 
51
    "Motor_Links     ",
-
 
52
    "Motor_Rechts    ", //15
-
 
53
    "16_Acc_Z        ",
-
 
54
    "17MittelAccNick ",
-
 
55
    "18_MittelAccRoll",
-
 
56
    "Analog19        ",
-
 
57
    "IntegralErrRoll ", //20
-
 
58
    "Analog21        ",
-
 
59
    "22_MittelGIngR  ",
-
 
60
    "Analog23        ",
-
 
61
    "24RollOffset    ",
-
 
62
    "25IntRoll*Fakt  ", //25
-
 
63
    "Analog26        ",
-
 
64
    "DirektAusglRoll ",
-
 
65
    "28MesswertRoll  ",
-
 
66
    "29AusgleichRoll ",
-
 
67
    "30_I-LageRoll   ", //30
-
 
68
    "31_StickRoll    "
-
 
69
};
-
 
70
 
-
 
71
 
31
 
72
 
32
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
73
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
33
//++ Sende-Part der Datenübertragung
74
//++ Sende-Part der Datenübertragung
34
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
75
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
35
SIGNAL(INT_VEC_TX)
76
SIGNAL(INT_VEC_TX)
Line 188... Line 229...
188
// unsigned char tmp_char_arr4[4];
229
// unsigned char tmp_char_arr4[4];
189
 //if(!MotorenEin) 
230
 //if(!MotorenEin) 
190
 PcZugriff = 255;
231
 PcZugriff = 255;
191
  switch(RxdBuffer[2])
232
  switch(RxdBuffer[2])
192
  {
233
  {
-
 
234
   case 'a':// Texte der Analogwerte
-
 
235
            Decode64((unsigned char *) &tmp_char_arr2[0],sizeof(tmp_char_arr2),3,AnzahlEmpfangsBytes);
-
 
236
            DebugTextAnforderung = tmp_char_arr2[0];
-
 
237
                        break;
193
   case 'c':// Debugdaten incl. Externe IOs usw 
238
   case 'c':// Debugdaten incl. Externe IOs usw 
194
                        Decode64((unsigned char *) &DebugIn,sizeof(DebugIn),3,AnzahlEmpfangsBytes);
239
                        Decode64((unsigned char *) &DebugIn,sizeof(DebugIn),3,AnzahlEmpfangsBytes);
195
/*              for(unsigned char i=0; i<4;i++)
240
/*              for(unsigned char i=0; i<4;i++)
196
                         {
241
                         {
197
              EE_CheckAndWrite(&EE_Buffer[EE_DEBUGWERTE + i*2],     DebugIn.Analog[i]);
242
              EE_CheckAndWrite(&EE_Buffer[EE_DEBUGWERTE + i*2],     DebugIn.Analog[i]);
Line 300... Line 345...
300
}
345
}
Line 301... Line 346...
301
 
346
 
302
//---------------------------------------------------------------------------------------------
347
//---------------------------------------------------------------------------------------------
303
void DatenUebertragung(void)  
348
void DatenUebertragung(void)  
304
{
-
 
305
 static char dis_zeile = 0;
349
{
Line 306... Line 350...
306
 if(!UebertragungAbgeschlossen) return;
350
 if(!UebertragungAbgeschlossen) return;
307
 
351
 
308
   if(DebugGetAnforderung && UebertragungAbgeschlossen)               // Bei Get werden die vom PC einstellbaren Werte vom PC zurückgelesen
352
   if(DebugGetAnforderung && UebertragungAbgeschlossen)               // Bei Get werden die vom PC einstellbaren Werte vom PC zurückgelesen
Line 315... Line 359...
315
         {
359
         {
316
          SendOutData('D',MeineSlaveAdresse,(unsigned char *) &DebugOut,sizeof(DebugOut));
360
          SendOutData('D',MeineSlaveAdresse,(unsigned char *) &DebugOut,sizeof(DebugOut));
317
          DebugDataAnforderung = 0;
361
          DebugDataAnforderung = 0;
318
          Debug_Timer = SetDelay(MIN_DEBUG_INTERVALL);  
362
          Debug_Timer = SetDelay(MIN_DEBUG_INTERVALL);  
319
         }
363
         }
-
 
364
    if(DebugTextAnforderung != 255) // Texte für die Analogdaten
-
 
365
     {
-
 
366
      SendOutData('A',DebugTextAnforderung + '0',(unsigned char *) ANALOG_TEXT[DebugTextAnforderung],16);
-
 
367
      DebugTextAnforderung = 255;
-
 
368
         }
Line 320... Line 369...
320
 
369
 
321
     if(DebugDisplayAnforderung && UebertragungAbgeschlossen)
370
     if(DebugDisplayAnforderung && UebertragungAbgeschlossen)
322
         {
371
         {
323
      Menu();
372
      Menu();
324
          DebugDisplayAnforderung = 0;
373
          DebugDisplayAnforderung = 0;
325
      if(++dis_zeile == 4 || NurKanalAnforderung)
374
      if(++RemotePollDisplayLine == 4 || NurKanalAnforderung)
326
      {
375
      {
327
       SendOutData('4',0,(unsigned char *)&PPM_in,sizeof(PPM_in));   // DisplayZeile übertragen
376
       SendOutData('4',0,(unsigned char *)&PPM_in,sizeof(PPM_in));   // DisplayZeile übertragen
328
       dis_zeile = -1;
377
       RemotePollDisplayLine = -1;
329
      }
378
      }
330
      else  SendOutData('0' + dis_zeile,0,(unsigned char *)&DisplayBuff[20 * dis_zeile],20);   // DisplayZeile übertragen
379
      else  SendOutData('0' + RemotePollDisplayLine,0,(unsigned char *)&DisplayBuff[20 * RemotePollDisplayLine],20);   // DisplayZeile übertragen
331
         }
380
         }
332
    if(GetVersionAnforderung && UebertragungAbgeschlossen)
381
    if(GetVersionAnforderung && UebertragungAbgeschlossen)
333
     {
382
     {
334
      SendOutData('V',MeineSlaveAdresse,(unsigned char *) &VersionInfo,sizeof(VersionInfo));
383
      SendOutData('V',MeineSlaveAdresse,(unsigned char *) &VersionInfo,sizeof(VersionInfo));