I2S на микроконтроллере STM32F446ZE для проверки (тестирования) микросеми ZL38063 - PullRequest
0 голосов
/ 03 января 2019

Здесь я пытаюсь сгенерировать простой пример синусоидальной волны для прохождения через I2S и просто отправить данные на ZL38063 (ведомый), используя STM32F446ZE.Часы работают нормально при 1,5 МГц и WS при 48 КГц, а также получают данные ШИМ на линии SD.Я не могу слышать никаких звуков на динамике, связанном с ZL38063.Здесь я не могу отлаживать дальше.PS ниже простой код c

 HAL_Init();

  SystemClock_Config();
  MX_GPIO_Init();
  MX_I2S2_Init();
  MX_SPI1_Init();
  MX_DAC_Init();
  MX_UART5_Init();
  MX_ADC1_Init();
  MX_I2C1_Init();
  MX_SDIO_SD_Init();
  MX_FATFS_Init();

HAL_I2S_Init(&hi2s2);
  uint16_t test = 0;

        int index = 0;

        bool channel = false;
      while(1) {

        if (HAL_I2S_GetState(&hi2s2) == HAL_I2S_STATE_READY)
            {
                hal_res = 
                     HAL_I2S_Transmit(&hi2s2,&SINE_TABLE[index],256,50);

                channel = !channel;
                if (channel)
                {
                    index++;
                    index = index % 256;
                }

            }
        else
        {
            test = 5;
        }
      }
...