MP3 플레이어 쉴드 퀵 스타트 가이드

MP3 플레이어 쉴드 퀵 스타트 가이드

MP3 플레이어 쉴드 MP3를 디코딩하고 임베디드 디지털 오디오와 작업할 수 있게 하는 훌륭한 제품으로 이 쉴드를 이용하여 수분내에 MP3를 디코딩하고 플레이 할 수 있습니다.

준비사항:

  1. MP3플레이어 쉴드
  2. 아두이노 UNO
  3. microSD카드
  4. MP3파일(192kbs로 인코딩된 파일)
  5. 헤드폰이나 스피커

제품 사용하여 보기

조립:

먼저 쉴드를 사용하기 위해 쉴드의 헤더를 납땜합니다. 납땜시에는 아래의 사진과 같이 핀은 아두이노에 꼽아 넣은 다음 납땜을 하는 것이 핀을 올바르게 정렬하여 납땜하는데 도움이 됩니다.

쉴드의 헤더가 납땜된 모습입니다.

납땜이 끝난 쉴드를 아두이노에 연결합니다.

MP3 File/SD Card 준비:

연주할 MP3 파일을 준비합니다. mp3파일이 192kbps로 인코딩되어 있는지 확인합니다. 파일 선택후 마우스 오른쪽 버튼을 눌러 속성창을 확인하면 관련 정보를 확인 할 수 있습니다. 인코딩 레이트가 다르면 본 예제에서 올바르게 재생이 되지 않을 수 있습니다.

파일이 준비되면 SD카드로 복사합니다. 파일이름을 track001.mp3로 변경합니다. 아두이노가 SD카드에서 이 파일명을 찾게 될 것입니다.

펌웨어:

자 이제 코드를 살펴볼까요. mp3플레이어를 작동시키기 위해 아래의 두가지가 필요합니다.

sdfatlib를 다운받은 후 압축을 풀고 Arduion->libraries폴더에 위치시킵니다. MP3 Player example은 스케치북에 위치시킵니다.

MP3 Player 예제코드를 동작시키기 전에 sdfatlib를 약간 조정해주어야 합니다. 라이브러리는 기본으로 ATmega328 CS핀을 사용하는데 여기서는 맞지 않기 때문에 다음의 파일을 열어,

.../arduino-0022/libraries/SdFat/Sd2PinMap.h

아래의 라인을 찾아

uint8_t const SS_PIN = 10;

아래의 라인처럼 바꾸어 줍니다.

uint8_t const SS_PIN = 9;

이렇게 바꾸면 프로그램이 동작될 준비가 되었습니다. 아두이노를 연결하고 mp3 player 예제코드를 업로드합니다. 업로드가 끝나면 연주되는 음악을 들을 수 있을 것입니다.

어떻게 동작하나?

MP3포맷은 인코딩된 음악 파일입니다. VS1053칩은 MP3를 디코딩하고 디코딩된 것을 전압으로 변환할 수 있습니다. 이 전압은 헤드폰으로 보내지게 됩니다. 아두이노는 전송을 제어합니다. 아두이노는 MP3를 VS1053에 한번에 32바이트씩 보냅니다. VS1053이 버퍼에 있는 32바이트를 디코딩 완료하면, 칩의 DREQ핀을 HIGH상태로 만들어 추가 데이터를 요청합니다. 그러면 아두이노는 추가 데이터를 보내야하는 것을 알게 됩니다. 예제코드를 천천히 읽어 보면 전체적인 동작에 대한 흐름을 익힐 수 있습니다.

제품정보: http://vctec.co.kr/front/php/product.php?product_no=803&main_cate_no=&display_group=

가치창조기술



Comments