Browse Source

修复显示屏最后一位乱码的问题

corvin rasp melodic 2 years ago
parent
commit
bbcf27a990
1 changed files with 13 additions and 6 deletions
  1. 13 6
      src/dual_iic/src/driver.cpp

+ 13 - 6
src/dual_iic/src/driver.cpp

@@ -255,18 +255,25 @@ void Driver::GUI_Show(std::string bat)
 	OLED_Display();
 
     FILE *fp;
-	char buffer[14];
+	char buffer[20];
     fp = popen("hostname -I | cut -d\' \' -f1", "r");
     fgets(buffer, sizeof(buffer), fp);
     if(buffer[0] == '\n')
     {
         strcpy(buffer, "No IP");
+    }else
+    {
+        char *tmp = NULL;
+        if((tmp = strstr(buffer, "\n")))
+        {
+            *tmp = '\0';
+        }
     }
-    GUI_DisString_EN(10, 15, char_ip, &Font12, FONT_BACKGROUND, WHITE); 
-	GUI_DisString_EN(30, 15, buffer, &Font12, FONT_BACKGROUND, WHITE);
-    GUI_DisString_EN(10, 35, char_bat, &Font12, FONT_BACKGROUND, WHITE);  
-    GUI_DisString_EN(36, 35, bat.c_str(), &Font12, FONT_BACKGROUND, WHITE);
-    OLED_Display();	
+    GUI_DisString_EN(10, 10, char_ip, &Font12, FONT_BACKGROUND, WHITE); 
+    GUI_DisString_EN(10, 22, buffer, &Font12, FONT_BACKGROUND, WHITE);
+    GUI_DisString_EN(10, 40, char_bat, &Font12, FONT_BACKGROUND, WHITE);  
+    GUI_DisString_EN(36, 40, bat.c_str(), &Font12, FONT_BACKGROUND, WHITE);
+    OLED_Display();
 }