VS1003 문서를 보면 몇가지 자체적으로 시험을 해 볼수 있는 기능을 제공하는것을 알 수 있다.이번 글에서는 그중에서 Sine파를 생성 시켜 보는 방법에 대해서 설명하도록 하겠다.테스트 모드로 전환하기 위해서 SCI_MODE 레지스터에 있는 SM_TESTS비트를 1로 만든다. 이 상태에서 SDI 버스로 특정 데이터를 내 보내면 미리 설정된 시험 동작을 수행하게 된다.Sine파를 생성하기 위한 데이터는 0x53 0xEF 0x6E n 0 0 0 0 이다. 여기에서 n은 다음과 같은 표를 참조하여 설정하면 된다.n 바이트 값의 상위 3비트에 해당되는 FsIdx값에 따라 Fs값이 결정된다. 이 값에 n 값의 하위 5비트 값을 곱한다음 128로 나누면 그 값에 해당되는 주파수를 가지는 sine 파가 발생하게 된..
회로를 구성한 후 첫번째로 해야할 일은 vs1003안에 있는 control register를 제대로 읽어오는지 확인해 보는 것이다.먼저, SPI를 비롯하여 vs1003과 연결된 GPIO 핀 설정부터 한다. #define VS1003_RESET GPIO_PIN1 #define VS1003_DREQ GPIO_PIN2 #define VS1003_DCS GPIO_PIN3 #define VS1003_CCS GPIO_PIN4 #define VS1003_SCK GPIO_PIN5 #define VS1003_MISO GPIO_PIN6 #define VS1003_MOSI GPIO_PIN7 static inline void vs1003_enable_ccs(void) { gpio_out_reset(GPIO_PORT_A, VS..
이번 프로젝트에서는 임베디드 시스템에서 MP3 파일을 재생하기 위한 vs1003 칩을 다루어보도록 하겠다.VS1003 칩 제조사 홈페이지에 들어가보면 datasheet 문서와 참고 자료를 다운 받을 수 있으므로, 관련 자료를 다운 받은 후 어떤 내용이 있는지 충분히 이해되도록 여러번 반복해서 읽어 본다.Datasheet 첫번째 페이지에 vs1003의 내부에 어떤것들이 들어있는지와 칩 외부로 나오는 핀들에 대한 설명을 한눈에 볼 수 있는 블럭도가 있다. Datasheet에 보면 reference schematic이 제공되므로 직접 하드웨어를 만들수도 있겠지만, 편의상 비교적 저렴한 가격에 구입할 수 있는 상용 제품을 이용하여 프로젝트를 진행하도록 하겠다.이 프로젝트에서 사용하게 될 모듈은 다음과 같은 제품..