Subversion Repositories Projects

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
962 - 1
 
2
/****************************************************************/
3
/*                                                                                                                              */
4
/*                               NG-Video 5,8GHz                                                        */
5
/*                                                                                                                              */
6
/*                              Copyright (C) 2011 - gebad                                              */
7
/*                                                                                                                              */
8
/*  This code is distributed under the GNU Public License               */
9
/*      which can be found at http://www.gnu.org/licenses/gpl.txt       */
10
/*                                                                                                                              */
11
/****************************************************************/
12
 
13
#ifndef _MENUE_H_
14
#define _MENUE_H_       
15
 
16
/*      Indexwerte für Funktions-Pointer in menue.c
17
        typedef void (*Displ_Ptr_Fnct)( uint32_t );
18
        Displ_Ptr_Fnct Displ_Fnct[] = {Displ_U_2Nk, Displ_Set_Contrast, Displ_Backgr_Light, Displ_Channels, Displ_AV_Source, \
19
                               Displ_Off_On, Displ_Language, DISPL_Servo_Steps, Displ_Servo_Min, Displ_Servo_Max, \
20
                                                           Displ_Servo_Mid, Displ_Format_Int, Displ_sel_Tracking, Displ_track_TX, Displ_Baudrate};
21
 */
22
#define IDX_DISPL_U_2Nk                 0
23
#define IDX_DISPL_SET_CONTRAST  1
24
#define IDX_DISPL_BACKGR_LIGHT  2
25
#define IDX_DISPL_CHANNEL               3
26
#define IDX_DISPL_AV_SOURCE             4
27
#define IDX_DISPL_OFF_ON                5
28
#define IDX_DISPL_LANGUAGE              6
29
#define IDX_DISPL_SERVO_STEPS   7
30
#define IDX_DISPL_SERVO_MIN             8       // für Servo linke  maximale Position
31
#define IDX_DISPL_SERVO_MAX             9       // für Servo rechte maximale Position
32
#define IDX_DISPL_SERVO_MID             10
33
#define IDX_DISPL_FORMAT_INT    11
34
#define IDX_DISPL_SEL_TRACKING  12
35
#define IDX_DISPL_TRACK_TX              13
36
#define IDX_DISPL_BAUDRATE              14
37
 
38
#define SCROLL_MAIN_MAX                 8       // index array Scroll_Menu scr_main_menu[]  = {....} Anzahl-1, da Beginn bei 0
39
#define SCROLL_SERVO_MAX                4       // index array Scroll_Menu scr_servo_menu[] = {....} Anzahl-1, da Beginn bei 0
40
 
41
/* bei Change_Value(....) */
42
#define ZLE_VAL                 1 // DOGM Zeile des zu ändernten Wertes
43
 
44
#define C_REPEAT                                0       // konstante repeat Geschwindigkeit
45
#define V_REPEAT                                1       // sich ändernte repeat Geschwindigkeit
46
 
47
typedef struct
48
{
49
  char* menu_nr;            // Stringzeiger auf Befehlsnamen
50
  void(*fp)(void);      // Zeiger auf auszuführende Funktion
51
} COMMAND_STRUCTUR;    
52
 
53
unsigned char jump_menu         (char *);
54
 
55
void Menu_Main                          (void);
56
void Menu_AV_Source                     (void);
57
void Menu_RX_Channel            (void);
58
void Menu_RSSI_Calibr           (void);
59
void Menu_RSSI_min                      (void);
60
void Menu_RSSI_max                      (void);
61
void Menu_Language                      (void);
62
void Menu_Servo_Calibr          (void);
63
void Menu_Servo_Steps           (void);
64
void Menu_Servo1                        (void);
65
void Menu_Servo2                        (void);
66
void Menu_Servo1_rev            (void);
67
void Menu_Servo1_left           (void);
68
void Menu_Servo1_right          (void);
69
void Menu_Servo1_middle         (void);
70
void Menu_Servo2_rev            (void);
71
void Menu_Servo2_left           (void);
72
void Menu_Servo2_right          (void);
73
void Menu_Servo2_middle         (void);
74
void Menu_lcd                           (void);
75
void Menu_lcd_Contrast          (void);
76
void Menu_lcd_Backgr_Light      (void);
77
void Menu_Battery                       (void);
78
void Menu_Low_U_Setup           (void);
79
void Menu_U_Offset                      (void);
80
void Menu_Tool                          (void);
81
void Menu_Tracking_Ant          (void);
82
void Menu_Tracking_Option       (void);
83
void Menu_GPS_Display           (void);
84
void Menu_GPS_Display_FLAG      (void);
85
 
86
/*char amenu[5] = {"0"};
87
char* pmenu = amenu;*/
88
char pmenu[5] = {"0"};
89
uint8_t ch_stored;              // Flag zur Speicherung, wenn Wert im Hauptdisplay geändert
90
uint8_t coldstart;
91
 
92
void Displ_Main_Disp(void);
93
void Displ_AV_Mark(uint8_t p, char marker);
94
void Disp_Str_mid(char *str, uint8_t zle);
95
 
96
#define RIGHT           0
97
#define LEFT            1
98
#define MIDDLE          2
99
 
100
typedef struct
101
{
102
uint16_t min;
103
uint16_t max;
104
} servo_limit_t;
105
 
106
servo_limit_t servo_limit[2][3] = {{{SERVO_I0_RIGHT_MIN, SERVO_I0_RIGHT_MAX},\
107
                                                                         {SERVO_I0_LEFT_MIN, SERVO_I0_LEFT_MAX},\
108
                                                                         {SERVO_I0_MIDDLE_MIN, SERVO_I0_MIDDLE_MAX}},\
109
                                                                        {{SERVO_I1_RIGHT_MIN, SERVO_I1_RIGHT_MAX},\
110
                                                                         {SERVO_I1_LEFT_MIN, SERVO_I1_LEFT_MAX},\
111
                                                                         {SERVO_I1_MIDDLE_MIN, SERVO_I1_MIDDLE_MAX}}};
112
 
113
#endif /* _MENUE_H */