Jean LE QUELLEC пре 2 година
родитељ
комит
bf4763311f
8 измењених фајлова са 56 додато и 3 уклоњено
  1. 4 0
      i2ctools.c
  2. 1 0
      i2ctools_i.h
  3. BIN
      images/Voltage_16x16.png
  4. BIN
      screenshots/infos_screen.png
  5. 15 0
      views/infos_view.c
  6. 8 0
      views/infos_view.h
  7. 20 0
      views/main_view.c
  8. 8 3
      views/main_view.h

+ 4 - 0
i2ctools.c

@@ -23,6 +23,10 @@ void i2ctools_draw_callback(Canvas* canvas, void* ctx) {
         draw_sender_view(canvas, i2ctools->sender);
         draw_sender_view(canvas, i2ctools->sender);
         break;
         break;
 
 
+    case INFOS_VIEW:
+        draw_infos_view(canvas);
+        break;
+
     default:
     default:
         break;
         break;
     }
     }

+ 1 - 0
i2ctools_i.h

@@ -10,6 +10,7 @@
 #include "views/sniffer_view.h"
 #include "views/sniffer_view.h"
 #include "views/scanner_view.h"
 #include "views/scanner_view.h"
 #include "views/sender_view.h"
 #include "views/sender_view.h"
+#include "views/infos_view.h"
 
 
 // App datas
 // App datas
 typedef struct {
 typedef struct {

BIN
images/Voltage_16x16.png


BIN
screenshots/infos_screen.png


+ 15 - 0
views/infos_view.c

@@ -0,0 +1,15 @@
+#include "infos_view.h"
+
+void draw_infos_view(Canvas* canvas) {
+    canvas_clear(canvas);
+    canvas_set_color(canvas, ColorBlack);
+    canvas_draw_rframe(canvas, 0, 0, 128, 64, 3);
+    canvas_set_font(canvas, FontSecondary);
+
+    canvas_draw_str_aligned(canvas, 3, 3, AlignLeft, AlignTop, "Wiring: ");
+    canvas_draw_str_aligned(canvas, 43, 3, AlignLeft, AlignTop, "C0->SCL");
+    canvas_draw_str_aligned(canvas, 43, 13, AlignLeft, AlignTop, "C1->SDA");
+    canvas_draw_str_aligned(canvas, 43, 23, AlignLeft, AlignTop, "GND->GND");
+    canvas_draw_icon(canvas, 15, 33, &I_Voltage_16x16);
+    canvas_draw_str_aligned(canvas, 30, 38, AlignLeft, AlignTop, "Only use 3v3 levels");
+}

+ 8 - 0
views/infos_view.h

@@ -0,0 +1,8 @@
+#include <furi.h>
+#include <furi_hal.h>
+#include <gui/gui.h>
+#include <i2ctools_icons.h>
+
+#define INFOS_TEXT "INFOS"
+
+void draw_infos_view(Canvas* canvas);

+ 20 - 0
views/main_view.c

@@ -14,6 +14,8 @@ void draw_main_view(Canvas* canvas, i2cMainView* main_view) {
             canvas, SNIFF_MENU_X, SNIFF_MENU_Y, AlignLeft, AlignTop, SNIFF_MENU_TEXT);
             canvas, SNIFF_MENU_X, SNIFF_MENU_Y, AlignLeft, AlignTop, SNIFF_MENU_TEXT);
         canvas_draw_str_aligned(
         canvas_draw_str_aligned(
             canvas, SEND_MENU_X, SEND_MENU_Y, AlignLeft, AlignTop, SEND_MENU_TEXT);
             canvas, SEND_MENU_X, SEND_MENU_Y, AlignLeft, AlignTop, SEND_MENU_TEXT);
+        canvas_draw_str_aligned(
+            canvas, INFOS_MENU_X, INFOS_MENU_Y, AlignLeft, AlignTop, INFOS_MENU_TEXT);
         canvas_draw_rbox(canvas, 80, SCAN_MENU_Y - 2, 43, 13, 3);
         canvas_draw_rbox(canvas, 80, SCAN_MENU_Y - 2, 43, 13, 3);
         canvas_set_color(canvas, ColorWhite);
         canvas_set_color(canvas, ColorWhite);
         canvas_draw_str_aligned(
         canvas_draw_str_aligned(
@@ -26,6 +28,8 @@ void draw_main_view(Canvas* canvas, i2cMainView* main_view) {
             canvas, SCAN_MENU_X, SCAN_MENU_Y, AlignLeft, AlignTop, SCAN_MENU_TEXT);
             canvas, SCAN_MENU_X, SCAN_MENU_Y, AlignLeft, AlignTop, SCAN_MENU_TEXT);
         canvas_draw_str_aligned(
         canvas_draw_str_aligned(
             canvas, SEND_MENU_X, SEND_MENU_Y, AlignLeft, AlignTop, SEND_MENU_TEXT);
             canvas, SEND_MENU_X, SEND_MENU_Y, AlignLeft, AlignTop, SEND_MENU_TEXT);
+        canvas_draw_str_aligned(
+            canvas, INFOS_MENU_X, INFOS_MENU_Y, AlignLeft, AlignTop, INFOS_MENU_TEXT);
         canvas_draw_rbox(canvas, 80, SNIFF_MENU_Y - 2, 43, 13, 3);
         canvas_draw_rbox(canvas, 80, SNIFF_MENU_Y - 2, 43, 13, 3);
         canvas_set_color(canvas, ColorWhite);
         canvas_set_color(canvas, ColorWhite);
         canvas_draw_str_aligned(
         canvas_draw_str_aligned(
@@ -38,12 +42,28 @@ void draw_main_view(Canvas* canvas, i2cMainView* main_view) {
             canvas, SCAN_MENU_X, SCAN_MENU_Y, AlignLeft, AlignTop, SCAN_MENU_TEXT);
             canvas, SCAN_MENU_X, SCAN_MENU_Y, AlignLeft, AlignTop, SCAN_MENU_TEXT);
         canvas_draw_str_aligned(
         canvas_draw_str_aligned(
             canvas, SNIFF_MENU_X, SNIFF_MENU_Y, AlignLeft, AlignTop, SNIFF_MENU_TEXT);
             canvas, SNIFF_MENU_X, SNIFF_MENU_Y, AlignLeft, AlignTop, SNIFF_MENU_TEXT);
+        canvas_draw_str_aligned(
+            canvas, INFOS_MENU_X, INFOS_MENU_Y, AlignLeft, AlignTop, INFOS_MENU_TEXT);
         canvas_draw_rbox(canvas, 80, SEND_MENU_Y - 2, 43, 13, 3);
         canvas_draw_rbox(canvas, 80, SEND_MENU_Y - 2, 43, 13, 3);
         canvas_set_color(canvas, ColorWhite);
         canvas_set_color(canvas, ColorWhite);
         canvas_draw_str_aligned(
         canvas_draw_str_aligned(
             canvas, SEND_MENU_X, SEND_MENU_Y, AlignLeft, AlignTop, SEND_MENU_TEXT);
             canvas, SEND_MENU_X, SEND_MENU_Y, AlignLeft, AlignTop, SEND_MENU_TEXT);
         break;
         break;
 
 
+    case INFOS_VIEW:
+        canvas_set_color(canvas, ColorBlack);
+        canvas_draw_str_aligned(
+            canvas, SCAN_MENU_X, SCAN_MENU_Y, AlignLeft, AlignTop, SCAN_MENU_TEXT);
+        canvas_draw_str_aligned(
+            canvas, SNIFF_MENU_X, SNIFF_MENU_Y, AlignLeft, AlignTop, SNIFF_MENU_TEXT);
+        canvas_draw_str_aligned(
+            canvas, SEND_MENU_X, SEND_MENU_Y, AlignLeft, AlignTop, SEND_MENU_TEXT);
+        canvas_draw_rbox(canvas, 80, INFOS_MENU_Y - 2, 43, 13, 3);
+        canvas_set_color(canvas, ColorWhite);
+        canvas_draw_str_aligned(
+            canvas, INFOS_MENU_X, INFOS_MENU_Y, AlignLeft, AlignTop, INFOS_MENU_TEXT);
+        break;
+
     default:
     default:
         break;
         break;
     }
     }

+ 8 - 3
views/main_view.h

@@ -6,15 +6,19 @@
 
 
 #define SCAN_MENU_TEXT "Scan"
 #define SCAN_MENU_TEXT "Scan"
 #define SCAN_MENU_X 90
 #define SCAN_MENU_X 90
-#define SCAN_MENU_Y 13
+#define SCAN_MENU_Y 7
 
 
 #define SNIFF_MENU_TEXT "Sniff"
 #define SNIFF_MENU_TEXT "Sniff"
 #define SNIFF_MENU_X 90
 #define SNIFF_MENU_X 90
-#define SNIFF_MENU_Y 27
+#define SNIFF_MENU_Y 21
 
 
 #define SEND_MENU_TEXT "Send"
 #define SEND_MENU_TEXT "Send"
 #define SEND_MENU_X 90
 #define SEND_MENU_X 90
-#define SEND_MENU_Y 41
+#define SEND_MENU_Y 35
+
+#define INFOS_MENU_TEXT "Infos"
+#define INFOS_MENU_X 90
+#define INFOS_MENU_Y 49
 
 
 // Menu
 // Menu
 typedef enum {
 typedef enum {
@@ -22,6 +26,7 @@ typedef enum {
     SCAN_VIEW,
     SCAN_VIEW,
     SNIFF_VIEW,
     SNIFF_VIEW,
     SEND_VIEW,
     SEND_VIEW,
+    INFOS_VIEW,
 
 
     /* Know menu Size*/
     /* Know menu Size*/
     MENU_SIZE
     MENU_SIZE