您好,欢迎来到华拓网。
搜索
您的当前位置:首页基于TMS320F2812的USB2.0接口的设计与实现

基于TMS320F2812的USB2.0接口的设计与实现

来源:华拓网
维普资讯 http://www.cqvip.com 第1O卷2008年7月 第7期 霎缔 痢 VoJu1.2008 1.1O No.7 基于TMS320F281 2的USB2.0 接口的设计与实现 李万军.杨永才 (上海理工大学光学与电子信息工程学院,上海200093) 摘 要:在介绍了TMS320F2812芯片 ̄CY7C68001芯片的主要性能特点的基础上.给出了以 TMS320F2812 ̄主机.采用USB控制芯片CY7C68001来实现DSP系统与外界高速通信的实现方 案。同时给出了系统接口的硬件电路、软件流程以及USB的固件编程方法。 关键词:数字信号处理器;通用串行总线;固件编程;高速通信 O 引言 USB控制器通过USB接口接收外部器件传来的信 息,然后再把它们转发给信号处理系统。图1中 TMS320F2812数字信号处理器是TI公司推出 的阴影部分表示的是DSP与USB的接口连接.是 的32位定点DSP控制器芯片,是目前控制领域最 该文着重介绍的部分。 先进的处理器之一。其频率高达150MHz,大大 提高了控制系统的控制精度和芯片处理能力。然 2芯片介绍 而,DSP与外界高速通信的实现还处于正在研发 阶段,国内各DSP开发版制造商对此也多处于保 在以TMS320F2812 DSP为核心的嵌入式系统 密状态。鉴于将USB2.0协议应用于以DSP为核心 中,由于处理器的速度快(主频可达150 MHz), 的各类控制系统,可以大大提高DSP系统与外界 处理的数据量大,使用USB1.1及其它内嵌微处理 的通信能力,从而拓宽DSP的应用范围。本文给 器的总线控制器已经不能满足数据吞吐率的要 出了DSP系统与计算机的USB2.0接口方案,从而 求。因此,本接口设计选用的是Cypress公司生产 完成了DSP系统与外界的高速数据传输。 的不含微控制器的USB2.0总线接口控制芯片 CY7C68001。 1接口设计方案 CY7C68001可用来连接微处理器或DSP的 DMA从装置,该芯片内部不含微处理器,但它集 在信号处理系统上实现USB接口扩展的结构 成有USB2.0收发器(物理层)、USB2.0串行接口引 框图如图1所示。图中.控制系统将处理结果通 擎SIE(链路层、实现底层通信协议)、4 kB的FI— 过DSP芯片传输给USB控制器,接着由后者驱动 FO和电压调节器、锁相环等,CY7C68001可以支 USB接口以将数据传给外部器件;另一方面, 持高速(480 Mb/s)或全速(12 Mb/s)传输,采用 3-3 V操作电压和24 MHz ̄b部振荡频率,可以选 择8位或16位总线方式,具有同步与异步的FIFO 接口。 CY7C68001可以向用户提供足够的端口、缓 冲区和传输速度,并可提供USB2.0协议要求的全 图1信号处理系统的USB接口扩展框图 部4种传输方式(控制传输、中断传输、批量传 收稿日期:2008—01—23 输和同步传输),可以满足用户对各种类型数据 WWW.ecd瓯cn 2008.7电手元器件盔用 1 维普资讯 http://www.cqvip.com

第10卷第7期 电手元器件主明 Electronic Component&Device Applications V01.10 No.7 2008年7月 Ju1.2OO8 传输的需求。其片上的串行接口处理器(SIE)能 (4)通过检查系统中的状态寄存器0(sysstat0) 的位2(USBRDY)来等待CY7C68001的Ready线变 高: (5)寻址CY7C68001命令口(最低3位地址必 完成大部分USB协议操作.使用户可以摆脱复杂 的协议细节,简化用户配置代码,加快程序开发 过程。但是,由于采用的是不带MCU内核的USB 磊 接口芯片.USB的应用层协议应该由 TMS320F2812编程实现.USB固件的加载必须靠 DSP控制CY7C68001来完成。 3 TMS320F28 12与CY7C68001的互连 该设计将CY7C68001配置在TMS320F2812的 Zone0空间,并采用CY7C68001的异步读写方式 来完成二者之间的数据和命令交换。其接口原理 电路如图2所示。 l INT l READY I FLAGA I FLAGB CPLD l FLAGC I FLAGD,CS l SLoE l SLRD I ALWR l D[15:0] l【 FI.........FOADR[.................2:.一0]  CY7C68001 图2 TMS320F2812与CY7C68001的接口电路 CY7C68001除了带有存储器接口外.还有一 个中断信号诱丽和4个状态信号(READY、 FLAGA、FLAGB和FLAGC)。中断信号USBINT占 用TMS320F2812的外部中断XINT1,状态信号 READY、FLAGA、FLAGB和FLAGC则可配置在 本系统的状态寄存器0(sysstat0)中,并可由 TMS320F2812查询。本接口设计由于采用了 CPLD.因而增强了系统的灵活性和可扩充性。 3.1对CY7C68001寄存器的写操作 通过TMS320F2812对CY7C68001的寄存器进 行写操作的上体过程如下: f11将TMS320F2812对I/O空间访问的等待周 期设为7: (2)通过检查系统状态寄存器0(sysstat0)位2 fUSBRDY)等待CY7C68001的Ready线变高; (3)寻址CY7C68001命令口(最低3位地址必 须为100B),将lOxx,xxxxB写命令字写入命令寄 存器 ,xxxxB代表需寻址的寄存器的子地址); 2 电予元器件主用2008.7 WWW.ecdcacn 须为100B),将0xxx,D7D6D5D4B数据的高4位命 令字写入命令寄存器(D7D6D5D4B代表要写入的 数据的高4位): (6)通过检查系统中的状态寄存器0(sysstat0) 的位2(USBRDY)来等待CY7C68001的Ready线变 高; (7)寻址CY7C68001命令(最低3位地址必须 为100B),将Oxxx,D3D2D1DOB数据低4位命令字 写入命令寄存器(D3D2D1DOB代表要写入的数据 的低4位)。 3.2对CY7C68001寄存器的读操作 用TMS320F2812对CY7C68001的寄存器进行 读操作的具体过程如下: f11把TMS320F2812对I/O空间访问的等待周 期设为7: (2)通过检查系统状态寄存器0(sysstat0)位2 (USBRDY)等待CY7C68001的Ready线变高; (3)寻址CY7C68001命令口(最低3位地址必 须为100B),将1 1xx,xxxxB读命令字写入命令寄 存器(xx,xxxxB代表需寻址的寄存器的子地址); (4)等待CY7C68001申请TMS320F2812的外 部中断XINT1: (5)寻址CY7C68001命令口(最低3位地址必 须为100B).并读CY7C68001命令口。 4软件设计 USB设备开发过程中的软件设计包括设备端 的固件设计和计算机端的USB客户驱动程序设 计。由于本课题研究的重点是DSP的USB2.0接口 设计.而主机驱动软件大部分是公开的,可以直 接使用Cypess公司提供的测试软件,因此这里不 再多加讨论。 4.1 固件(FirmWare)设计 由于USB2.0接口器件CY7C68001内部集成的 串行接口引擎(SIE)能完成所有USB协议层功 能。所以,固件任务其实就是控制CY7C68001来 维普资讯 http://www.cqvip.com 第10卷第7期 20o8年7月 瓣霆缔瘗 V01.10 No.7 Ju1.20o8 默认地址来访问默认的控制管道,所以,主机可 通过读取设备描述符来决定USB设备的默认管道 初始化全局状态变量 二二]=开中断  所能使用的最大有效数据载荷; 用户自定义变量初始化 (7)主机读取配置信息,在这一过程中,设 备可能需要向主机提交多条配置信息; (8)基于配置信息和USB设备的使用方式, 用主机给USB设备分配一个配置值,然后使设备 转入配置状态。此时,设备可以从VBUS线上获 收NSETUP包? 调用用户功能函数 收到SETUP包? \, . I N N \ 线空闲标志有效 \, _ ●Y \ 是否挂起? _Y — 丽 \ , I N 监测恢复事件 图3 固件流程图 执行USB协议的内容并完成数据传输功能。其固 件流程如图3所示。 4.2总线枚举 当一个USB设备接人或拔出时.主机通过枚 举过程可对设备必要的状态改变进行鉴别和管 理。枚举过程步骤如下: (1)通过USB所连接的集线器检测所连接的 外设并通过其状态改变管道来通知主机。此时端 口处于禁止状态: (2)通过询问集线器获得主机决定改变的正 确状态: (3)在主机获知有新的设备连人端口后,主 机最少需要等待lOOms来确保插入过程的完成. 以及设备供电的稳定,然后,主机将发出一个端 VI使能信号和相应的端VI重启命令: (4)集线器执行相应端口所需的重启过程。 检测到重启时,端口必须处于使能状态.USB设 备要处于默认状态,并能从VBUS线上得到最大 100mA的电流供给。此时设备所有的寄存器和状 态都将被重置,并以默认的地址做回应: (5)主机为USB设备分配一个唯一的地址, 以使设备转入地址状态。 (6)在设备收到地址之前,由于其仍可通过 得其描述符中确定的电流大小。 该系统软件中的主机程序和设备固件执行到 这一步就完成了枚举过程。从设备的角度看.设 备完成了配置过程,等候具体的应用。当设备被 拔除时,集线器会重新发给主机一条通知信息。 设备的拔除会使相应的端口处于被禁止状态。根 据接收到的设备撤除信息,主机将会更新内建的 设备拓扑信息。 5 实验说明 使用Bus Hound软件作为调试工具可监控计 算机USB总线Hub的数据传输速度。实际测试时. 可使用8 K字节作为标准测试数据。Bus Hound检 测到的时间约为640 Izs.有效数据的传输速度可 达到l2.5 Mbps。 6结束语 利用此设计方案,笔者成功地实现了基于 TMS320F28 12的等离子切割电源控制系统和PC机 等具有主USB功能的设备之间的数据通信。并将 控制系统处理后的数据实时地传输到设备的USB 端口上,然后利用U盘将所需参数传递给等离子 切割电源控制系统,从而取得了令人满意的效 果。 参考文献 【1] 万山明.TMS320F28Ix DSP原理及应用实例【M].北京: 北京航空航天大学出版社.2007. 【2] Cypress.CY7C68001 Datasheet Rev,Jun 2005:5—21. 【3]Texas Instruments.TM¥320C28x DSP Extenral Interface (XINTF)Referenee Guide.Rev.July 2003:4—24. [4] 萧世文,宋延清.USB2.0硬件设计【M].北京:清华大学出 版社.2006. //rUYU).ecda.cFt 2008.7电子元器件主用 3 

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- huatuo3.cn 版权所有 湘ICP备2023017654号-3

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务