当前位置:首页 > 嵌入式 > 嵌入式硬件

  背景简介

  今日USB装置几乎无所不在,市面上充斥着各式各样的USB闪存盘和各种USB外围装置,由于这些装置大多是属于 USB Slave,应用领域也就局限在PC市场。近来USB闪存盘的价格快速滑落,刺激出新的应用,如何在原有产品上使用USB闪存盘成为许多公司的难点。想要在8与16位微控制器中增加USB Host的功能,设计过程、成本与功耗便成为了重要的考量因素。部份原因源自于这类系统使用的嵌入式控制器,目前尚缺乏适合的接口、资源、以及效率来连结USB Host控制器。

  在此应用范例中,将以Vinculum VNC1L智能型USB Host桥接器IC做为一个例子,说明如何为系统控制器PIC16F688增加一个USB 2.0全速连结埠。使这个系统能连结USB闪存盘,并能在耗用最少的设计时间与资源下完成设计。

  VNC1L简介

  VNC1L为Vinculum家族的第一颗芯片。此智能型USB Host桥接器采用客制化的处理器,并搭配两个加速数据传输的直接内存存取(DMA)引擎及一个32位数值协同处理器,以达到最高的文件操作效率-且全部整合于一内置64Kbyteflash、以及4Kbyte内部数据SRAM的单一芯片中。

  Vinculum家族锁定嵌入式USB控制器市场,这类产品仅需少量外部支持组件。Vinculum家族核心的主要特点之一,就是其程序代码长度明显短于一般微控制器实现该功能代码的长度,而降低核心程序代码的资源后,将可使更多功能能得以收纳至芯片内部的e-Flash内存中。VNC1L可处理整个USB协议并内建12MHz 到48MHz 的时钟。这些特性恰巧与PIC嵌入式系统形成互补。图1为此系统之架构说明,其利用VNC1L连结一个小型PIC16F688 微控制器及USB Type “A”连结器,进而可连接USB闪存盘。

  设计说明

  此PIC16F688为系统控制器,由其通用I/O引脚(9、10、11引脚上的 RC1、RC0、RA2) 来取得传感器或其它来源的数据,并转换数据格式且将串流格式数据写入USB闪存盘的文件中,指令与数据系通过TXD(6号引脚)传送至VNC1L RXD (32号引脚)。VNC1L可处理FAT 12/16/32文件系统和储存在USB闪存盘的数据。VNC1L通过28号针脚的USB2DP和29号针脚的USB2DM与USB闪存盘进行通讯。通过相同的引脚,数据能从USB闪存盘存取,并从VNC1L TXD (31号引脚)传送到PIC的RXD(5号引脚),以供PIC程序使用。

  PIC16F688上的程序控制整个系统,此外,由PIC16F688发出的指令控制其与VNC1L之间的传输作业。VNC1L的标准程序会解读并执行来自PIC16F688的指令。以上只是系统的简单介绍,若欲完成整个设计还需要更多的资源,而这些组件尚须电源、控制时钟的石英晶体以及程序设计。

  运用PIC中第2与第3针脚的20 MHz晶体,让UART接口能达到比115200 bit/s更高的的波特率(baud rate),相对于使用内部8MHz振荡器最高仅能达到9600 bit/s,因此其能提升系统效率。PIC程序把RC2与RC3 I/O引脚模拟成RTS/CTS来与VNC1L的UART接口连接。

  此时,系统需要5伏特/ 250mA的额定电源,其中对于USB “A”连结器提供200mA电流,并为VNC1L提供25mA电流,另25mA电流则用以供电PIC16F688。VNC1L所要求的3.3伏电压由3.3v LDO稳压器供应,其中尚有兼容5伏的IO口,能使其连接至PIC,而不需电位切换器。

  针对低功耗应用,VNC1L在不使用时能切换至2mA休眠模式。如欲唤醒该组件,则可通过UART接口的响铃侦测(RI)引脚(38号引脚)达成;若其已连接至RXD线路,如图中所示,则可通过接续的伪指令来唤醒该组件。

  此设计同样包含一个双色状态LED指示灯,其由16与18号引脚供电。当成功登录USB闪存盘及存取文件系统时,系统便将提出显示。

  VNC1L程序

  VNC1L内部固化有标准的程序,名为VDAP (Vinculum Disk and Peripheral),该程序能解读从PIC传来的指令。这些指令类似DOS指令,如DIR、RD、以及WR等等。指令集亦支持单一字节的hex指令,更适合由微处理器进行控制。

  而收录于PIC程序中的VDAP指令可用来控制USB闪存盘的存取作业。典型的指令顺序为建立文件、读/写数据至文件,之后关闭文件。

  VNC1L与PIC程序开发

  此设计含有两个烧录程序的接头,各个接头分别支持器件所需要的开发环境。在产品设计环境中,每个器件可在焊上印刷电路板前被预先烧录,因此不需接头与jumpers。


  在正常运作模式中,J1与J2应接上,其它jumpers应为开路状态。VNC1L在烧录时需移除J1与J2 的jumpers,以隔离VNC1L UART的输入端和PIC输出端。之后先切断5伏特电源,然后将TTL-232R-3V3 线连结至H2。通过已安装的VPROG程序工具,把线路的USB端连结到PC,之后接上J4 jumper,将VNCL1A的PROG#引角拉低,让J3暂时短路以重设器件,并切换至烧录模式。完成烧录后,并请将jumpers设定回复至运作模式。

  PIC的烧录接头需连结至器件的RA0、RA1、以及MCLR#引脚,5伏特烧录电压/电源则通过接头传送至组件。待切断5伏特电源后,再对PIC微控制器进行烧录。接头应连结至如PICKit2等标准PIC开发环境,以便利用Microchip的除错与下载工具。

  FTDI在网站上 ( http:///projects/SampleCsource.zip) 提供了一个PIC的范例程序。在这个C范例程序中,PIC将等待USB闪存盘被侦测出,然后开启一个名为hello.txt的档案。“Hello World”字符串以及换行指令码和line feed字符将被写入文件,待关闭文件后,USB闪存盘便可移除。

  结论

  FTDI的Vinculum VNC1L是一个容易使用、容易设计的智能型USB Host桥接器,使得低成本微控制器可轻易地增加USB 2.0低/全速的USB接口。在电源方面,Vinculum VNC1L 仅在USB接口增加少于10%的消耗。类似DOS的指令集,让传输的数据能在微控制器环境中轻易进行编写与除错,伴随着简易的硬件周边则大大地减轻工程师的负担,为嵌入式系统提供一个USB主控端设计方案不再是件艰难的工作。这使得低成本、高普及率的USB闪存盘能作为系统的储存媒体,并能提供现场升级软件之功能。在本文讨论范围外,值得附带一提的是,除了高容量储存装置以外,VNC1L还能用来连结许多其它USB外围装置。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭