Sanjay Govind 10 месяцев назад
Родитель
Сommit
c0f04ab457
2 измененных файлов с 6 добавлено и 7 удалено
  1. 1 1
      audio/wav_player_hal.c
  2. 5 6
      virtual_portal.c

+ 1 - 1
audio/wav_player_hal.c

@@ -45,7 +45,7 @@ void wav_player_speaker_init(uint32_t sample_rate) {
     //LL_TIM_OC_InitTypeDef TIM_OC_InitStruct = {0};
     TIM_OC_InitStruct.OCMode = LL_TIM_OCMODE_PWM1;
     TIM_OC_InitStruct.OCState = LL_TIM_OCSTATE_ENABLE;
-    TIM_OC_InitStruct.CompareValue = 127;
+    TIM_OC_InitStruct.CompareValue = 0;
     LL_TIM_OC_Init(SAMPLE_RATE_TIMER, FURI_HAL_SPEAKER_CHANNEL, &TIM_OC_InitStruct);
 
     //=========================================================

+ 5 - 6
virtual_portal.c

@@ -404,14 +404,13 @@ int virtual_portal_send_status(VirtualPortal* virtual_portal, uint8_t* response)
 int virtual_portal_m(VirtualPortal* virtual_portal, uint8_t* message, uint8_t* response) {
     // Activate speaker for any non-zero value in the range 01-FF
     virtual_portal->speaker = (message[1] != 0);
-    virtual_portal->count = 0;
-    virtual_portal->head = virtual_portal->tail = virtual_portal->current_audio_buffer;
-    virtual_portal->playing_audio = false;
     if (virtual_portal->speaker) {
-        wav_player_dma_start();
-    } else {
+        virtual_portal->count = 0;
+        virtual_portal->head = virtual_portal->tail = virtual_portal->current_audio_buffer;
+        virtual_portal->playing_audio = false;
         wav_player_dma_stop();
-    }
+        wav_player_dma_start();
+    } 
     /*
     char display[33] = {0};
     for(size_t i = 0; i < BLOCK_SIZE; i++) {