一站式电子元器件采购平台

华强商城公众号

一站式电子元器件采购平台

元器件移动商城,随时随地采购

华强商城M站

元器件移动商城,随时随地采购

半导体行业观察第一站!

芯八哥公众号

半导体行业观察第一站!

专注电子产业链,坚持深度原创

华强微电子公众号

专注电子产业链,
坚持深度原创

电子元器件原材料采购信息平台

华强电子网公众号

电子元器件原材料采购
信息平台

最新智能USB Host控制器IC 可为数据记录及数据采集提供应用

来源:http://news.hqew.com/info-150039.html 发布时间:2008-11-04

摘要: 目前市场上有很多种数据采集设备可用于在PC上记录数据,如National Instrument的LabVIEW,不过这类设备的传感器件开始越来越多地采用USB接口而不是RS232或其他传统接口。过去在嵌入式系统中应用USB设备需要性能相对较强...

     目前市场上有很多种数据采集设备可用于在PC上记录数据,如National Instrument的LabVIEW,不过这类设备的传感器件开始越来越多地采用USB接口而不是RS232或其他传统接口。过去在嵌入式系统中应用USB设备需要性能相对较强的硬件,要带有USB Host控制器接口、RTOS以及USB软件驱动,结果因USB Host功能实施成本的原因设计工程师一直都不太愿意在小型8位或16位MCU系统上增加USB设备。但随着最新一代智能USB Host控制器IC的推出,与MCU配合使用不仅可为PC应用使用USB数据采集设备,而且还可将数据存储在低成本高容量的闪存盘上。
    
     本文介绍将智能USB Host控制器与常见的MCU系列相连,在数据记录应用中进行数据采集和存储的应用实例。智能USB Host控制器我们选择FTDI的Vinculum系列VNC1L USB Host控制器,其结构有助于实现符合成本效益的硬件方案,只需很少外围元器件,因为USB收发器和串行接口引擎(SIE)都集成在控制器内。另外,USB协议和文件系统存取也全部在VNC1L固件里完成,因此大大简化了构建方案所需的软件设计费用。虽然程序员可能需要一些USB传感器件工作原理知识以便正确从中获取数据,但是VNC1L固件提供的内置命令可以设置并访问大部分这类USB设备。
    
     在数据存储方面,USB闪存盘低成本高容量特性对很多嵌入式应用都极具吸引力,在某些专用内部闪存或电池供电存储可能不适合或者成本非常高的应用中使用USB闪存盘有很多优点。例如,应用可能要求监控设备留在工作位置而定期将存储设备取下以进行分析;设备可能只能间歇性供电;或者设备必须能够在相当长的时间里存储大量数据同时具有极低的功耗。
    数据记录应用
    
     第一个应用实例显示了一个MCU控制器和一个带有两个端口的FTDI VNC1L USB Host控制器:一个用于数据传感器件读取信息,另一个用于闪存盘以存储信息。MCU和USB Host控制器之间通过UART (或者SPI)命令监控接口进行通信,可使应用通过简单的命令集控制USB设备。
    
     应用原理框图见图1。这里选择的MCU是Microchip PICDEM 4演示板上的PIC18F1320,虽然它应该直接连到PIC系列其他成员以及其他MCU系列。MCU和VNC1L之间采用4线连接(再加上电源和地),连到PIC的EUSART (Tx和Rx)和两个I/O端口,以进行RTS/CTS数据流控制。另外,4线SPI端口还可以通过直接位拆裂I/O端口实现。下面提供了两种方法的C语言源代码。
    


     图1:USB数据记录原理图。
    
     该应用要求从一个DLP Design的DLP-TILT 2轴倾角传感器读取数据,然后以CSV格式将接收到的数据存在USB闪存盘上。当DLP-TILT模块从USB总线接收到一个包含字母“z”的OUT数据包后,就会对传感器电流读数进行采样,倾角传感器读数被一个IN数据包读取。通过VNC1L监控器,OUT数据包可以和DSD (设备发送数据)命令一起发送,后面跟着数据字节数和发送的数据。IN数据包和DRD (设备读取数据)命令一起被接收,VNC1L将返回字节数和从设备读出的所有数据。图2的C语言代码显示了使用DSD和DRD命令访问感应器的实例,在这段代码中,monPrompt()函数分析从VNC1L返回的数据,并确定命令是否成功执行。
    

     图2:源代码实例。
    
     由于USB需要将数据传递到数据包中,所以通常USB设备会有几个毫秒的延迟,尽管这可以通过对传感器数据提供更大的缓冲加以解决。当然,有些设计可能不需要USB传感器件而只是将数据存储到闪存盘上,在数据采集应用中通常都是这种情况,此时MCU采样模拟数据或者记录外部源传来的数据。由于无需探查USB设备,因此这样可以得到更高的采集数据率。
    
    数据采集应用
    
     图3显示了一个模拟输入应用。此例中我们还是使用Microchip PICDEM 4演示板上的PIC18F1320作为MCU。加速计模块是意法半导体的STEVAL-MKI010V1,它连到PIC的模拟输入端。PIC定期对该输入进行采样,结果送入FIFO缓冲器中,在软件中执行,然后由VNC1L写入存储设备。
    

     图3:数据采集原理框图。
    
     VNC1L监控器提供命令对USB闪存盘文件进行读写,它还有命令管理文件系统,可对文件及文件目录进行建立、重命名以及删除操作。有了与USB设备进行通信的命令后,文件系统命令使用非常简单。将数据写入文件的顺序是:使用OPW (打开准备写入)命令,后面紧跟文件名,然后是WRF (写入文件),后面是写入字节数,然后是CLF (关闭文件),后面还是跟着文件名。
    
     USB闪存盘的标准扇区大小是512字节,因此要达到最好效果就是在写入USB闪存盘之前提供512字节数据的缓存。USB闪存盘通常使用的文件系统是FAT12、FAT16或者FAT32,在这些系统中簇按需分配,这样当簇没有按顺序排列时可能造成一些小的延迟,然而这通常只是在那些内容快满的盘上比较常见。
    
    使用Vinculum
    
     几乎所有扇区容量为512字节和采用FAT文件系统的USB闪存盘都可以作为VNC1L的存储设备。VNC1L的固件可以在现场进行升级,通过USB闪存盘上特别的升级文件或者通过其UART接口进行ROM升级。基于VNC1L设计的其它优点是当USB闪存盘没有使用时它可以使其暂停以省电,而在执行文件操作期间自动唤醒,VNC1L本身也可进入低功耗睡眠模式并由微控制器应用唤醒。将USB设备协议及文件管理系统放到一个单独的IC上可为嵌入式数据记录或数据采集系统设计带来很多好处,它可使低功耗8位和16位MCU访问USB设备和闪存盘,而FTDI的VNC1L则以一种符合成本效益的方式实现了这一功能。事实上,简化开发还能使32位MCU方案在快速上市方面得益。
    
声明:本文观点仅代表作者本人,不代表华强商城的观点和立场。如有侵权或者其他问题,请联系本站修改或删除。

社群二维码

关注“华强商城“微信公众号

调查问卷

请问您是:

您希望看到什么内容: