打印

分享一款最集成的音频编解码芯片 VS1005

[复制链接]
2678|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
huangshuai0795|  楼主 | 2013-4-3 13:53 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

模拟硬件特性                                                      
      ●3通道24位音频ADC。                                         
  ●双24位音频DAC。                                   
  ●30欧立体声耳机驱动器。                           
  ●内置麦克风放大器。                                
  ●RDS立体声调频无线电接收机。                       
  ●10位ADC,3-5个外部输入。                          
  ●单电源操作,内置四个可编程调节器。               

数字硬件特性  
      ●100MIPS VS_DPS4处理器核心。                       
  ●128KB的程序RAM及128KV的数据RAM。                             
  ●受保护的8Mbit FLASH(可选)。                     
  ●USB2.0高速设备/主机(480Mbit/S)。               
  ●I2S和SPDIF数字音频接口。                          
  ●EEC模式的NAND FLASH接口。                        
  ●SD卡接口。                                       
  ●2路SPI总线接口。                                 
  ●10BaseT以太网控制器。                             
  ●UART接口。                                                                           
      ●所有数字引脚均为用户配置通用IO。
      ●灵活的时钟选择,默认12.288MHz下操作。
      ●内置数字逻辑使用的锁相环时钟倍频器。
      ●电池备份存储的实时时钟RTC。
      ●里德-所罗门纠错。   
      ●通过JTAG可以使用VSIDE进行硬件调试。  

固件特性
      ●解码格式:MP3,WMA,OggVorbis,AAC,HE- AAC,FLAC,WAVPCM。                                       
      ●编码格式:MP3,OggVorbis,WAVPCM。
      ●对SD卡和NABD FLASH的文件读写。
      ●FM调谐器和RDS解码器。
      ●USB主、从库。
      ●电阻触摸屏图形显示。
      ●大规模音频信号DSP库。
      ●以太网IP协议栈。
      ●大规模可定制VSIDE
      ●灵活的启动选项。



VS1005概述:


VS1005是目前世界上最集成的音频编解码芯片,是VLSI最新推出的旗航产品。


VS1005是一片灵活的音频平台器件。它基于VS_DSP4构件,这是一个功能强大的DSP(数字信号处理器)核心。在独立应运中,数字接口提供看灵活的外部器件访问。在复杂的音频处理器系统中能灵活地输入输出音频数据。模拟接口提供了高保真的音频输入和输出,例如控制ADC可以作为电阻式触摸屏接口。


VS1005拥有8Mbit(1MByte)VLSI或定制方或第三方定制的嵌入式FLASH储存器。固件和硬件设计上在保护模式下完全禁止访问FLASH储存器。编程后,VS1005可以从嵌入式储存器启动,从而充当一个完全定制的独立音频处理器。




评论
OUJB 2019-6-3 14:55 回复TA
这个芯片是哪个公司的,有没有公司的网址链接 

相关帖子

沙发
huangshuai0795|  楼主 | 2013-4-10 13:50 | 只看该作者
音频编解码芯片vs1063 DATASHEET.pdf (1017.64 KB)
音频编解码芯片vs1053 DATASHEET.pdf (820.16 KB)
音频编解码芯片vs1011 DATASHEET.PDF (484.12 KB)
音频编解码芯片vs1003 DATASHEET.pdf (637.48 KB)


使用特权

评论回复
板凳
huangshuai0795|  楼主 | 2013-5-16 16:11 | 只看该作者
stm32 与VS1003的接口设置
第一点,STM32的端口设置,设置为SCK和MOSI复用推挽,而片选设为推挽输出即可,MISO设为input floating即可。
第二点,因为VS1003控制寄存器是八位数据读写的,所以STM32需要设置发送和接收数据也是八位的。
第三点,根据VS1003的时序关系,需要设置STM32的时钟信号的相位和极性为CPOL为0,CPHA为0。
第四点,NSS模式需要设置软件模式,这样就可以利用另作他用了,可以用GPIO口控制作为片选了。
这里贴一下源码
void  SPI1_Init(void)
{   
     SPI_InitTypeDef SPIStruct_Init;
     SPIStruct_Init.SPI_Direction = SPI_Direction_2Lines_FullDuplex;    //配置SPI为全双工模式
     SPIStruct_Init.SPI_Mode = SPI_Mode_Master;        //配置SPI为主模式
     SPIStruct_Init.SPI_DataSize = SPI_DataSize_8b;    //配置SPI为8位数据传送
     SPIStruct_Init.SPI_CPOL = SPI_CPOL_Low;           //配置CPOL为低
     SPIStruct_Init.SPI_CPHA = SPI_CPHA_1Edge;         //配置CPHA为第一个上升沿
     SPIStruct_Init.SPI_NSS = SPI_NSS_Soft;            //配置NSS为软件控制
     SPIStruct_Init.SPI_BaudRatePrescaler = SPI_BaudRatePrescaler_4;   //配置SPI时钟预分频
     SPIStruct_Init.SPI_FirstBit = SPI_FirstBit_MSB;   //配置传输字节高位在前
     SPIStruct_Init.SPI_CRCPolynomial = 7;             //配置CRC,可不用理
     SPI_Init(SPI1,&SPIStruct_Init);                   //SPI初始化函数   
     SPI_Cmd(SPI1, ENABLE);                            //使能SPI
}
void Mp3WriteRegister(uint8_t addressbyte,uint8_t high,uint8_t low)
{         
Mp3DeselectData();   //释放数据端口
Mp3SelectControl();  //选择控制端口
      
        while(!SPI_I2S_GetFlagStatus(SPI1,SPI_I2S_FLAG_TXE)); //判断发送缓冲器是否为空   
        SPI_I2S_SendData(SPI1,VS_WRITE_COMMAND);    //发送写寄存器命令
            
        while(!SPI_I2S_GetFlagStatus(SPI1,SPI_I2S_FLAG_TXE));
        SPI_I2S_SendData(SPI1, addressbyte);        //发送寄存器的地址
           
        while(!SPI_I2S_GetFlagStatus(SPI1,SPI_I2S_FLAG_TXE));
        SPI_I2S_SendData(SPI1, high);              //发送参数的高八位
      
        while(!SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_TXE));
        SPI_I2S_SendData(SPI1, low);              //发送参数的低八位      
Mp3DeselectControl();
}



/*************************************************************/
/*  函数名称 :  CheckVS1003B_DRQ(void)                             */
/*  函数功能 : 判断DREQ引脚状态                             */
/*-----------------------------------------------------------*/
bool CheckVS1003B_DRQ(void)
{
bool bResult;
bResult =GPIO_ReadInputDataBit(GPIOC,GPIO_Pin_4);
return(bResult);
}

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:VS1003,VLSI技术支持,原厂代理(Q380100225)

3

主题

33

帖子

0

粉丝