|
@@ -318,8 +318,11 @@ DISPLAY_LATENCY_PASS__POP(
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
-
|
|
|
|
|
-
|
|
|
|
|
|
|
+ #if defined(USE_DISPLAY_char_PA)
|
|
|
|
|
+ void DISPLAY_char_P_print(DISPLAY_char24_T &DISPLAY_char_PA ) {
|
|
|
|
|
+ DISPLAY_DEV.print(DISPLAY_char_PA);
|
|
|
|
|
+ }
|
|
|
|
|
+ #endif
|
|
|
void DISPLAY__print_menu(DISPLAY_T* DISPLAY_A ,
|
|
void DISPLAY__print_menu(DISPLAY_T* DISPLAY_A ,
|
|
|
DISPLAY_T_ARDUINO_ATTR_ARRAY_T &DISPLAY_T_ARDUINO_ATTR_ARRAY_A ,
|
|
DISPLAY_T_ARDUINO_ATTR_ARRAY_T &DISPLAY_T_ARDUINO_ATTR_ARRAY_A ,
|
|
|
DISPLAY_PHYSICAL_CHAR_T &DISPLAY_PHYSICAL_CHAR_A,
|
|
DISPLAY_PHYSICAL_CHAR_T &DISPLAY_PHYSICAL_CHAR_A,
|
|
@@ -341,6 +344,7 @@ void DISPLAY__print_menu(DISPLAY_T* DISPLAY_A ,
|
|
|
int menuYoffset = DISPLAY_PHYSICAL_CHAR_A.DISPLAY_MENU_A[DISPLAY_MENU_ITEM_INDEX_A].DISPLAY_MENU_SIZE_Y_CHARS_MIN_A ;
|
|
int menuYoffset = DISPLAY_PHYSICAL_CHAR_A.DISPLAY_MENU_A[DISPLAY_MENU_ITEM_INDEX_A].DISPLAY_MENU_SIZE_Y_CHARS_MIN_A ;
|
|
|
|
|
|
|
|
int next_tab_pos;
|
|
int next_tab_pos;
|
|
|
|
|
+ String message;
|
|
|
// int tab_pos_size = DISPLAY_char24_TAB_SIZE;
|
|
// int tab_pos_size = DISPLAY_char24_TAB_SIZE;
|
|
|
|
|
|
|
|
|
|
|
|
@@ -380,15 +384,21 @@ void DISPLAY__print_menu(DISPLAY_T* DISPLAY_A ,
|
|
|
else maxY = DISPLAY_PHYSICAL_CHAR_A.DISPLAY_MENU_A[DISPLAY_MENU_ITEM_INDEX_A].DISPLAY_MENU_SIZE_Y_CHARS_MAX_A * DISPLAY_PHYSICAL_CHAR_A.DISPLAY_textsize_y_A ;
|
|
else maxY = DISPLAY_PHYSICAL_CHAR_A.DISPLAY_MENU_A[DISPLAY_MENU_ITEM_INDEX_A].DISPLAY_MENU_SIZE_Y_CHARS_MAX_A * DISPLAY_PHYSICAL_CHAR_A.DISPLAY_textsize_y_A ;
|
|
|
|
|
|
|
|
|
|
|
|
|
-
|
|
|
|
|
- //debug
|
|
|
|
|
- DISPLAY_DEV.fillRect(0, 8 * DISPLAY_PHYSICAL_CHAR_A.DISPLAY_textsize_y_A ,
|
|
|
|
|
- 120, DISPLAY_PHYSICAL_CHAR_A.DISPLAY_textsize_y_A * 2 , BLUE );
|
|
|
|
|
- DISPLAY_DEV.setCursor(minXi , 8 * DISPLAY_PHYSICAL_CHAR_A.DISPLAY_textsize_y_A );
|
|
|
|
|
- DISPLAY_DEV.print("Tim r: "); DISPLAY_DEV.print(time_seq_id_A); DISPLAY_DEV.print(" "); DISPLAY_DEV.print(Slave_Ports_Status_A[1].Exp_state_level_A);
|
|
|
|
|
|
|
+ #if defined(USE_DISPLAY_char_PA)
|
|
|
|
|
+
|
|
|
|
|
+ //debug
|
|
|
|
|
+ DISPLAY_DEV.fillRect(0, 8 * DISPLAY_PHYSICAL_CHAR_A.DISPLAY_textsize_y_A ,
|
|
|
|
|
+ 120, DISPLAY_PHYSICAL_CHAR_A.DISPLAY_textsize_y_A * 2 , BLUE );
|
|
|
|
|
+ DISPLAY_DEV.setCursor(minXi , 8 * DISPLAY_PHYSICAL_CHAR_A.DISPLAY_textsize_y_A );
|
|
|
|
|
+ DISPLAY_DEV.print("T:"); DISPLAY_DEV.print(time_seq_id_A); DISPLAY_DEV.print(" "); DISPLAY_DEV.print(Slave_Ports_Status_A[1].Exp_state_level_A);
|
|
|
|
|
+
|
|
|
|
|
+ DISPLAY_DEV.print(" P:");
|
|
|
|
|
+ #endif
|
|
|
|
|
+ // DISPLAY_DEV.print(DISPLAY_PHYSICAL_CHAR_A.DISPLAY_MENU_A[DISPLAY_MENU_ITEM_INDEX_A].DISPLAY_MENU_ITEM_A[1].DISPLAY_char_PA*);
|
|
|
|
|
+ // DISPLAY_char_P_print(DISPLAY_PHYSICAL_CHAR_A.DISPLAY_MENU_A[DISPLAY_MENU_ITEM_INDEX_A].DISPLAY_MENU_ITEM_A[1].DISPLAY_char_PA);
|
|
|
#if defined(USE_DISPLAY_string_T)
|
|
#if defined(USE_DISPLAY_string_T)
|
|
|
DISPLAY_DEV.setCursor(minXi , 9 * DISPLAY_PHYSICAL_CHAR_A.DISPLAY_textsize_y_A );
|
|
DISPLAY_DEV.setCursor(minXi , 9 * DISPLAY_PHYSICAL_CHAR_A.DISPLAY_textsize_y_A );
|
|
|
- DISPLAY_DEV.print(DISPLAY_PHYSICAL_CHAR_A.DISPLAY_MENU_A[DISPLAY_MENU_ITEM_INDEX_A].DISPLAY_MENU_ITEM_A[1].DISPLAY_string_A);
|
|
|
|
|
|
|
+ DISPLAY_DEV.print(DISPLAY_PHYSICAL_CHAR_A.DISPLAY_MENU_A[DISPLAY_MENU_ITEM_INDEX_A].DISPLAY_MENU_ITEM_A[2].DISPLAY_string_A);
|
|
|
#endif
|
|
#endif
|
|
|
for(i=ARDUINO_ARRAY_INDEX_FIRST ; i<=ARDUINO_ARRAY_INDEX_LIMIT_DISPLAY_MENU_ITEM_A; i++) {
|
|
for(i=ARDUINO_ARRAY_INDEX_FIRST ; i<=ARDUINO_ARRAY_INDEX_LIMIT_DISPLAY_MENU_ITEM_A; i++) {
|
|
|
//DISPLAY_PHYSICAL_CHAR_A[DISPLAY_MENU_ITEM_INDEX_A].DISPLAY_MENU_ITEM_A[i]
|
|
//DISPLAY_PHYSICAL_CHAR_A[DISPLAY_MENU_ITEM_INDEX_A].DISPLAY_MENU_ITEM_A[i]
|
|
@@ -447,7 +457,10 @@ void DISPLAY__print_menu(DISPLAY_T* DISPLAY_A ,
|
|
|
//DISPLAY_DEV.setCursor(minXi , maxYi ); DISPLAY_DEV.setTextColor(WHITE, BLACK);
|
|
//DISPLAY_DEV.setCursor(minXi , maxYi ); DISPLAY_DEV.setTextColor(WHITE, BLACK);
|
|
|
//DISPLAY_DEV.print("[ ON ] / [ OFF ] ");DISPLAY_DEV.setTextColor(WHITE);
|
|
//DISPLAY_DEV.print("[ ON ] / [ OFF ] ");DISPLAY_DEV.setTextColor(WHITE);
|
|
|
} else {
|
|
} else {
|
|
|
- DISPLAY_DEV.fillRect( 0, maxYi , maxXi, minYi, RED );
|
|
|
|
|
|
|
+ DISPLAY_DEV.fillRect( 0, maxYi , maxXi, minYi,
|
|
|
|
|
+ DISPLAY_DEV.Color24To565(0x660000)
|
|
|
|
|
+ //RED
|
|
|
|
|
+ );
|
|
|
//DISPLAY_DEV.setCursor(minXi , maxYi ); DISPLAY_DEV.setTextColor(WHITE, BLACK);
|
|
//DISPLAY_DEV.setCursor(minXi , maxYi ); DISPLAY_DEV.setTextColor(WHITE, BLACK);
|
|
|
//DISPLAY_DEV.print("[ ? ] / [ ? ] ");DISPLAY_DEV.setTextColor(WHITE);
|
|
//DISPLAY_DEV.print("[ ? ] / [ ? ] ");DISPLAY_DEV.setTextColor(WHITE);
|
|
|
}
|
|
}
|
|
@@ -459,7 +472,18 @@ void DISPLAY__print_menu(DISPLAY_T* DISPLAY_A ,
|
|
|
DISPLAY_DEV.fillRect(
|
|
DISPLAY_DEV.fillRect(
|
|
|
0, maxYi ,
|
|
0, maxYi ,
|
|
|
5, minYi, RED );
|
|
5, minYi, RED );
|
|
|
- }
|
|
|
|
|
|
|
+ }
|
|
|
|
|
+ //draw level
|
|
|
|
|
+
|
|
|
|
|
+ DISPLAY_DEV.drawLine(
|
|
|
|
|
+ ( Slave_Ports_Status_A[DISPLAY_PHYSICAL_CHAR_A.DISPLAY_MENU_A[DISPLAY_MENU_ITEM_INDEX_A].DISPLAY_MENU_ITEM_A[i].ARDUINO_ARRAY_INDEX_A].Exp_state_level_A / 3)
|
|
|
|
|
+ , (i * DISPLAY_PHYSICAL_CHAR_A.DISPLAY_textsize_y_A) - 1, (( Slave_Ports_Status_A[DISPLAY_PHYSICAL_CHAR_A.DISPLAY_MENU_A[DISPLAY_MENU_ITEM_INDEX_A].DISPLAY_MENU_ITEM_A[i].ARDUINO_ARRAY_INDEX_A].Exp_state_level_A / 3) + 10 ) //maxXi
|
|
|
|
|
+ , (i * DISPLAY_PHYSICAL_CHAR_A.DISPLAY_textsize_y_A) - 1 ,DISPLAY_DEV.Color24To565(0x444400) );
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
|
|
|
/*if(maxYi == 0 ) {
|
|
/*if(maxYi == 0 ) {
|
|
|
Serial.print(" 404[maxYi]==0 for i[");Serial.print(i);Serial.print(" ] ");
|
|
Serial.print(" 404[maxYi]==0 for i[");Serial.print(i);Serial.print(" ] ");
|
|
@@ -480,19 +504,32 @@ void DISPLAY__print_menu(DISPLAY_T* DISPLAY_A ,
|
|
|
next_tab_pos = 1 ; //DISPLAY_PHYSICAL_CHAR_A.DISPLAY_textsize_x_A * 6
|
|
next_tab_pos = 1 ; //DISPLAY_PHYSICAL_CHAR_A.DISPLAY_textsize_x_A * 6
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
+ //MESSAGE BEGIN
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+ //EOF MESSAGE
|
|
|
|
|
+
|
|
|
|
|
|
|
|
-
|
|
|
|
|
|
|
+ #include "_DISPLAY_func_PRINT_PORT_ELEMENT.h"
|
|
|
|
|
+
|
|
|
for (int iA = 0; iA < 24; iA++) {
|
|
for (int iA = 0; iA < 24; iA++) {
|
|
|
if(iA % DISPLAY_char24_TAB_SIZE == 0) next_tab_pos++ ;
|
|
if(iA % DISPLAY_char24_TAB_SIZE == 0) next_tab_pos++ ;
|
|
|
|
|
|
|
|
- if(DISPLAY_PHYSICAL_CHAR_A.DISPLAY_MENU_A[DISPLAY_MENU_ITEM_INDEX_A].DISPLAY_MENU_ITEM_A[i].DISPLAY_char24_A[iA] == TAB) {
|
|
|
|
|
|
|
+ //if(DISPLAY_PHYSICAL_CHAR_A.DISPLAY_MENU_A[DISPLAY_MENU_ITEM_INDEX_A].DISPLAY_MENU_ITEM_A[i].DISPLAY_char24_A[iA] == TAB) {
|
|
|
|
|
+ if(String(message[iA]) == TAB_S) {
|
|
|
//move cursor to optimal tab pos
|
|
//move cursor to optimal tab pos
|
|
|
DISPLAY_DEV.setCursor( (next_tab_pos * DISPLAY_char24_TAB_SIZE * DISPLAY_PHYSICAL_CHAR_A.DISPLAY_textsize_x_A ) , maxYi );
|
|
DISPLAY_DEV.setCursor( (next_tab_pos * DISPLAY_char24_TAB_SIZE * DISPLAY_PHYSICAL_CHAR_A.DISPLAY_textsize_x_A ) , maxYi );
|
|
|
} else {
|
|
} else {
|
|
|
- DISPLAY_DEV.print(DISPLAY_PHYSICAL_CHAR_A.DISPLAY_MENU_A[DISPLAY_MENU_ITEM_INDEX_A].DISPLAY_MENU_ITEM_A[i].DISPLAY_char24_A[iA]);
|
|
|
|
|
|
|
+ //DISPLAY_DEV.print(DISPLAY_PHYSICAL_CHAR_A.DISPLAY_MENU_A[DISPLAY_MENU_ITEM_INDEX_A].DISPLAY_MENU_ITEM_A[i].DISPLAY_char24_A[iA]);
|
|
|
|
|
+ DISPLAY_DEV.print(message[iA]);
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ // DISPLAY_DEV.print("test 123");
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
}
|