test sound

This commit is contained in:
2024-10-01 23:58:26 +03:00
parent 839da85dfe
commit dd6e05951b
6 changed files with 390 additions and 17 deletions

View File

@ -33,6 +33,7 @@
#include "RobotFunctions.h"
#include "ShiftReg.h"
#include "UART3_Handler.h"
#include "Sound.h"
/* USER CODE END Includes */
/* Private typedef -----------------------------------------------------------*/
@ -58,6 +59,7 @@ IWDG_HandleTypeDef hiwdg;
TIM_HandleTypeDef htim1;
TIM_HandleTypeDef htim2;
TIM_HandleTypeDef htim3;
TIM_HandleTypeDef htim4;
UART_HandleTypeDef huart3;
DMA_HandleTypeDef hdma_usart3_rx;
@ -96,6 +98,7 @@ static void MX_TIM2_Init(void);
static void MX_TIM3_Init(void);
static void MX_USART3_UART_Init(void);
static void MX_IWDG_Init(void);
static void MX_TIM4_Init(void);
/* USER CODE BEGIN PFP */
/* USER CODE END PFP */
@ -148,6 +151,7 @@ int main(void)
MX_TIM3_Init();
MX_USART3_UART_Init();
MX_IWDG_Init();
MX_TIM4_Init();
/* USER CODE BEGIN 2 */
__HAL_RCC_USART3_CLK_ENABLE();
@ -210,7 +214,7 @@ int main(void)
UART3_Handler();
RobotTick();
forTimer(blinkTimer, 500) {
forTimer(blinkTimer, 1500) {
resetForTimer(blinkTimer);
GPIOC->ODR ^= GPIO_PIN_13;
// unsigned char text[] = "Hello\n";
@ -235,6 +239,11 @@ int main(void)
getStateString(currentInfo.state));
CDC_Transmit_FS((uint8_t*)buffer, strlen(buffer));
Note_t note = sound_create_note(NOTE_C4, DURATION_EIGHTH, 50);
sound_play_note(note, SOUND_CHANNEL_1);
}
/* USER CODE END WHILE */
@ -344,10 +353,10 @@ static void MX_IWDG_Init(void)
hiwdg.Instance = IWDG;
hiwdg.Init.Prescaler = IWDG_PRESCALER_64;
hiwdg.Init.Reload = 625*3;
// if (HAL_IWDG_Init(&hiwdg) != HAL_OK)
// {
// Error_Handler();
// }
if (HAL_IWDG_Init(&hiwdg) != HAL_OK)
{
Error_Handler();
}
/* USER CODE BEGIN IWDG_Init 2 */
/* USER CODE END IWDG_Init 2 */
@ -566,6 +575,59 @@ static void MX_TIM3_Init(void)
}
/**
* @brief TIM4 Initialization Function
* @param None
* @retval None
*/
static void MX_TIM4_Init(void)
{
/* USER CODE BEGIN TIM4_Init 0 */
/* USER CODE END TIM4_Init 0 */
TIM_MasterConfigTypeDef sMasterConfig = {0};
TIM_OC_InitTypeDef sConfigOC = {0};
/* USER CODE BEGIN TIM4_Init 1 */
/* USER CODE END TIM4_Init 1 */
htim4.Instance = TIM4;
htim4.Init.Prescaler = 0;
htim4.Init.CounterMode = TIM_COUNTERMODE_UP;
htim4.Init.Period = 65535;
htim4.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1;
htim4.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_DISABLE;
if (HAL_TIM_PWM_Init(&htim4) != HAL_OK)
{
Error_Handler();
}
sMasterConfig.MasterOutputTrigger = TIM_TRGO_RESET;
sMasterConfig.MasterSlaveMode = TIM_MASTERSLAVEMODE_DISABLE;
if (HAL_TIMEx_MasterConfigSynchronization(&htim4, &sMasterConfig) != HAL_OK)
{
Error_Handler();
}
sConfigOC.OCMode = TIM_OCMODE_PWM1;
sConfigOC.Pulse = 0;
sConfigOC.OCPolarity = TIM_OCPOLARITY_HIGH;
sConfigOC.OCFastMode = TIM_OCFAST_DISABLE;
if (HAL_TIM_PWM_ConfigChannel(&htim4, &sConfigOC, TIM_CHANNEL_3) != HAL_OK)
{
Error_Handler();
}
if (HAL_TIM_PWM_ConfigChannel(&htim4, &sConfigOC, TIM_CHANNEL_4) != HAL_OK)
{
Error_Handler();
}
/* USER CODE BEGIN TIM4_Init 2 */
/* USER CODE END TIM4_Init 2 */
HAL_TIM_MspPostInit(&htim4);
}
/**
* @brief USART3 Initialization Function
* @param None