0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

通过USB2.0全速接口实现PIC控制器与闪存盘的连接过程研究

电子设计 来源:网络整理 作者:佚名 2019-11-22 07:50 次阅读

问题与挑战

作为现今普遍接受的移动存储工具,USB闪存盘在各种嵌入式系统中也获得广泛应用。

本文介绍低成本PIC控制器通过USB2.0全速接口与闪存盘进行连接的实现过程,并着重针对PIC微控制器和VinculumUSB接口芯片说明有关嵌入式接口的硬件设计以及程序的编写。

如今各种闪存盘和USB外设价格已相当低廉,并被广泛应用到带USB接口的PC中。而要将它们应用于8位或16位嵌入式系统中,如何解决成本和功耗等问题才是关键。这其中的原因主要是这类系统中用到的嵌入式控制器,如Microchip公司推出并得到广泛应用的PIC系列器件具有多种存储密度和外设,但由于缺乏接口、资源和性能,无法作为USB的主控制器。

在实际应用中,可用VNC1LVinculum控制器来实现这种连接,该芯片提供了作为系统控制器的PIC和USB2.0全速端口之间的接口,顺利实现与USB闪存盘的连接,同时该方案具有很短的执行时间和最小系统成本。Vinculum基于定制处理器内核,有两个直接存储访问(DMA)引擎以加快数据传输和32位数字协处理器优化文件系统的计算,所有这些都在一个芯片里完成,芯片带有64K嵌入式闪存和4K内部数据SRAM

Vinculum专门针对嵌入式USB控制器市场,只需要很少外部支持元件。Vinculum核与常用MCU核相比的一个主要特点是其代码长度大幅缩短,减少内核在代码上的开销,因此可以在单芯片e-Flash存储器里装入更多功能,这一特点也正好可以弥补基于PIC的嵌入式系统的不足。系统原理图见图1,通过Vinculum将小型PICMCU连到USB“A”连接器上,然后就可以连接USB闪存盘了。

搭建模拟系统

PIC是系统控制器,通过通用I/O引脚(引脚9、10、11上的RC0、RC1、RA2)接收从传感器或其他来源传过来的数据,对数据格式进行转换,然后用数据流将数据写入闪存盘上的文件里。命令和数据通过TXD(引脚6)传到VNC1L的RXD(引脚32),VNC1L在USB闪存盘上生成FAT12/16/32文件并存储数据,并通过USB2DM(引脚28)和USB2DP(引脚29)和闪存盘通信。数据也用同样引脚读出,然后将数据通过VNC1L的TXD(引脚31)传到PIC的PXD(引脚5)以供系统固件使用。

在PIC引脚2和3之间接入一个20MHz晶振可在其UART接口获得高达115200bit/s波特率,而使用内部8MHz振荡器只能获得最高9600bit/s波特率,因此加接晶振可提高系统性能。PIC的IO引脚RC2和RC3都被固件使用,以模拟与VNC1LUART连接的RTS/CTS握手信号。系统由PIC上的固件控制,数据传输则由PIC发出的指令控制,该指令由Vinculum上的标准固件进行解释。虽然说起来很简单,但完成设计还有其他一些工作要做,例如器件还需要电源、控制时钟的晶振以及编程

系统需要标准的5V250mA电源(PSU),可为USB“A”连接器提供高达200mA电流,同时为VNC1L和PIC各提供25mA驱动电流。VNC1L采用3.3v电源,由一个3.3vLDO调压器提供,它带有一个5v容限IO引脚,可使其连到PIC而不需要用到电平转换器。在低功耗应用中,VNC1L不工作时可进入2mA睡眠模式,如需唤醒器件,只需触发RART接口的振铃指示(RI)引脚(引脚38)。如果它连到RXD线上(如图所示),就可以用一个空命令触发以唤醒器件。

该设计还包括一个双色LED指示器,由引脚16和18推动。它可以显示是否成功连上USB闪存盘并可以访问文件系统。

通过USB2.0全速接口实现PIC控制器与闪存盘的连接过程研究

VNC1L和PIC编程

该设计包括两个程序头文件,每个器件需要一个,同时还要有相应的开发环境。对于生产设计而言,两个器件都要在插入PCB之间预先编程,以减少连接头和跳线。

在正常工作状态下,J1和J2需要连上,而其他跳线保持断开。对VNC1L编程的时候,将J1和J2跳线移开以使VNC1LUART输入与PIC输出分开。把5VPSU断开,然后将TTL-232R-3V3线缆接到H2上,将该线缆的USB端接到PC上,而在PC上安装好VPROG编程软件。将J4连上以便将VNC1L的PROG#引脚拉低,并短暂将J3短路以使器件复位使其进入编程状态。编程完成后,记住恢复跳线设定到工作位置。

对PIC编程时编程头连到器件的RA0、RA1和MCLR#引脚,通过编程头提供5V编程电压。PIC微控制器编程前先将5VPSU断开,编程头连到标准PIC编程环境如PICKit2上,可以使用Microchip的调试与下载工具。

本文所附的C代码实例显示PIC等待闪存盘检测,然后打开一个名为hello.txt的文件,接着将“HelloWorld”以及回车换行符写入该文件中,最后关闭文件并等待将闪存盘移开。

通过USB2.0全速接口实现PIC控制器与闪存盘的连接过程研究

VNC1L固件

VNC1L采用标准固件进行编程,称为VDAP,它可以解释来自于PIC的命令。这些VDAP命令有些类似于DOS指令,如DIR、RD以及WR等,命令集也支持容易被微处理器控制的单字节十六进制命令,VDAP命令包含在PIC固件中,可控制USB闪存盘的接入,典型命令序列可以是生成一个文件、从文件中读出/写入数据然后关闭文件。

结论

FTDI的VinculumVNC1L提供了一个低成本微控制器与USB2.0低/全速外设之间的接口,易于使用和编程,其指令集类似于DOS命令,可在微控制器环境下很容易地编写调试数据以及传输例程,同时设计简单,使嵌入式系统能以较低成本实现USB主机功能。因此用户将可以采用低成本通用USB闪存盘作为系统存储媒介,而且还能在现场进行软件升级。此外VNC1L还可用于连接除了大容量存储设备之外的很多其他USB外设,不过这部分内容在本文讨论范围之外。

VinculumIC给USB接口增加不到10%的功耗,对系统而言更低,但能以非常容易及直接的方式为便携式设备增加USB2.0主机控制器端口。VDAP固件以及介绍完整指令集的文件可从FTDI的Vinculum网站()下载。

责任编辑:gt


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 微控制器
    +关注

    关注

    48

    文章

    6812

    浏览量

    147648
  • 控制器
    +关注

    关注

    112

    文章

    15235

    浏览量

    171207
  • usb
    usb
    +关注

    关注

    59

    文章

    7436

    浏览量

    258200
收藏 人收藏

    评论

    相关推荐

    USB2.0 闪存盘控制芯片“优芯II 号”的特点及应用电路

    USB2.0 闪存盘控制芯片“优芯II 号”的特点及应用电路深圳市朗科科技有限公司推出的采用 0.18um CMOS 工艺的“优芯II 号”USB2.0
    发表于 08-20 18:51

    USB闪存盘PIC控制器的简单方案及设计电路图

    USB Host桥接器IC做为一个例子,说明如何为系统控制器PIC16F688增加一个USB 2.0全速
    发表于 05-23 15:54

    USB2.0全速功能控制器cp2102

    CP2102具有集成度高的特点,可内置USB2.0全速功能控制器USB收发、晶体振荡、EE
    发表于 03-31 15:01

    SystemACE控制器的MPU模式可以用于某些USB闪存盘的FPGA配置吗?

    /ml50x_schematics.pdf)(第7页)中,SystemACE控制器MPU端口连接到赛普拉斯USB控制器GPIO数据总线。这种联系有什么用?SystemACE
    发表于 05-29 12:28

    用顶点5做USB闪存盘2 USB闪存盘数据传输如何启动?

    嗨,我想用顶点5做USB闪存盘2 USB闪存盘数据传输..不知道怎么启动它...请指导我...
    发表于 06-05 15:33

    USB闪存盘PIC控制器系统是如何连接的?

    USB闪存盘PIC控制器系统是如何连接的?
    发表于 05-26 06:22

    基于FPGA的USB2.0控制器设计

    /A。1 控制器结构原理USB2.0控制器结构框图如图2所示。控制器主要由两个部分组成,其一为与外设的接口,另一个是内部协议层逻辑PL(Pr
    发表于 06-29 07:30

    USB2.0 闪存盘控制芯片“优芯II 号”的特点及应用电路

    USB2.0 闪存盘控制芯片“优芯II 号”的特点及应用电路:深圳市朗科科技有限公司推出的采用 0.18um CMOS 工艺的“优芯II 号”USB2.0
    发表于 10-01 22:19 17次下载

    USB闪存盘PIC控制器的简单方案及设计电路图

    本文介绍利用低成本PIC控制器通过USB2.0全速桥接器芯片连接
    发表于 12-12 17:12 990次阅读
    <b class='flag-5'>USB</b><b class='flag-5'>闪存盘</b>与<b class='flag-5'>PIC</b>微<b class='flag-5'>控制器</b>的简单方案及设计电路图

    USB2.0控制器CY7C68013的接口设计实现

    USB2.0控制器CY7C68013的接口设计实现   1 引言   USB (Universal Serial Bus)
    发表于 01-21 10:00 1333次阅读
    <b class='flag-5'>USB2.0</b><b class='flag-5'>控制器</b>CY7C68013的<b class='flag-5'>接口</b>设计<b class='flag-5'>实现</b>

    利用USB2.0的高性能移动存储设备的设计

    利用USB2.0的高性能移动存储设备的设计   1.引言   闪存盘(FLASH MEMORY)是USB接口的一种典型应用,1999年朗科研发出全球第一款
    发表于 03-03 10:31 889次阅读
    利用<b class='flag-5'>USB2.0</b>的高性能移动存储设备的设计

    朗科拟推高端闪存盘

    国内闪存盘技术开发商朗科科技今天正式推出四款高端闪存盘,朗科科技相关负责人表示,公司希望通过满足高端用户的需求,提高公司经营业绩。
    发表于 09-22 08:53 1335次阅读

    U盘_闪存盘是什么

    本内容介绍了usb闪存盘是什么意思,包括usb闪存盘的组成及闪存盘的存储原理。
    发表于 12-21 11:19 1.2w次阅读

    闪存盘与u盘的区别

    闪存盘可用来在电脑之间交换数据。从容量上讲,闪存盘的容量从16MB到2GB可选,U盘是闪存的一种,也叫闪盘、优盘,最大的特点就是:小巧、存储容量大、价格便宜。是移动存储设备之
    发表于 12-21 11:32 1.9w次阅读

    朗科的两款闪存盘:U327步步锦闪存盘和US2超疾速闪存盘

    闪存盘是我们日常生活中最常见的移动存储设备,因其携带方便、传输便捷,我们习惯用闪存盘来储存文件、照片、视频等数据。选择一款高品质的闪存盘很重要,今天给大家推荐两款朗科的闪存盘产品,中国
    的头像 发表于 04-28 17:39 1513次阅读
    朗科的两款<b class='flag-5'>闪存盘</b>:U327步步锦<b class='flag-5'>闪存盘</b>和US2超疾速<b class='flag-5'>闪存盘</b>