新闻中心

EEPW首页>模拟技术>设计应用> 轻松驾驭嵌入式USB设计--USB完全解决方案全新登场

轻松驾驭嵌入式USB设计--USB完全解决方案全新登场

作者:Silicon Labs公司 时间:2008-08-01 来源:中电网 收藏

ToolStick开发平台

本文引用地址://m.amcfsurvey.com/article/86527.htm

  ToolStick开发平台是公司提供的一个低价位的MCU评估开发平台,它可以使MCU所有的引脚都可以引出,不同的MCU做在不同的子卡上,子卡即Daughter卡,开发不同的MCU即选择不同的子卡。图5所示的是一个完整的ToolStick工具,左边的Base Adapter可以与任何的MCU进行通信,通过USB Debug接口和PC相连;右边的是Daughter卡,是MCU产品开发板,不同的MCU所用Daughter卡不同。Toolstick软件和安装方法可以在公司的网站上找到,包括Silicon Labs的IDE,Keil公司2KB代码的评估板,C语言编译器,参考代码以及应用终端软件等等。

  Toolstick开发平台将一个完成的开发系统包括在USBStick里,可以帮助工程师在现场演示如何使用Silicon Labs公司MCU,如何编程仿真和下载程序,Toolstick平台整个应用方法如图5所示,PC侧IDE通过Base Adapter仿真调试功能对子卡上的单片机进行在线调试,同时安装在PC侧的ToolStick终端软件可以通过Base Adapter上单片机的UART口、GPIO口跟子卡上的单片机的UART口、GPIO口进行通讯,数据的收发在这个软件上都可以显示出来。ToolStick插上PC以后,电源LED点亮,C8051F326执行的是USB调试器和跟USB通信的功能,调试的时候程序的运行和停止都会在Run,Stop LED显示出来,SocketConnector是和子卡相连的接口。

  图6是C8051F330子卡的硬件图。其中包括两个LED,一个指示MCU的3.3V供电是否正常,另一个接在P1.39上给客户作实验用;IDIC输出侧接电阻,将电流信号转换成电压,通过转动电位器可以给ADC输入0-3.3V之间的电压。C8051F330所有的I/O口都可以引出的,更方便客户的测试和实验。



问答选编

  问:为任何一个微控制器添加USB口,有没有最简单的通 用方案?

  答:最简单的方案就是,使用Silicon Labs公司的CP210x系 列产品,不需要做USB的软件开发,直接将UART口转 变成


  问:以往的USB实现,往往都是通过加一个芯片,一般都是 支持usb1.1,兼容usb2.0,请问本产品的特点在哪里?

  答:Silicon Labs公司的单片机将USB2.0的功能集成到单 片机上,使系统方案更加简洁、可靠。在手持设备上使用 的话,单芯片的优势更加明显。


  问:我们设计的智能设备用于电力系统,原设计是每相用一 个F310的UART接口,三相的三个接口通过串行总线 接口一个汇总的UART接口(第4个UART),通过第4 个接口对外部通信,请问如果用F340等芯片的USB接 口可以吗?有没有更好的方案?

  答:通过F340的可以完成跟外部通信的任务,另 外F340的2个UART口也可以完成2相的通信,还需 要软件模拟一个UART口。


  问: C8051F34x MCU进行A/D转换时,可以实时把转换后 的数据传输到PC吗? 有多长的延迟时间呢?
  答:可以。使用中断,可以快很多。关于这个问题,还得看你 F34X里的任务和软件代码,还有PC机侧的响应时间(中 断、定时、轮询、任务多少)。


  问:在应用方面,协议中是不是要同时用到几种传输模式? 控制传输是不是必需用到的?

  答:对,每种USB的传输模式中,都会有控制传输。其他的 传输类别,可以根据你的应用来选择。


  问:把传统的USB主控移植到装置中,需要理清的 问题是不是比较多?

  答:不会,使用SILICON LABS的USB可以省掉很多麻烦。 在MCU或PC机侧,我们都有USBEXPRESS、VCP等等 驱动程序来支持。实际上与有关的东西,你们 的应用程序基本上是不会涉及的。


  问:采用USB方案实现实时数据采集的最高采集信号频率 能到多少?应该如何考虑系统的优化和抗干扰问题?

  答:这个取决于需要通过USB传输有关信号的信息的频 率。当带有USB中断管道时,仅仅1ms发送一次请求, 这种情况需要考虑到MCU在多个周期内取样一次外部 信号。

  我们的USB案例是基于降低端点1USB路径花费的时 间量而优化的,对于其他MCU任务将会考虑最大时间量。


  问:两个问题,首先是调试时,有时需要将JTAG或两线接口 和目标板电气隔离,能否用光电隔离的办法(如6N137), 能否提供解决方案?第二,不用KEIL时,不能进行软仿 真,能否增添此方面的功能?

  答:第一个问题,只要隔离是双向的并且支持高达几百KHz 的速度,使用隔离器就是安全的。
第二个问题,Keil是为Silicon Labs的MCU提供仿真器 的唯一厂商。我们的MCU具有实时硬件调试的性能,因 此典型应用我们推荐使用在实际硬件上调试。这样可以 提供更高精度的仿真,目前没有计划增加仿真器支持Sili - con Labs IDE。


  问:在使用USB/UART桥接方案的时候,经常会出现UART 找不到的问题,请问一般是由哪些原因造成的?

  答:如果一个器件操作已经打开,则PC无法找到CP210x。 如果一个PC应用已经打开一个操作,并且器件没有连 接到PC,但是这个操作也不会被关闭,器件也不能被检 测到。PC应用时,必须在器件重新连接之前关闭操作。


  问:块传输中的HIGH SPEED能达到53.2Mbyte/sec,这已 经接近USB2.0理论上的极限值了,能否实现这个速度的 传输?与哪些因素有关?

  答:Silicon Labs的MCU不支持高速,仅仅可以支持USB 全 速(48 MHz时钟速度)和USB 低速(6 MHz时钟)。保持 固件路径小是达到高吞吐率的一个要求,除非是在必要 情况下,数据不可以在不同的存储空间移动。


  问:C8051F340芯片功耗怎样,能用于低功耗手持式便携仪 器吗?

  答:C8051F340 MCU的功耗量示于数据手册的表3.1(33 页)。如果器件仅仅用于USB传输,可以将其设置在低 功耗模式,这样当不用USB传输时几乎不需要电流。当 与PC相连接时,可以从USB主机获取电源,如果MCU 用于采集数据或其他功能,振荡器可以配置成低速运行 从而降低功耗。此外为了实现低功耗,还有一个片上低 频率振荡器。


  问:不同速率的USB设备互联,会出现什么问题?常常遇 到USB设备能检测到,但是不能识别,是信号完整性的 问题吗?有没有很好的解决办法?

  答:首先是USB集线器和USB主机支持连接不同速率的 USB设备(全速USB或高速USB),而一些USB集线器 仅仅可以在USB全速模式下工作。其次,如果PC可以 检测到一个设备,但是不能识别,可能USB描述符或者 信号集成存在问题。推荐先使用USB分析器检查USB 枚举结果,如果枚举正确,再检查信号集成。

linux操作系统文章专题:linux操作系统详解(linux不再难懂)

上一页 1 2 下一页

评论


相关推荐

技术专区

关闭