新闻中心

EEPW首页 > 模拟技术 > 设计应用 > 基于DSP的USB接口设计

基于DSP的USB接口设计

作者:时间:2013-09-23来源:网络收藏
-COLOR: rgb(255,255,255); orphans: 2; widows: 2; webkit-text-size-adjust: auto; webkit-text-stroke-width: 0px">  (2) FIFO数据接口:用来访问4个1K字节的FIFO中的数据。

  这两个外部接口均可以通过同步或异步的方式进行访问。

  本设计采用异步的方式进行访问。根据图3 的地址分配,利用TMS320VC5416 的三根高位地址线(A11、A12、A13)连接CY7C68001 的FIFOAD0/1/2,用以选择FIFO2、FIFO4、FIFO6、FIFO8以及命令接口,其地址表如图3所示。CY7C68001的地址线FIFOADR[2:0]为100B 时,选中CY7C68001 的命令口(Command)。通过CY7C68001的命令口,可以访问37个寄存器、Endpoint 0缓冲器(64个字节FIFO)和描述表(500个字节FIFO)等,对这些寄存器进行读写方式采用二次寻址方式,即首先通过命令口将要寻址的寄存器的子地址和操作类型(读或写)写入,然后再通过命令口将数据读出或写入相应的寄存器。

  

基于DSP的USB接口设计
写入命令口的内容称为命令字,命令字包含要寻址的寄存器的子地址,或要写入寄存器的数据的高4位或低4位。读命令口必须要跟在给命令口写读命令字之后,读出的为相应寄存器的8位数据。所以,寄存器的写操作由3 个步骤组成:

  

基于DSP的USB接口设计

  4 USB 接口的软件设计

  的软件设计由两部分组成:一是在PC机Windows中运行USB 2.0 Utility 工具,是一个Windows 图形用户界面软件,提供CY7C68001 与Windows 操作系统的接口程序,使得CY7C68001的开发变得简单。二是在在中运行嵌入式应用程序代码,提供硬件的驱动,用来管理CY7C68001进行不同方式的数据处理,从而实现USB2.0 传输协议。

  4.1 USB 接口的软件设计流程

  的软件设计,端代码大致包括芯片初始化(vc5416_init 函数)、USB芯片初始化(sx2_init 函数)、USB芯片配置程序( s x 2 _ s e t u p 函数) 以及USB 芯片数据读写程序(sx2_processdata 函数),程序流程如图4 所示。

  DSP芯片初始化(vc5416_init函数)主要负责设置VC5416的工作频率,配置SWCR以及SWWSR寄存器,另外本应用系统采用一个GPIO引脚作为68001的复位信号,所以还需要对其进行相关设置。

  

程序流程图

  USB芯片初始化(sx2_init函数)主要负责清除Buffer缓冲区以及使能VC5416 的外部中断INT1



关键词: DSP USB接口

评论


相关推荐

技术专区

关闭