基于SPI协议的音频解码芯片VS1003的读写机制及实现方法.pdf
《基于SPI协议的音频解码芯片VS1003的读写机制及实现方法.pdf》由会员分享,可在线阅读,更多相关《基于SPI协议的音频解码芯片VS1003的读写机制及实现方法.pdf(5页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第2 1 卷 第2 期 2 0 1 1 年6 月 洛阳理工学 院学报(自然科学版)J o u r n a l o f L u o y a n g I n s t i t u t e o f S c i e n c e a n d T e c h n o l o g y a t u r a l S c i e n c e E d i t i o n)VO 1 2 l No 2 J u n 2 0 1 1 基于S P I 协议的音频解码芯片VS 1 0 0 3 的读写机制及实现方法 李媛,吕 广申 ,李笛(1 商丘师范学院物理与信息工程系,河南 商丘 4 7 6 0 0 0;2 河南有线电视网络集
2、团 有限公司洛阳 分公司,河南 洛阳4 7 1 0 0 0)摘要:介绍了一种基于s P l 协议的音频解码芯片V S 1 0 0 3,详细介绍TVS 1 0 0 3 芯片的读写机制,并给出了VS 1 0 0 3 与单片机I L P c 2 l 3 l 的接 口电路图,重点介绍了如何采用V s l o 0 3 的s c I 和s DI 实现与L P c 2 1 3 l 通信的软件流程图。关键词:VS 1 0 0 3;S P I;L P C 2 1 3 1;S CI;S D I D Oh1 0 3 9 6 9 0 i s s n 1 6 7 4 5 0 4 3 2 0 1 1 0 2 0 1 5
3、中图分类号:T P 3 3 4 2 文献 标志码:A 文章编号:1 6 7 4 5 0 4 3(2 0 1 1)0 2 0 0 5 6-0 4 随着电子消费产 品的快速发展,音频播放器在各种场合的需求也 日益增长,随之而呈现的音频播放 器 的设计方案也越来越 多,其 中主要的设计方案有3 种:自身集成有解码模 块的控$1J MC U专用芯片、D S P 软件解码和主控MCU J J I 上一个专用 的解码芯片。基于成本、音质和功耗的综合考虑,采用一种 基 于S P I 协议的解码芯片VS 1 0 0 3 来实现音频解码功能,处理器选用AR M处理器L P C2 1 3 1 作为控制MC u,存
4、储介质选用S D卡来实现音频播放功 能。本设计的音频播放过程是L P C2 1 3 1 通过S P I I 接 口将音频数据 从S D卡中读出,然后再通过S P 1 0 接 口传送至V S 1 0 0 3 进行解码播放,在此V S 1 0 0 3 解码模块单独使用一个 S P I 接 口,以减少干扰和噪音,提高音质。在此研究基于L P C2 1 3 1 1 2 处理器的S P I 接 口,以实现VS 1 0 0 3 的驱动。1 V S 1 0 0 3 芯片功能简介 V S 1 0 0 3 p 是芬兰VL S I 公司生产的一款单芯片的MP 3 WMA MI D I 音频解码芯片,内部包含一个高
5、性 能、低功耗的DS P 处理器核VS D S P,一个工作数据 内存,一片可供用户使用的5 5 k B 的R A M,一个 串行 的S P I 总线接 口,一个高质量的采样频率可调的过采样D AC以及一个 1 6 位 的过采样A D C。VS 1 0 0 3 的内部 结构框图如图l 所示。图1 V S 1 0 0 3 的内部结构框图 s D 叮如 口 s I C v 廿 o s L K R X 江 T x E T 0 口 -1 r 口 R 田 A V D O 茹C B s Y N E L 盱可 X T i 外l叫t R IG H T X 1 2 V C O H 1 6P l D D G P
6、I D 1 U N E B G R O 2 0 已K G 吐,S n A T A P C P T E 5 T A B N D 收稿日期:2 0 1 1-02 2 3 作者简介:李-b (1 9 8 3 一),女,河南宜阳 人,硕士,助教,主要从事嵌入式技术方面的 研究。第2 期 李媛等 基于S P I 协议的音频解码芯片V S 1 0 0 3 的读写机制及实现方法 5 7 V S 1 0 0 3 的功能特性包括:1)解码 支持 MP E G1 和MP E G2 音 频第 三 层,支 持 CB R、VB R、AB R,MP 3+V,W M A,W AV,M I DI,S P M J DI;2)串
7、行控制接 口和 串行数据接 口;3)支持重音和倍频控制;4)内部时钟倍频器,且模拟部分、数字部 分和I O部分各部分单独操作电压。2 V S 1 0 0 3 的读写机制 V S 1 0 0 3 通过S P I 串行总线与主机进行数 据和 控制信息的交换,并且VS 1 0 0 3 的S P I 总线有两种 功 能特性:串行控制接 口(S C 1)和 串行数据接 口 (S DI)。V S 1 0 0 3芯片主要通过S C I 和S D 1 分别来 接收主机传送过来 的控制命令和音频数据。S CI 的数据传输长度固定为1 6 位,通过对S C!接 口的 1 6 个l 6 位寄存器进行读写操作来控,v
8、 s l 0 0 3;S DI 接口主要用来传输压缩的音频数据。V S 1 0 0 3的 S P I 接 口有 两 种 工 作 模 式:V S 1 0 0 1 兼容模式和 V S 1 0 0 2新模式 4】。为方便数 据 传 输,本 系 统 采 用 VS 1 0 0 2 新 模 式 且 S M S D I S H A RE 为0 的设置,故VS 1 0 0 3 的控制信号和 数据信号的传送分别 由XC S 和 X DCS 作为同步信 号。图2 和图3 分别描述 了S C I 读和写的命令工作“一一一 l 0 l 4 S 6 9 l n l 2 l 4 S 6 l,3 0 3 l 门 疆 门订
9、n几 nn nn n n n !6 I 二=薄 、p 甄 一 髫 0 !卫生 旦 卫)。C=X=)(三 图2 V S 1 0 0 3 的s c I 读命令工作时序图 、0 j 3 4 S 7 薄 9 1 0 l l l 2 i 3f t 6l 7 ,0 3 I j Vl f 1 f 1 1 门 门门门 n 以门 !003 二=:二)c(三 二 一 I 藉莓 i 一 ;藁 荔 。I _ 鹱 舔舔 0 0 0 0 0 o 00 0 B#O a 0 口0 0峨 一 r 一一一。一 一 0 抗行l 图3 V S 1 0 0 3 的S C I 写命令工作时序图 l 弋 一 s p 匿 陋鳓 D(薯 L
10、几 :几 ,丌丌 门 ,_ 1 :。_ ,门 n,图4 V S 1 0 0 3 的S D I 工作时序图 时序,由图所示S C I 命令 以XCS 作为同步信号,S C I 协议包括一个控制指令字节,1 个地址字节和1 个1 6 位 数据字,每次读或写控制可以操作一个寄存器,读命令和写命令控制指令固定为0 x 0 3 和0 x 0 2,VS 1 0 0 3 的 内部寄存器地址范围0 x 0 0 0 x 0 F,1 6 位数据字则是写入指定寄存器的数值或从指定寄存器读出的数值;图4 描述 了S D I T作时序,它 以XD CS 作为同步信号,随着时钟 的变化,根据S CI MOD E寄存器的设
11、置来判断 数据是先从高位还是低位送 出。作为从机工作模式,VS 1 0 0 3 通过一个信号线DRE O指示是否允许主机传送数据,当D RE Q为高 电平 时,VS 1 0 0 3 可 以接收至少3 2 字节的S D I 数据或者一个S C I 命令,反之,如果D RE Q为低,必须停止传送数 据给VS 1 0 0 3。所以V S 1 0 0 3 在接收数据期问,必须不断检测D RE O信号线的状态。3 V S 1 0 0 3 与L P C 2 1 3 1 的接口电路 V S 1 0 0 3 使用同步 串行总线S P!通信,而L P C 2 1 3 1 内部集成有S P I 总线控制器,在此使
12、用L P C 2 1 3 1 内部 的S P 1 0 实现与VS 1 0 0 3 的通信,故将VS 1 0 0 3 的S O、S I、S C L K直接与LP C2 1 3 1 的S P 1 0 控制引脚连接即可,其余4 条控制线X CS、XR E S E T、XD CS、D R E Q分别与L P C2 1 3 1 的P 0 口的4 个通用I O口连接便可实现 L P C 2 1 3 l 对解码芯片的控制。其接 口电路 如图5 所示。4 软件设计 4 1 S P I 初始化 由于V S 1 0 0 3 与L P C 2 1 3 1 在通信时是从机模式,故单片机L P C2 1 3 1 的S
13、P I 模式设置为主机模式,需要对 S P i 接 口进行初始化,其初始化函数 由v o i d S o i l n i t(v o i d)实现,其操作流程 图如 图6 所示。耐 洛 阳理工学 院学报(自然科学版)第2 1 卷 4 2 V S 1 0 0 3 的初始化 为了使VS 1 0 0 3 正常工作,必须对V S 1 0 0 3 的内部寄存器进行正确设置。VS I O 0 3 的初始化流程图如 图7 所示。VS 1 0 0 3 的初始化函数 由v o i d I n i t VS 1 0 0 3(v o i d)实现,该函数主要完成对VS 1 0 0 3 的功能控制,如软 复位、时钟、
14、采样率、音量控制、重音设置等,均是通过S C I 写入到V S I O 0 3 的特定寄存器来实现的。由于 VS I O 0 3 内部寄存器被配置完成后,对等待周期的时间要求 比较精确,必须精确 lJ ms 级,故本系统使用定 时器T i me r 0 中断来实现ms 级定时功能。VS 1 0 0 3 初始化过程 中设置寄存器的函数 由v o i d Wr i t e Re i s t e r(u n s i g n e d c h a r a d d r e s s b y t e,u n s i g n e d c h a r h i h b y t e,u n s i g n e d c
15、 h a r I o wb y t e)实现,其软 件流程 图如图8 所示。读 出VS 1 0 0 3 寄存器 中存储数 据 的 函 数 由 u n s i g n e d i n t Re a d Re g i s t e r(u n s i g n e d c h a r a d d r e s s b y t e)实现,其软件流程 图如图9 所示。4 3 VS 1 0 0 3 的测试 为确保VS 1 0 0 3 够准确接收数据,本系统采用 以下5 种测试方式来测试VS 1 0 0 3 是否可 以正确接收 数据。1)检查VS I O 0 3 的供 电电压是否正常。l 初始化S P 1 接口
16、 I配置控制引脚x cs X D CS、l X R E S E T、D R E Q 硬件复位vS l 0 0 3 设置寄 存器s P l 一 I O D E=0 x 0 4,I 软件复位V S 1 0 0 3 I 延时并等待D RE Q为高 J 设置V S 1 0 0 3 的时钟、采样率、立体声效果、重音及音量控制 寄存器 I 向V S 1 0 0 3 发送4 字节无效数 据,启动S P 1 传输 一8 0 l()v D D 里 o 6 s l 一P 0 ASC L K2 8一 一 P O;1 2 X CS 3 i T X 一 嚣 基 西 1)(凳 A VD D l o i G T D (=N
17、 p HA(S 鞋致嚣 O 图5 VS 1 0 0 3 与L P C 2 1 3 1 的接口电 l I拉低片选x(s I l 向 v s】O 0 3 发送写命令、指定寄存 器 的地址、写入寄存器的l 6 位数据 j l 拉高片 _ X C S I 拉 低 片 选 x c s I 向、l 0 0 3 发送读命令和指定寄 存器地址 I 发送读时钟,分别读取指定寄 存器的高八位数据、低八位数 据 I 拉高片选x C S I 返回读取的l 6 位数据 图6 S P I 初始化流程图 图7 V S 1 0 0 3 初始化流程图 图8 写寄存器流程图 图9 读寄存器流程图 一 第2 期 李媛等 基于S P
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 SPI 协议 音频 解码 芯片 VS1003 读写 机制 实现 方法
限制150内