[INTERFACE]/USB_FTDI2013.05.04 22:00

VNC1L MP3 EVM - USB Host Test Module (MP3 Player) 보드 제작

 VNC1L MP3 EVM - USB Host Test Module (MP3 Player) 보드 제작

 

 

USB Host 기능을 가진 VNC1L 의 테스트 보드를 새롭게 제작했다. 기존 VNC1L EVM PCB를 모두 소진해서 새로운 형태로 제작 해볼까 하다 VNC1L의 MP3 플레이 기능을 테스트 해보기위해 제작해 보았다.

 

 

 

 

 

VS1053 (VS1033) MP3 모듈을 연결하면 아주 간단하고 USB메모리 스틱을 지원하는 MP3플레이어를 제작할 수 있다.

  

 

 

 

 

 

 

VNC1L MP3 EVM 회로도

 

 

 

 

 

 

 

Posted by nexp
Cortex-M/EFM322013.05.01 20:30

EFM32G210 EVM - SD Card 이용한 MP3 Player Test

EFM32G210 EVM - SD Card 이용한 MP3 Player Test




지금까지 테스트한 코드를 이용하여 EFM32의 좀더 다양한 기능을 테스트 해 보자.

VS1053 MP3 모듈을 이용하여 MP3 Player를 만들어 보면 좋을것 같다.


S-Type EVM 을 테스트 할수 있는 [XMega32-EX] 확장 보드를 이용하면 SD Card가 포함된 VS1053 MP3모듈을 연결할 수 있다.

오디오 출력은 15W 출력 Class-D AMP(TPA3110)모듈을 이용하여 음질이 좋다.



테스트 결과 SD Card의 MP3파일 출력시 35mA 소비된다. 확실히 다른 Cortex-M3 코어 제품보다 적게 소비하는것 같다.



EFM32 MP3 Player 테스트 동영상

SD Card의 MP3파일을 순차적으로 출력하고 EFM32G210 EVM보드에 연결된 스위치를 누르면 다음곡을 선택할수 있도록 했다.  TFT-LCD에 플레이되는 곡목록을 출력한다. 추가적으로 VR을 이용하여 볼륨을 조절하고 좀더 소형화 하면 MP3플레이어가 될수 있다.



Posted by nexp
[MODULE]/MP32012.07.01 23:00

[VNC1L] USB Memory MP3 Player 테스트

[VNC1L] USB Memory MP3 Player 테스트

 

 

 

USB Host 기능이 있는 VNC1L 모듈 VS1033 모듈을 이용하여 USB Memory Stick MP3 Player을 제작했다.

FTDI에서 제공하는 기본 펌웨어중 VMSC1FUL를 이용하면 USB 메모리스틱을 지원하는 MP3모듈을 쉽게 제작할 수 있다.

 

 

 

VNC1L 모듈 핀맵 회로도

 


 

 

 

VS1033 모듈 핀맵

XDCS 핀은 GND처리 해 주면 된다.

 

 

테스트는 USB2UART 모듈을 이용해 터미넝창에서 명령어를 보내면 mp3파일을 출력할 수 있다.

조그만 마이컴을 이용하여 시리얼 포트로 제어명령을 보내도 원하는 동작을 구현할 수 있다.

 

아래는 간단히 mp3을 플레이 하는 예제이고 시리얼 포트로 출력 되는 메세지이다.

 

Ver 03.68-123VMSC1F On-Line:
Device Detected P2
No Upgrade
D:\>
D:\>
Playing YOUN-S.MP3

 

 

T $00 $00
T $01 $00
T $02 $00
T $03 $00
T $04 $00
T $05 $00
T $06 $00
Stopped
D:\>
Playing YOUN-S.MP3

 

 

VMSC(VMUSIC) 명령어
 - Play  File* (VPF)
 - Stop (VST)
 - Play  All  Tracks (V3A  /VRA)
 - Skip  Forward (VSF)
 - Skip Back (VSB)
 - Set  Volume* (VSV)

 

 

 


 

Posted by nexp
[AVR]/AT90USB2012.01.30 00:06

[ AT90USB1287-EX] MP3(VS1033) 모듈 테스트

[ AT90USB1287-EX] MP3(VS1033) 모듈 테스트




[AT90USB1287-EX] 보드는 VS1033 MP3모듈 을 연결할 수 있어 USB메모리 스틱의 MP3파일을 출력하거나 이더넷을 이용하여 인터넷 라디오 등을 제작할 수 있다.




[AT90USB1287-EX] VS1033 MP3모듈 드라이버 소스코드
//-----------------------------------------------------------------------------
#define VS_DREQ_BIT      BIT6
#define VS_DREQ_PORT     PORTD

#define VS_CS_BIT      BIT4
#define VS_CS_PORT      PORTD

#define VS_XDCS_BIT      BIT5
#define VS_XDCS_PORT     PORTD

#define VS_RST_BIT      BIT7
#define VS_RST_PORT      PORTD


#define VS1003_CS_H()      Sbi(VS_CS_PORT, VS_CS_BIT)
#define VS1003_CS_L()      Cbi(VS_CS_PORT, VS_CS_BIT)

#define vs1003_enable()      VS1003_CS_L()
#define vs1003_disable()     VS1003_CS_H()


#define VS1003_XDCS_H()      Sbi(VS_XDCS_PORT, VS_XDCS_BIT)
#define VS1003_XDCS_L()      Cbi(VS_XDCS_PORT, VS_XDCS_BIT)


#define VS1003_RESET_H()     Sbi(VS_RST_PORT, VS_RST_BIT)
#define VS1003_RESET_L()     Cbi(VS_RST_PORT, VS_RST_BIT)

#define IsVs1003DataReady()     (PIND&VS_DREQ_BIT)

#define VS_SendByte       SPI0_WriteReadByte
#define VS_InitSpi()      SPI0_Init()
#define VS_SpiSpeed_Low()        SPI0_SetSpeed(SPI_SPEED_1MHZ)
#define VS_SpiSpeed_High()     SPI0_SetSpeed(SPI_SPEED_4MHZ)

#define MP3_PORT_INIT()         Sbi(DDRD, (BIT4|BIT5|BIT7));\
           Sbi(PORTD, BIT6);Cbi(DDRD, BIT6);\
              VS1003_CS_H();VS1003_XDCS_H()


Posted by nexp
[Microchip]/dsPIC2011.12.04 22:45

[dsPIC EVM] MP3 Module (VS1033) 테스트

[dsPIC EVM] MP3 Module (VS1033) 테스트



[NET EVM] 보드를 이용하면 W5100과 같은 이더넷 모듈이나 TFT LCD 모듈을 연결하여 테스트 할수 있고 VS1033과 같은 MP3 모듈을 연결하여 네트웍 라디오를 테스트 해 볼 수 있다.





ADC0 -> RB0



dsPIC33 MP3모듈 HAL Driver 코드
//-----------------------------------------------------------------------------
// VS1033 모듈 HAL
#define VS_DREQ_BIT      BIT6
#define VS_DREQ_PORT     PORTB

#define VS_CS_BIT      BIT4
#define VS_CS_PORT      PORTB

#define VS_XDCS_BIT      BIT5
#define VS_XDCS_PORT     PORTB

#define VS_RST_BIT      BIT3
#define VS_RST_PORT      PORTB

#define VS1003_CS_H()      Sbi(VS_CS_PORT, VS_CS_BIT)
#define VS1003_CS_L()      Cbi(VS_CS_PORT, VS_CS_BIT)

#define vs1003_enable()      VS1003_CS_L()
#define vs1003_disable()     VS1003_CS_H()

#define VS1003_XDCS_H()      Sbi(VS_XDCS_PORT, VS_XDCS_BIT)
#define VS1003_XDCS_L()      Cbi(VS_XDCS_PORT, VS_XDCS_BIT)


#define VS1003_RESET_H()     //Sbi(VS_RST_PORT, VS_RST_BIT)
#define VS1003_RESET_L()     //Cbi(VS_RST_PORT, VS_RST_BIT)

#define IsVs1003DataReady()     (GPIOA->IDR&VS_DREQ_BIT)

#define VS_SendByte       SPI1_WriteReadByte
#define VS_InitSpi()      SPI1_Init()
#define VS_SpiSpeed_Low()        SPI1_SetSpeed(SPI_SPEED_1MHZ)
#define VS_SpiSpeed_High()     SPI1_SetSpeed(SPI_SPEED_4MHZ)


#define MP3_PORT_INIT()      Cbi(TRISB, BIT3|BIT4|BIT5);Sbi(TRISB, BIT6);\
                                         VS1003_CS_H();VS1003_XDCS_H();VS1003_RESET_H()
//-----------------------------------------------------------------------------



dsPIC33 SD Card HAL Driver 코드
#define _SPI1_ENABLE    1

//-----------------------------------------------------------------------------
// SD Card HAL
#define _DEBUG_FAT_FILE                 1

#define MMC_CS_PORT      LATB
#define MMC_CS_BIT      BIT7

#define MMC_CS_INIT()     TRISB=0;MMC_CS_HIGH();

#define MMC_CS_HIGH()     Sbi(MMC_CS_PORT, MMC_CS_BIT)
#define MMC_CS_LOW()     Cbi(MMC_CS_PORT, MMC_CS_BIT)
#define MMC_ASSERT_INIT()    MMC_CS_INIT();MMC_CS_HIGH()
#define MMC_ASSERT()     MMC_CS_LOW()
#define MMC_DEASSERT()     MMC_CS_HIGH()


#define MMC_SpiInit()     SPI1_Init()
#define MMC_SendByte     SPI1_WriteReadByte
#define MMC_Send(Data)      SPI1_WriteByte(Data)
#define MMC_Recv()      SPI1_WriteReadByte(0xFF)
#define MMC_RecvP(Data)     MMC_Send(0xFF); (*(Data)=SPI1_ReadByte())
#define MMC_SPISpeed     SPI1_SetSpeed

#define SPI_Mode3()

#define FAT_MAX_NUM_FILE          50

#define FCLK_SLOW()             MMC_SPISpeed(SPI_SPEED_1MHZ) 
#define FCLK_FAST()             MMC_SPISpeed(SPI_SPEED_MAX)
//-----------------------------------------------------------------------------
Posted by nexp