Переглянути джерело

Fix gpio state isp programmer (#2567)

* ISP: fix state gpio ISP Programmer
* WS: delete string debug

Co-authored-by: あく <alleteam@gmail.com>
Skorpionm 2 роки тому
батько
коміт
6cc5f30c84

+ 1 - 0
applications/external/avr_isp_programmer/helpers/avr_isp.c

@@ -152,6 +152,7 @@ bool avr_isp_auto_set_spi_speed_start_pmode(AvrIsp* instance) {
             }
         }
     }
+    if(instance->spi) avr_isp_spi_sw_free(instance->spi);
     return false;
 }
 

+ 3 - 2
applications/external/avr_isp_programmer/helpers/avr_isp_worker_rw.c

@@ -198,9 +198,10 @@ bool avr_isp_worker_rw_detect_chip(AvrIspWorkerRW* instance) {
         }
         avr_isp_end_pmode(instance->avr_isp);
 
-        furi_hal_pwm_stop(FuriHalPwmOutputIdLptim2PA4);
-
     } while(0);
+
+    furi_hal_pwm_stop(FuriHalPwmOutputIdLptim2PA4);
+
     if(instance->callback) {
         if(instance->chip_arr_ind > avr_isp_chip_arr_size) {
             instance->callback(instance->context, "No detect", instance->chip_detect, 0);

+ 1 - 0
applications/external/avr_isp_programmer/lib/driver/avr_isp_prog.c

@@ -317,6 +317,7 @@ static bool avr_isp_prog_auto_set_spi_speed_start_pmode(AvrIspProg* instance) {
             }
         }
     }
+    if(instance->spi) avr_isp_spi_sw_free(instance->spi);
     return false;
 }
 

+ 0 - 2
applications/external/avr_isp_programmer/lib/driver/avr_isp_spi_sw.c

@@ -18,7 +18,6 @@ struct AvrIspSpiSw {
 AvrIspSpiSw* avr_isp_spi_sw_init(AvrIspSpiSwSpeed speed) {
     AvrIspSpiSw* instance = malloc(sizeof(AvrIspSpiSw));
     instance->speed_wait_time = speed;
-
     instance->miso = AVR_ISP_SPI_SW_MISO;
     instance->mosi = AVR_ISP_SPI_SW_MOSI;
     instance->sck = AVR_ISP_SPI_SW_SCK;
@@ -40,7 +39,6 @@ void avr_isp_spi_sw_free(AvrIspSpiSw* instance) {
     furi_hal_gpio_init(instance->miso, GpioModeAnalog, GpioPullNo, GpioSpeedLow);
     furi_hal_gpio_init(instance->mosi, GpioModeAnalog, GpioPullNo, GpioSpeedLow);
     furi_hal_gpio_init(instance->sck, GpioModeAnalog, GpioPullNo, GpioSpeedLow);
-
     free(instance);
 }
 

+ 0 - 5
applications/external/weather_station/protocols/lacrosse_tx141thbv2.c

@@ -217,11 +217,6 @@ void ws_protocol_decoder_lacrosse_tx141thbv2_feed(void* context, bool level, uin
                  ws_protocol_lacrosse_tx141thbv2_const.te_delta * 2) &&
                 (DURATION_DIFF(duration, ws_protocol_lacrosse_tx141thbv2_const.te_short * 4) <
                  ws_protocol_lacrosse_tx141thbv2_const.te_delta * 2))) {
-                FURI_LOG_E(
-                    "WS",
-                    "%llX %d",
-                    instance->decoder.decode_data,
-                    instance->decoder.decode_count_bit);
                 if((instance->decoder.decode_count_bit ==
                     ws_protocol_lacrosse_tx141thbv2_const.min_count_bit_for_found) ||
                    (instance->decoder.decode_count_bit == LACROSSE_TX141TH_BV2_BIT_COUNT)) {