25,87 → 25,69 |
// ----------------------------------------------------------- |
// the menu functions |
// ----------------------------------------------------------- |
#define JETI_MENU_FCINFO 0 |
void mfc0(uint8_t key) |
|
void Menu_Status(uint8_t key) |
{ //0123456789ABCDEF |
JetiBox_printfxy(0,0,"+ Flight-Ctrl +"); |
JetiBox_printfxy(0,1,"HW:%d.%d SW:%d.%d%c",BoardRelease/10,BoardRelease%10,VERSION_MAJOR, VERSION_MINOR, VERSION_PATCH+'a'); |
} |
#define JETI_MENU_VOLT_RC 1 |
void mfc1(uint8_t key) |
{ //0123456789ABCDEF |
JetiBox_printfxy(0,0,"Volt RC-Level"); |
JetiBox_printfxy(0,1,"%2i.%1iV %03i",UBat/10, UBat%10, RC_Quality); |
} |
#define JETI_MENU_HEIGHT 2 |
void mfc2(uint8_t key) |
{ //0123456789ABCDEF |
JetiBox_printfxy(0,0,"Height[m] Vario"); |
if(ParamSet.Config0 & CFG0_AIRPRESS_SENSOR) |
JetiBox_printfxy(0,0,"%2i.%1iV",UBat/10, UBat%10); |
if(NCDataOkay) |
{ |
JetiBox_printfxy(0,1,"%5i %5i", (int16_t)(ReadingHeight/100), ReadingVario/10); |
JetiBox_printfxy(7,0,"%03dm %03d%c", GPSInfo.HomeDistance/10,GPSInfo.HomeBearing, 0xDF); |
} |
else |
{ |
JetiBox_printfxy(0,1,"no press. sensor"); |
JetiBox_printfxy(7,0,"Status"); |
} |
JetiBox_printfxy(0,1,"%4i %2i:%02i",Capacity.UsedCapacity,FlightSeconds/60,FlightSeconds%60); |
if(ParamSet.Config0 & CFG0_AIRPRESS_SENSOR) |
{ |
JetiBox_printfxy(11,1,"%4im", (int16_t)(ReadingHeight/100)); |
} |
} |
#define JETI_MENU_ATTITUDE 3 |
void mfc3(uint8_t key) |
|
void Menu_Attitude(uint8_t key) |
{ //0123456789ABCDEF |
JetiBox_printfxy(0,0,"Nick Roll Yaw"); |
JetiBox_printfxy(0,1,"%4i %4i %4i", (int16_t)(IntegralGyroNick/1024), (int16_t)(IntegralGyroRoll/1024), (int16_t)(YawGyroHeading / GYRO_DEG_FACTOR)); |
} |
#define JETI_MENU_AKKU 4 |
void mfc4(uint8_t key) |
|
void Menu_Battery(uint8_t key) |
{ //0123456789ABCDEF |
JetiBox_printfxy(0,0,"U[V] I[A] C[mAh]"); |
JetiBox_printfxy(0,0," [V] [A] [mAh]"); |
JetiBox_printfxy(0,1,"%2i.%1i %2i.%1i %6i",UBat/10, UBat%10, Capacity.ActualCurrent/10, Capacity.ActualCurrent%10, Capacity.UsedCapacity); |
} |
|
|
#define JETI_MENU_NCINFO 4 |
void mnc1(uint8_t key) |
{ //0123456789ABCDEF |
JetiBox_printfxy(1,0,"+ Navi-Ctrl +"); |
#ifdef USE_NAVICTRL |
void Menu_PosInfo(uint8_t key) |
{ |
if(NCDataOkay) |
{ |
JetiBox_printfxy(0,1,"HW:%d.%d SW:%d.%d%c",NC_Version.Hardware/10,NC_Version.Hardware%10,NC_Version.Major, NC_Version.Minor, NC_Version.Patch+'a'); |
JetiBox_printfxy(0,0,"Sat:%02d", GPSInfo.NumOfSats); |
switch (GPSInfo.SatFix) |
{ |
case SATFIX_NONE: |
JetiBox_printfxy(6,0,"NoFix"); |
break; |
case SATFIX_2D: |
JetiBox_printfxy(6,0,"2DFix"); |
break; |
case SATFIX_3D: |
JetiBox_printfxy(6,0,"3DFix"); |
break; |
default: |
JetiBox_printfxy(6,0,"??Fix"); |
break; |
} |
if(GPSInfo.Flags & FLAG_DIFFSOLN) |
{ |
JetiBox_printfxy(11,0,"/DGPS"); |
} |
JetiBox_printfxy(0,1,"Home:%03dm %03d%c", GPSInfo.HomeDistance/10, GPSInfo.HomeBearing, 0xDF); |
} |
else |
{ |
JetiBox_printfxy(1,1,"Not found!"); |
{ //0123456789ABCDEF |
JetiBox_printfxy(2,0,"No NaviCtrl!"); |
} |
#else |
JetiBox_printfxy(0,1,"No NC Support"); |
#endif |
} |
#define JETI_MENU_GPSINFO 5 |
void mnc2(uint8_t key) |
{ |
JetiBox_printfxy(0,0,"Sat:%02d", GPSInfo.NumOfSats); |
switch (GPSInfo.SatFix) |
{ |
case SATFIX_NONE: |
JetiBox_printfxy(6,0,"NoFix"); |
break; |
case SATFIX_2D: |
JetiBox_printfxy(6,0,"2DFix"); |
break; |
case SATFIX_3D: |
JetiBox_printfxy(6,0,"3DFix"); |
break; |
default: |
JetiBox_printfxy(6,0,"??Fix"); |
break; |
} |
if(GPSInfo.Flags & FLAG_DIFFSOLN) |
{ |
JetiBox_printfxy(11,0,"/DGPS"); |
} |
JetiBox_printfxy(0,1,"Home:%03dm %03d%c", GPSInfo.HomeDistance/10, GPSInfo.HomeBearing, 0xDF); |
} |
|
// ----------------------------------------------------------- |
// the menu topology |
121,23 → 103,18 |
} MENU_ENTRY; |
|
|
// the menu navigation structure |
/* |
0 ----------------------------- 5 |
| | |
4 - 1 - 2 - 3 - 4 - 1 6 |
/* | |
|
3 - 0 - 1 - 2 - 3 - 0 |
|
*/ |
|
const MENU_ENTRY JetiBox_Menu[] PROGMEM= |
{ // l r u d pHandler |
{0, 5, 0, 1, &mfc0 }, // 0 |
{4, 2, 0, 1, &mfc1 }, // 1 |
{1, 3, 0, 2, &mfc2 }, // 2 |
{2, 4, 0, 3, &mfc3 }, // 3 |
{3, 1, 0, 4, &mfc4 }, // 4 |
{0, 5, 5, 6, &mnc1 }, // 5 |
{6, 6, 5, 6, &mnc2 } // 6 |
{3, 1, 0, 0, &Menu_Status }, // 0 |
{0, 2, 1, 1, &Menu_Attitude }, // 1 |
{1, 3, 2, 2, &Menu_Battery }, // 2 |
{2, 0, 3, 3, &Menu_PosInfo }, // 3 |
}; |
|
// ----------------------------------------------------------- |