DSP和PC机之间通过USB实现通信
基于DSP的USB主从机双向通信接口设计

集 传 输 的 速 度 要求 也 越 来 越 高 。传 统 的 通 信 方 式 , R 2 2 如 S3 /
R 4 5通信 己 不 能 满 足 当 前 对 大 量 数 据 快 速 存 储 和 交 换 的需 s8
它 是 一个 U B总 线 的 通 用 接 口芯 片 ,支 持 U B H S 主 机方 S S— OT 式和 U B D VC S — E IE设 备 方 式 。 本 地 端 ,H 7 在 C 3 5具 有 8位 数 据 总线 和 读 、 、 写 片选 控 制 线 以及 中断 输 出 , 以 方 便 地 挂 接 到 可
维普资讯
基于 D P的 US S B主从 机双 向通信接 口设计
张 颖 全 书海
( 汉理 工 大学 自动化 学院 。 武 武汉 4 0 7 ) 3 00
E- i :yb y 1 3 c m ma l z .o @ 6 . o
摘 要 介 绍 了一 种 基 于 D P的 U B主 从 机 双 向通 信 设 计 方 案 实现 DS S S P与 P C机 、 P与 移 动 存 储 器的 双 向通 信 . DS 以
tt n a b s ic e o e a tmaial. lo a po ie te ad r a d ot r i lme tt n ai s c n e w th d v r uo t l I as h s rvd d h h rwae n sf o c y t wae mpe nai meh d d . o to e
D P的 系统 总 线 上 。 S
求 , 而 采用 U B作 为 通 信 总线 ,其 最 大 的优 点 就 是 传 输 速 度 S
快 . S 11理 论 速 度 极 限 可 以 达 到 l MB s U B . 达 到 UB. 2 / 。 S 20可
DSP和PC机之间通过USB实现通信

是 I 端 点 , 也 是 O T 端 点 。 E 0 E IN 和 N U P , PI E 1U P O T只 能 由 F 2的 固 件 访 问 ;而 E 2 E 4 X P, P,
串行 接 口引 擎 (I ) 1 U B收发 器 、85K SE 、 个 S . B片 上 R M、4K IO存 储 器 以及 1 通用 可 编程 接 A BFF 个 口 ( PF 。C 7 60 3是 一个 全 面集 成 的解 决 方 G I) Y C 8 1 案 ,它 占用更 少 的电路 板空 间 ,并缩 短 开发 时 间 。
维普资讯
应 用 技
太 原 科技 2 0 0 8年 第 7期 锻 0 西 @ 匡 啪 ∞ 0 @
文 章 编 号 :0 6 4 7 (0 80 — 0 9 0 10 — 8 7 2 0 )7 0 4 — 3
D P 口P S C机 艺 司通 过 U B实 现 通 ) S 言
C 7 6 0 3芯 片包 括 1个 8 5 Y C81 0 1处 理 器 、 1 个
C 7 60 3 Y C 8 1 定义 了 7 个端点 ,在高速模式下的
端 点 缓 存 E ON O T,E IN,E 1 U PI& U PI P O T是 6 4
bt y e的端点缓存 。E 0是默认 的控制传输端点 ,既 P
C 7 60 3 Y C 8 1 拥有 1 个独特 的架构 .其中包括 1 个智
TMS320C54xx DSP的USB接口实现

TMS320C54xx DSP的USB接口实现通用串行(Universal Serial Bus)应用由三部分组成:具有USB接口的PC系统、能够支持USB的系统软件和用法USB接口的设备。
USB应用采纳通用衔接技术,实现外设的容易迅速衔接,借以达到便利用户、降低成本、扩展PC机衔接外设范围的目的。
USB的特点如下:(1)衔接灵便、用法便利现在计算机系统衔接外围设备的接口并无统一的标准,如键盘用PS/2接口,打印机用25针的并行接口等。
USB则将这些不同的接口统一起来,由一组极小的矩型插座和软件构成。
用户插入外设后,计算机系统能够自动识别接入的外设,而不需要重新启动系统,用户可以带电插拔;为USB设计的驱动程序和应用软件可以自动启动,无需用户干预USB设备,也不涉及IRQ矛盾等问题;USB单独用法自己的保留中断,不会同其它设备争用PC机的有限资源。
(2)为外设提供电源 USB能自动识别外设所需的电源,并通过USB电缆向该设备供电(最高可达500mA)。
(3)速度快 USB的最高传输率可达12Mbit/s,比串口速度快100倍,比并口速度快近10倍。
USB端口的传输速率比目前PC机平台上的任何其它类型端口的传输速率都快。
预计今后USB的速度将会提高到100Mbit/s以上。
(4)支持多媒体 USB提供了对电话的两路数据支持,它可支持异步及等时数据传输,使电话可与PC机集成,分享语音邮件及其它功能。
因为USB音频信息生成于计算机外,因而削减了噪音干扰声音质量的机会,从而使音频系统具有更高的保真度。
1 USB接口芯片AN2131Q目前市场上USB接口芯片无数,用法较为广泛的是Crypress公司的AN2131系列的USB接口芯片AN2131Q。
AN2131Q具有以下优点:(1)基于RAM的"软"系统解决计划(SOFT,RAM BASED),不需要ROM或其它的固化存储器,而只用法片内的程序/数据RAM。
DSP和PC机之间通过USB实现通信

DSP和PC机之间通过USB实现通信
刘娜
【期刊名称】《科技创新与生产力》
【年(卷),期】2008(000)007
【摘要】介绍了CY7C68013在Slave FIFO模式下通过TMS320F2812控制与PC机进行USB通信的软硬件设计.提出了两个器件的连接方式和软件实现方法.【总页数】3页(P49-51)
【作者】刘娜
【作者单位】北京瑞赛长城航空测控技术有限公司,北京,100176
【正文语种】中文
【中图分类】TM930.9
【相关文献】
1.PC机和DSP之间高速通信的实现 [J], 苏明武;朱齐丹;雷建忠;陶迪
2.PC机与DSP之间串行通信的实现 [J], 孙璋;肖健梅
3.基于EZ-USB实现PC机与DSP设备间的高速通信方案 [J], 张大勇;王立德
4.采用USB-UART转换方式实现DSP与PC机的USB通信 [J], 陈永波;洪永强;杨嘉
B设备与PC机之间的通信机制的实现技术研究 [J], 李颖;郑相启;刘金刚因版权原因,仅展示原文概要,查看原文内容请购买。
基于DSP和专用接口芯片的USB实现方案

基于DSP和专用接口芯片的USB实现方案引言各种测量仪器检测到的数据常常需要传送到PC机进行数据处理与存档,以充分利用PC机丰富的硬件和软件资源,获得更为完善和强大的数据处理、分析和存储能力。
传统PC平台的数据采集卡受PC机插槽数目、地址、中断等硬件和软件资源的限制,可扩展性较差,安装拆卸困难,成本高。
自1994年11月提出通用串行总线(USB)以来,USB以其传输速率高、支持热插拔、易于扩展的突出优势,发展速度惊人,迅速席卷电子产品世界。
在市场需求的强力驱动下,从1998年开始,USB接口进入测量仪器领域,并逐步被许多著名仪器公司接纳。
在测量仪器中扩展USB接口已经成为一种发展趋势。
针对不同的测量仪器,寻求一种普遍适用的USB接口解决方案,对于测量仪器的开发设计有十分重要的意义。
方案选择开发USB设备一般有三种方式:一种是使用带USB接口的专用微控制器(MCU),这类MCU有自己的系统结构和指令,从底层专用于USB控制,比如Cypress公司的CY7C63xxx和CY7C64013,这类MCU的开发需要用专用工具,且性能有限;第二种方式是使用带USB接口的通用MCU,这类MCU只是基于一般芯片内核增加了USB接口,比如Intel公司的8x931、8x930以及Cypress公司的EZUSB等,这类MCU的开发语言和开发工具都和一般MCU相似,因而较易入手,但其缺点是成本较高;第三种方式是使用纯粹的USB接口芯片,通过外加MCU对其控制。
如Philips公司的PDIUSBD12、ISP1581 以及National公司的USBN9602、南京沁恒公司的CH372、CH375等。
这类USB接口芯片价格较低、接口方便、灵活性高,针对不同的硬件环境可以配合。
利用DSP芯片的专用引脚实现与PC机之间的串行异步通信

步转 换 接 口芯 片 , 因此 无 论 是在 电 气 连 接 上 还 是 调试 过 程 中 , 会 遇 到 很 多 麻 烦 , 都 由于 D P芯 片 S 有 1 专用 的输人 引脚 ( I 和 1个 专 用 的输 出 个 B o) 引脚 ( ) 因 此 , 以 考 虑 用 这 两 个 引脚 来 完 成 XF . 可 与异 步 串行器 件 的连 接 。
D P的专用 串 口资源与 P S C机进 行通信 , 在实际应用 中具有较高 的参 考价值 。 ①
中 图分 类 号 : N4 1 2 文 献 标 识 码 : T 3. A
I p e e i g S r a y c r n0 s Co m u c to t p c a m l m ntn e i lAs n h 0 u m ni a i n wih S e i l Pi f DS I t g a e r ui ns o P n e r t d Ci c t
利 用 DS P芯 片 的 专 用 引 脚 实 现 与 P 机 C
之 间 的 串行 异 步 通 信
潘 国栋 , 春 晖 , 天 明 赵 王
( 尔滨 工程 大 学 信 息 与 通 信 工 程 学 院 , 龙 江 哈 尔滨 1 0 0 ) 哈 黑 5 0 1
摘 关 键
要: 在介绍 了串行 异步通信 的基本 知识 之后 , 出 了一个 经过 实 际验 证 的应用 电路 。该 电路 不 占用 给 词: 串行异步通信 ; S DP
维普资讯
第2 9卷 第 8期 20 0 2年 8月
应
Ap l d pi e
科
技
Vo . 9. 0 8 12 N .
Au , 0 g. 20 2
a d Te h o o y n c n lg
DSP与PC间高速串口通信的实现(精)

DSP与PC间高速串口通信的实现DSP与PC间高速串口通信的实现类别:通信网络 作者:北京理工大学电子工程系信息系统实验室王卫江陶然徐元军来源:《电子产品世界》摘要:利用UART解决DSP与PC机间通信时速率匹配问题,并给出了具体实现电路。
关键词:DSPUART 串行通信 FIFODSP是一种专门用来实现信号处理算法的微处理器芯片,主要优点有:硬件乘法器,哈佛总线结构,多种寻址方式,零耗循环(zero overhead loop),程序执行时间可预测等。
正是由于DSP的诸多优点能够满足密集的数学计算,而且DSP应用的另一个突出特点是实时性,使其在通信、雷达、数字电视等领域得到了广泛的应用,而且日益渗透到人们的日常生活的各个方面。
在实时信号处理中已经离不开DSP,这些处理系统中包含了各种数据通信,例如DSP与DSP间数据通信,DSP与PC机间数据通信等。
如何能够快速、准确的完成通信是每个硬件工程师所关心的问题。
由于DSP的工作频率较高,如TMS320C6201时钟频率为200MHz,ADSP21060时钟频率为40MHz,故其数据读写周期很短,然而PC机串口读写速度较低,最大数据吞吐量约为115kbps,尽管DSP在与这些慢速外设进行数据交换时可以加入额外的等待周期,但是在实时性要求苛刻,算法复杂的场合,将DSP从这些冗长的等待周期中解放出来,将其时间重点放在处理关键的实时任务中去,有着重要的实际意义。
故DSP与PC机之间串口通信的速度匹配是保证快速、准确通信的关键。
PC机一般带有一个或两个内置串口,每个端口的机箱背后有一个9针或25针的公插口。
串口是以bit来传输数据的,传输速率取决于UART芯片。
该芯片将PC总线上的并行数据(单字节或多字节)分割成以比特为单位的串行数据流,从而实现在串口线缆中的数据传输。
现在几乎所有的PC机都带有16550UART用以实现并行数据和串行数据的格式转换,它的最大数据吞吐量为115kbps,这已经能够满足大多数串行设备的需要了。
DSP与PC间的数据通讯(精)

DSP与PC间的数据通讯摘要:DSP由于具有高性能和灵活可编程的优点而得到广泛的应用。
文章给出了用PC机作主机,DSP作从机来实现DSP与PC机间有效、可靠通讯的实现方法。
同时通过一个数据传输程序的例子来详细阐述如何使用VB6.0专业版作为开发工具,并利用DSP中的SCI (Serial Communication Interface)模块来实现DSP与微机间的数据传递方法。
关键词:DSP;串口通信接口;PC机;TMS320C24X1引言TMS320C24x是美国TI(德州仪器)公司专为电机控制(DMC)应用而推出的一种低价格、高性能16位定点运算DSP。
该器件将高性能的DSP内核和丰富的微控制器外设功能集于一身,从而为控制系统应用提供了一种理想的解决方案。
TMS320C24x的串行通信接口(SCI)支持CPU与其它采用标准NRZ(不归零)格式的异步外设间的数字通信。
异步模式使用两条线来与诸如采用RS-232-C格式的终端和打印机等众多标准器件进行连接,因此,利用DSP中的SCI模块来与微机间的指令和数据传递便可实现微机对生产现场的检测和控制。
VB6.0是运行于Windows上的交互式可视化集成开发环境,利用其强大的通讯控件(MicrosoftCommActiveXControl6.0)可方便地实现PC机与DSP间的通信。
2DSP部分该DSP控制器的串行通讯接口由发送和接收两大部分组成,其与串行通讯相关的引脚如下:SCIRXD:串行通讯接收引脚,也可用作普通I/O端口。
SCITXD:串行通讯发送端,也可用作普通I/O。
该DSP的系统时钟由SYSCLK设定,其中SYSCLK为CPUCLK/2CPUCLK为20MHz。
通过TMS320C24x中的一个16位波特率选择器可获得超过65000种不同的可编程波特率。
波特率的设置与SCIHBAUD和SCILBAUD有关,其具体算式如下:BRR=SYSCLK/(SCI异步波特率×8)-1,其中SYSCLK为10MHz。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1 器件选用 TMS320F2812 是 TI 公司的一款高性能的 32 位
定点数字信号处理器,可与 TMS320F2407 数字信 号处理器兼容,最高可在 150MHz 主频下工作,并 带 有 18 K×16 位 片 上 SRAM 和 128 K×16 位 片 上 Flash。另外,该器件还有 3 个独立的 32 位 CPU 定 时器,可外扩到 1 M×16 位程序和数据存储器[1]。
CY7C68013 完全适用于 USB2.0,并向下兼容 USB1.1。大部分 USB1.1 器件都需要微控制器参与 数据从端点 FIFO 到应用环境转移。显然,微控制 器本身的工作频率在相当程度上限制了带宽的进一 步提高。虽然在 12 Mb/s 的全速模式下,这种限制 并不明显,但当速度提升至 480 Mb/s 时,在成本严 格控制下,微控制器就必然成为整个系统的带宽瓶 颈。CY7C68013 提供了一种独特架构,使 USB 接 口和应用环境直接共享 FIFO,而微控制器可不参
FX 有 2 种接口方式:Slave FIFO 和可编程接口 GPIF。Slave FIFO 方式是从机方式,外部控制器可 像普通 FIFO 一样对 CY7C68013 的多层缓冲 FIFO 进行读写。FX2 的 Slave FIFO 工作方式可设为同步 或异步,工作时钟可选为内部产生或外部输入,其 他控制信号也可灵活地设置为高有效或低有效。 2 硬件配置
·50·
太原科技 2008 年第 7 期 TAIYUAN S CI- TECH
应用技术
CY7C68013
SLWR SLR D SLO E FLAGA FLAGB FLAGC FLAGCS BA0 BA1
CPLD
SLWR SLR D SLO E FLAGA FLAGB FLAGC FLAGCS BA0 AA0 BA1 AA1
CY7C68013 定义了 7 个端点,在高速模式下的 端 点 缓 存 。 EP0IN&OUT, EP1IN, EP1OUT 是 64 byte 的端点缓存。EP0 是默认的控制传输端点,既 是 IN 端 点 , 也 是 OUT 端 点 。 EP0, EP1IN 和 EP1OUT 只能由 FX2 的固件 访 问 ; 而 EP2, EP4, EP6 和 EP8 无需固件干涉即可同片外互传高速数 据。 FX2 端点配置方式非常灵活。EP2,EP4,EP6 和 EP8 是大容量高带宽的数据传输端点,可设为 IN 或 OUT 端点的一种,能配置成多种形式以适应 带宽需要,分别表示端点可配置成双重、三重和四 重缓存。双缓存是指 USB 可以读或写 1 个数据包, 而另一个数据包 (同一个端点内另一个缓冲存储器 中的)可供外部接口操作;三重缓存增加了第 3 个 数据包存储器可供 USB 和外部接口需要的一方使 用;四重缓存增加了第 4 个数据包存储器。多缓存 的结构可以在读写双方速度相似时有效地改善带 宽,平滑带宽抖动,减少双方的互相等待时间[2]。
DSP 程序中,通过判断 FLAGB,FLAGC 的状 态来向主机发送或接收主机发来的数据。部分程序 及所用到的函数如下: #define FIFO_STATUS 0x100000 地 址 0x100000 的 第 1 位 (从 0 位 开 始 ) 表 示
FLAGB 的状态,第 2 位是 FLAGC 的状态。 写 EP2 FIFO
CY7C68013 芯片包括 1 个 8051 处理器、1 个 串行接口引擎 (SIE)、1 个 USB 收发器、8.5 KB 片 上 RAM、4 KB FIFO 存储器以及 1 个通用可编程接 口 (GPIF)。CY7C68013 是一个全面集成的解决方 案,它占用更少的电路板空间,并缩短开发时间。 CY7C68013 拥有 1 个独特的架构,其中包括 1 个智 能串行接口引擎 (SIE),它执行所有基本的 USB 功能,将嵌入式 MCU 解放出来用于实现专用的功 能,并保证其持续的高性能传输速率。CY7C68013 还包括 2 个通用可编程接口 (GPIF),允许它 “无 胶粘接”,与任何 ASIC 或 DSP 进行连接,并且它 还支持所有通用总线标准,包括 ATA,UTOPIA, EPP 和 PCMCIA。
10 时选中 EP6,FIFOADR [1:0] =11 时选中 EP8。
FLAGA,FLAGB,FLAGC 分别代表了 FIFOADR[1:0]
确定的 FIFO 的空满状态。
3 硬件连接
F2812 的 读 写 信 号 (SLWR, SLRD, SLOE)、
TP7
+ 3.3 V
1
R 35
+ 3.3 V
fifo_write=0x02; fifostatus =* (unsigned volatile int *)FIFO_STA- TUS; fifo_write=fifostatus&fifo_write; if (fifo_write! =0x0) for (i=0;i<32;i++) * (unsigned volatile int *) USB_IN_FIFO = dataBuffer [i]; 读 EP6 FIFO
int *)USB_OUT_FIFO;
好,性价比高。适用于大批量数据采集与传输系
统。
参考文献:
[1] 苏奎峰,吕强,耿庆锋,等.TMS320F2812 原理与开发[M].北
京:电子工业出版社,2005.
[2] 黄小光,郝瑞祥,游小杰,等.TMS320F2812 利用 EZ- USB
FX2 与 PC 机实现 USB 通信的设计[J].仪器仪表标准化
25 26 27 28 29 30 31 32 52 53 54 55 56
1 2 3
D0 D1 D2 D3 D4 D5 D6 D7 D8 D9 D10 D11 D12 D13 D14 D15
4 7 17 19 33 35 48
GND GND GND GND GND GND GND
*FLAGD/ CS# *FLAGC *FLAGB *FLAGA D+ D-
usb_st1=0x04; usb_st2 =* (unsigned volatile int *)FIFO_STA- TUS; if ((usb_st1&usb_st2)==0x04)
{ for (i=0;i<32;i++) order_buffer [ i] =* (unsigned volatile
收稿日期:2008- 05- 16;修回日期:2008- 06- 17 作者简介:刘 娜(1982- ),女,山西太原人。2005 年 7 月毕
业于中北大学,助理工程师。
与数据传输但允许以 FIFO 或 RAM 的方式访问这些 共享 FIFO。这种被称之为 “量子 FIFO” (Quantum FIFO)的处理架构,较好地解决了 USB 高速模式 的带宽问题。
CY7C68013 和 DSP 相连,数据主要来自于 DSP 并 受 其 控 制 , 作 为 从 设 备 选 用 了 CY7C68013 的 Slave FIFO,异步读/写模式。在这种模式下,DSP 可以像读/写普通 FIFO 一样对 CY7C68013 内部的多 层缓冲 FIFO 进行读/写。为了配置成 SLAVE FIFO
47 38 37 36 15 16
FLAGCS FLAGC FLAGB FLAGA
DATA+ DATA-
SDA SCL
23 22
R ESER VED AGN D AVCC
21 13 10
usb_GN D
VCC VCC VCC VCC VCC VCC VCC
6 14 18 24 34 39 50
usb_GN D
+ 3.3 V
+ 3.3 V
R 31 2.2 K
R 32 2.2 K
7
5
D8 WC A0 SCL A1 SDA A2
1 2 3
24LC01/ 02
图 1 CY7C68013 芯片的电路连接图
4 软件设计 FLAGB是 EP2 FIFO 的满标志,如果 FLAGB=
1,表示 EP2 FIFO 不满,DSP 可以向主机发数据。 FLAGC 是 EP6 FIFO 空标志,如果 FLAGC=0,表示 EP6 FIFO 中没有数据,反之则可以读取主机发来 的数据。
C60 0.1 u
8 D7 4
5 1 24 M
BA0 BA1
C LKO U T SLWR SLR D SLO E PKT EN D WU2 IN T 1# IN T 0#
地址线 (FIFOADR [0:1])经过 CPLD 译码后连接到 CY7C68013 上 , CY7C68013 的 标 志 位 (FLAGA, FLAGB,FLAGC)也经过 CPLD 与 F2812 相连。而 F2812 到 CY7C68013 的数据线 (DB [0:15])经过了 一个总线缓冲器。状态位和数据的存放区域被分配 到 TMS320F2812 上不同的空间。当对 CY7C68013 进行读操作时,TMS320F2812 的 XRD,XZCS0AND1, XA[0],XA[1]控制读信号 SLRD,当对 CY7C68013 进 行写操作时,TMS320F2812 的 XA[3],XZCS0AND1, XA [0],XA [1] 控制写信号 SLWR (见图 1 和第 51 页图 2)。
XCS1
XCS2 WE RD
TMS320F2812
XA[0] XA[1] XZ C S0AN D1
} 上位机进行数据传输时,需要调用 DLL 函数来实现 对 USB 的控制,需要的部分函数如下:
DevOpen (void * p)打开 USB 设备 DevWriteCMD (char * p, long len) 向 USB 设 备发数据 DevStartReadUSB (void)启动 USB 接收 DevGetBuffer (unsigned char * p, long len) 从 DLL 读 USB 数据 DevTryStopReadUSB (void)停止 USB 接收 DevClose (void)关闭 USB 设备 5 结束语 USB 总线有传输速度快、结构简单、可靠性高 的接口优势。运用于系统可使得系统简单,通用性