HS-F33-L 오디오 앰프 모듈

HS-F33-L 오디오 앰프 모듈

1、소개

오디오 앰프 모듈은 오디오 신호 전력을 강화하는 전자 모듈로, 마이크나 플레이어에서 나오는 약한 오디오 전기 신호를 확대하여 신호의 전압과 전류를 증가시켜 더 크고 명확한 소리를 만들 수 있습니다. 대역폭이 넓은 오디오 신호가 모듈에서 출력되어 스피커 등의 부하 장치에 연결되어 부하가 소리를 내도록 만듭니다.주의: UNO 개발 보드 성능이 부족하여 이 모듈을 구동할 수 없습니다.

2、시뮬레이션 그래프

3、모듈 매개변수

핀 이름

설명

G

GND(전원 입력 부정极)

V

VCC(전원 입력 정극)

LRCLK

좌우 클록 핀

BCLK

비 클록 핀

DIN

데이터 입력 핀

  • 공급 전압: 3.3-5V

  • 연결 방식: PH2.0 4P 핀 라인

  • 설치 방법: 블록 고정

4、회로판 크기

5、Arduino 라이브러리 추가

라이브러리를 사용하지 못하는 참고 여기:라이브러리 설치 사용 방법

라이브러리 다운로드:다운로드 클릭

Arduino 라이브러리 파일을 다운로드한 후 데스크톱에 압축해제한 후, Arduino의 libraries 폴더에 넣으세요.

6、한국어로 MicroPython 환경 라이브러리 파일 추가

또는 라이브러리를 설치하지 못하면 여기를 클릭하세요: 참조 링크

7、아두이노 IDE 예제 프로그램

ESP32 개발판 예제 프로그램: 다운로드 클릭

#define SAMPLE_RATE (44100)
#define I2S_MIC_WS (12)
#define I2S_MIC_SD (14)
#define I2S_MIC_BCK (13)
#define I2S_PORT_0 (I2S_NUM_0)
#define bufferLen (1024)
#define SAMPLE_RATE (44100)
#define bufferLen (1024)
#define I2S_SPK_DIN (25)
#define I2S_SPK_BCLK (27)
#define I2S_SPK_LRCLK (26)
#define I2S_PORT_1 (I2S_NUM_1)
#include "Arduino.h"
#include "driver/i2s.h"
#include "Arduino.h"
#include "driver/i2s.h"

int16_t sBuffer_RX[bufferLen];
size_t bytesIn = 0;
int16_t sBuffer_TX[bufferLen*2];
size_t bytesOut = 0;

void I2s_Mic_Init()
 {
   i2s_config_t i2s_config_RX{};
   i2s_config_RX.mode = (i2s_mode_t)(I2S_MODE_MASTER | I2S_MODE_RX);
   i2s_config_RX.sample_rate = SAMPLE_RATE;
   i2s_config_RX.bits_per_sample = I2S_BITS_PER_SAMPLE_16BIT;
   i2s_config_RX.channel_format = I2S_CHANNEL_FMT_ONLY_LEFT;
   i2s_config_RX.communication_format = (i2s_comm_format_t)(I2S_COMM_FORMAT_I2S | I2S_COMM_FORMAT_I2S_MSB);
   i2s_config_RX.intr_alloc_flags = ESP_INTR_FLAG_LEVEL1;
   i2s_config_RX.dma_buf_count = 8;
   i2s_config_RX.dma_buf_len = bufferLen;
   i2s_config_RX.use_apll = false;
   i2s_driver_install(I2S_PORT_0, &i2s_config_RX, 0, NULL);
   i2s_pin_config_t pin_config_RX{};
   pin_config_RX.mck_io_num = I2S_PIN_NO_CHANGE;
   pin_config_RX.bck_io_num = I2S_MIC_BCK;
   pin_config_RX.ws_io_num = I2S_MIC_WS;
   pin_config_RX.data_out_num = I2S_PIN_NO_CHANGE;
   pin_config_RX.data_in_num = I2S_MIC_SD;
   i2s_set_pin(I2S_PORT_0, &pin_config_RX);
   i2s_start(I2S_PORT_0);
 }
int16_t* Mic_Value()
 {
   i2s_read(I2S_PORT_0, sBuffer_RX, sizeof(sBuffer_RX), &bytesIn, portMAX_DELAY);
   for (int i = 0; i < bufferLen; i++)
   {
     sBuffer_RX[i] = sBuffer_RX[i]*2;
     if (sBuffer_RX[i] > (32767))
       sBuffer_RX[i] = (32767);
     else if (sBuffer_RX[i] < (-32768))
       sBuffer_RX[i] = (-32768);
   }
   return sBuffer_RX;
 }
void I2s_Spk_Init()
 {
   i2s_config_t i2s_config_TX{};
   i2s_config_TX.mode = (i2s_mode_t)(I2S_MODE_MASTER | I2S_MODE_TX);
   i2s_config_TX.sample_rate = SAMPLE_RATE;
   i2s_config_TX.bits_per_sample = I2S_BITS_PER_SAMPLE_16BIT;
   i2s_config_TX.channel_format = I2S_CHANNEL_FMT_RIGHT_LEFT;
   i2s_config_TX.communication_format = (i2s_comm_format_t)(I2S_COMM_FORMAT_I2S | I2S_COMM_FORMAT_I2S_MSB);
   i2s_config_TX.intr_alloc_flags = ESP_INTR_FLAG_LEVEL1;
   i2s_config_TX.dma_buf_count = 8;
   i2s_config_TX.dma_buf_len = bufferLen;
   i2s_config_TX.use_apll = false;
   i2s_driver_install(I2S_PORT_1, &i2s_config_TX, 0, NULL);
   i2s_pin_config_t pin_config_TX{};
   pin_config_TX.mck_io_num = I2S_PIN_NO_CHANGE;
   pin_config_TX.bck_io_num = I2S_SPK_BCLK;
   pin_config_TX.ws_io_num = I2S_SPK_LRCLK;
   pin_config_TX.data_out_num = I2S_SPK_DIN;
   pin_config_TX.data_in_num = I2S_PIN_NO_CHANGE;
   i2s_set_pin(I2S_PORT_1, &pin_config_TX);
   i2s_start(I2S_PORT_1);
 }
void Spk_Value(int16_t* sBuffer_RX)
 {
   for (int i = 0; i < bufferLen; i++)
   {
     sBuffer_TX[i*2] = sBuffer_RX[i];
     sBuffer_TX[i*2+1] = sBuffer_RX[i];
   }
   i2s_write(I2S_PORT_1, sBuffer_TX, sizeof(sBuffer_TX), &bytesOut, portMAX_DELAY);
 }

void setup(){
  I2s_Mic_Init();
  I2s_Spk_Init();
}

void loop(){
  Spk_Value(Mic_Value());
}

ESP32-S3 개발판 예제 프로그램: 다운로드 클릭

8、미스키 Mixly 예제 프로그램(그래픽 언어)

미시기 Mixly 라이브러리(ESP32 보드-C 언어 버전):다운로드 클릭

예제 프로그램(ESP32 보드-C 언어 버전):다운로드 클릭

미시치 Mixly 라이브러리 파일(ESP32-S3 개발판-C 언어 버전):다운로드 클릭

예제 프로그램(ESP32-S3 개발보드-C 언어 버전):다운로드 누르세요

9、테스트 환경 구축

Arduino ESP32 테스트 환경 구축

부품 준비:“

  • ESP32 개발보드 *1

  • ESP32 EXP1 확장 보드 *1

  • USB type-c 데이터 케이블 *1

  • HS-S05C-L 전방 마이크 모듈*1

  • HS-F33-L 오디오 앰프 모듈*1

  • PH2.0 5P PH2.0 단자에서 도빈선으로 변환 *2

전기 연결도):

ESP32 Python 테스트 환경 구축

10、비디오 강의

Arduino UNO 비디오 강의:시각화 클릭

ESP32 Python 비디오 강의:

11、테스트 결과

Arduino UNO 테스트 결과:

모든 방향을 향해 음성을 수집하고, 오디오를 확대하고, 음성을 재생할 수 있는 완전한 오디오 패스를 제공할 수 있는 전향형 마이크 모듈을 찾았습니다.