Przeglądaj źródła

bug fix (again)

nmrr 1 rok temu
rodzic
commit
f5477fb66b
1 zmienionych plików z 7 dodań i 2 usunięć
  1. 7 2
      flipper_geiger.c

+ 7 - 2
flipper_geiger.c

@@ -118,7 +118,7 @@ static void draw_callback(Canvas* canvas, void* ctx)
     {
     {
         canvas_set_font(canvas, FontPrimary);
         canvas_set_font(canvas, FontPrimary);
         canvas_draw_str_aligned(canvas, 64, 10, AlignCenter, AlignBottom, "Geiger Counter");
         canvas_draw_str_aligned(canvas, 64, 10, AlignCenter, AlignBottom, "Geiger Counter");
-        canvas_draw_str_aligned(canvas, 64, 20, AlignCenter, AlignBottom, "Version 20240311");
+        canvas_draw_str_aligned(canvas, 64, 20, AlignCenter, AlignBottom, "Version 20240624");
         canvas_draw_str_aligned(canvas, 64, 40, AlignCenter, AlignBottom, "github.com/nmrr");
         canvas_draw_str_aligned(canvas, 64, 40, AlignCenter, AlignBottom, "github.com/nmrr");
     }
     }
 }
 }
@@ -181,9 +181,14 @@ int32_t flipper_geiger_app()
     view_port_draw_callback_set(view_port, draw_callback, &mutexVal.mutex);
     view_port_draw_callback_set(view_port, draw_callback, &mutexVal.mutex);
     view_port_input_callback_set(view_port, input_callback, event_queue);
     view_port_input_callback_set(view_port, input_callback, event_queue);
 
 
+    // DISABLE & REMOVE INITIAL CALLBACK (FIRMWARE BUG ?)
+    furi_hal_gpio_disable_int_callback(&gpio_ext_pa7);
+    furi_hal_gpio_remove_int_callback(&gpio_ext_pa7);
+
+    // NEW CALLBACK 
+    furi_hal_gpio_init(&gpio_ext_pa7, GpioModeInterruptFall, GpioPullUp, GpioSpeedVeryHigh);
     furi_hal_gpio_add_int_callback(&gpio_ext_pa7, gpiocallback, event_queue);
     furi_hal_gpio_add_int_callback(&gpio_ext_pa7, gpiocallback, event_queue);
     furi_hal_gpio_enable_int_callback(&gpio_ext_pa7);
     furi_hal_gpio_enable_int_callback(&gpio_ext_pa7);
-    furi_hal_gpio_init(&gpio_ext_pa7, GpioModeInterruptFall, GpioPullUp, GpioSpeedVeryHigh);
 
 
     Gui* gui = furi_record_open(RECORD_GUI);
     Gui* gui = furi_record_open(RECORD_GUI);
     gui_add_view_port(gui, view_port, GuiLayerFullscreen);
     gui_add_view_port(gui, view_port, GuiLayerFullscreen);