当前位置:首页 > 嵌入式 > 嵌入式硬件
[导读]本文设计了一款以C8051FD40单片机为核心的U盘转储器,实现不通过计算机直接完成两个U盘之间的数据交换,具有体积小、传输速度快、操作方便、硬件综合成本低等优点。

目前U盘以其体积小、易携带、容量大、使用方便等特点成为最常用的移动存储设备之一。但是一直以来人们对U盘的使用仅限于U盘与计算机之间的通讯。如果要实现多个U盘的内容相互转储必须通过计算机问接完成,比较麻烦,且无法满足人们出门在外需要随时随地转储数据的要求。本文针对这一需求,设计了一款以C8051FD40单片机为核心的U盘转储器,实现不通过计算机直接完成两个U盘之间的数据交换,具有体积小、传输速度快、操作方便、硬件综合成本低等优点。

1系统硬件设计

1.1系统总体结构与工作原理

系统由电源模块、USB接口转储模块、控制模块、键盘模块和液晶显示模块等组成,如图1所示。C8051F040微控制单元外接两个CH375 U盘模块,通过在单片机内部开辟一个数据缓冲区,直接调用子程序库,负责将一个U盘中选中的文件数据传送到另一个U盘中。液晶和外部键盘实现人机接口,通过键盘的上翻、下翻、选择、复制等按键,选中要转存的文件,并在液晶模块中显示文件名、文件大小等相关信息。人机交互界面友好、操作简便。


图1 系统结构框图

1.2 CH375 U盘模块

采用振南电子开发的CH375 U盘读写模块,该模块体积小巧,仅3.3x2.0 cm2.模块供电为5 V,配有指示灯,工作时指示灯被点亮。模块使用USB主从机控制器CH375B,采用并行方式驱动,可以实现U盘的读写。共需要13根信号线(5根控制线8根数据线)。

通过该模块提供的znFAT,一种单片机上的FAT32文件系统解决方案,能够轻松地实现U盘上的各种文件级的应用。主要包括文件扇区的定位、文件打开、信息修改、文件关闭、文件删除、文件读、文件写、磁盘信息查询等一些对文件的基本操作。该模块具有体积小,价格较低,使用方便的特点。通过该模块很容易通过单片机实现对两个U盘中的相关文件的转移。

CH375 U盘读写模块与C8051F040单片机的连接如图2所示。C8051F040通过CS选中U盘模块,U盘模块则通过INT以中断方式与单片机进行通信。DO~D7为CH375 U盘模块与单片机的并行通信数据线,单片机通过AO、RD、WR控制信号控制CH375U盘模块。D+、D-为CH375 U盘模块与USB存储设备的串行接口。通过CH375 U盘模块可以很容易地实现单片机与USB存储设备直接的数据转储。

图2 CH375 U盘模块与C8051FD40接口

1. 3液晶显示模块

本系统使用122x32点阵的MGLS12232液晶显示模块,模块内置两块2.560位的RAM和两片SED1520控制器,分别由E1、E2两个选通信号控制左右两半屏的显示。图形液晶显示模块有两种连接方式:一种为直接访问方式,另一种为间接控制方式。本系统是采用直接控制方式,该方式将液晶显示模块的接口作为存储器或I/O设备直接挂接在单片机总线上。该模块体积小、价格较低且通过该液晶模块能够满足对一般文件夹名、文件名和文件信息的显示。

1.4键盘模块

键盘模块是3x3矩阵式键盘结构,采用Button按键,分别定义了上电、复位、上翻、下翻、选择、复制、粘贴等按键,以最少的按键实现文件转储的各种操作。

1.5 C8051F040单片机控制模块

C8051F040单片机控制模块是本系统的核心控制模块。该单片机具有丰富的片内资源和强大的控制功能:与8051完全兼容,最大系统时钟频率为24 MHz,70%指令的执行时间为1或2个系统时钟周期。丰富的中断源,扩展的中断系统向CIP-51提供20个中断源,一个中断驱动的系统需要较少的MCU干预,因而有更高的执行效率,这么多的中断源完全能满足本系统的所有外设。通用串行总线(USB)功能控制器,有8个灵活的端点管道,集成收发器和1K FIFO RAM;片内存储较大,CIP-51的SFR地址空间可包含多达256个SFR页,通过SFR分页,CIP-51MCU可以控制大量用于控制和配置片内外设所需的SFR.串口资源丰富,具有两个增强型全双工UART、一个增强型SPI总线和SMBus/I2C.每种串行总线都完全用硬件实现,都能向CIP-51产生中断,因此需要很少的CPU干预。这些串总线不“共享”定时器、中断或端口I/O等资源,可以使用任何一个或同时使用多个。

该模块的功能是:通过在单片机内部开辟一个数据缓冲区缓存两个U盘之间要转移的文件数据,并通过两个CH375 U盘模块控制U盘文件的打开、读取、写入和关闭,实现文件数据的转移工作。该控制单元还可以将外围键盘发来的中断信息进行处理,以实现文件的选择等对单片机的控制。通过控制一个MGLS12232液晶显示模块来显示一些相关的文件信息。

2系统软件设计

2.1外设控制方式

本系统采用CH375 U盘模块,该模块附带znFAT,单片机上的FAT32文件系统解决方案。从而减少了繁杂的Fat32文件系统方面的编程,由于CH375 U盘模块配带文件系统及文件操作子程序,通过单片机主程序调用比较容易实现文件名、文件信息的液晶显示,以及文件的选择与转移操作。

由于C8051F040单片机的中断资源丰富,并且中断具有以下优点:

1)分时操作。CPU可以分时为多个I/O设备服务,提高了计算机的利用率。

2)实时响应。CPU能够及时处理应用系统的随机事件,系统的实时性大大增强。

3)可靠性高。CPU具有处理设备故障及掉电等突发事件的能力,从而使系统的可靠性提高。

综上所述,本系统的所有外设键盘均采用中断控制方式,文件转移也用中断方式控制。这样C8051F040的系统资源利用效率有了很大的提高。

2.2文件转储方案

首先在C8051F040单片机内部开辟一个缓冲区,当需要转存文件时,首先选中一个U盘中的文件,当单击复制及粘贴按键后,会通过中断自动调用相关的程序,想将该文件打开,并读取文件的数据与开辟的缓冲区中,然后把缓冲区的数据存储到另一个U盘相应目录下的新建的同名文件中。

系统总流程图如图3所示。系统上电后,对C8051F040单片机内部开辟的缓冲区进行初始化,并使液晶屏显示初始界面,之后进入等待U盘插入的状态,当等待一段时间后,若没用U盘插入,则显示“请插入U盘”的提示信息。当U盘个数为一个或两个时,开始读取U盘信息,并在液晶屏上显示基本的U盘信息。之后,C8051F040单片机等待键盘操作,根据键盘输入的编码调用相应的中断程序,处理完后,继续等待键盘的中断信号。


图3 系统软件流程图

3联机调试

在USB转储器的两个USB接口分别接甲、乙两个U盘,液晶显示屏能够显示甲U盘里的文件,通过手动操作转储器上的键盘按钮可以选择甲U盘里的文件,并可将其转移到乙U盘里。在这次USB转储器的制作过程中比较难的是对设备端的程序进行调试。由于USB协议有严格要求,这就使程序必须在有效的时间内对某些请求或者状态进行,否则USB将无法正常工作。因此在调试过程中,较多的借助串口输出程序输出的一些信息来辅助调试,定位问题所在。

调试工作主要分为两步,首先是要能显示U盘里面的文件,借助PC调试软件(从网上下载的Bus Hound)将设备端的USB协议调通,然后加上U盘写入U盘显示程序,在液晶屏里可以看到U盘里的文件名;第二步是转储,在单片机里写入转储程序进行调试。通过键盘按钮选择可以实现转储文件。

4结束语

目前市场上虽有单片机读写U盘的功能模块,但只能够实现简单的读功能,还不能够实现两个U盘之间的直接相互传输和显示。本文设计的U盘转储器经实验表明具有很强的实用性和可操作性,人们可以在户外不借助计算机很方便地完成一个U盘到另外一个U盘的文件转储。由于采用USB接口传输速度非常快,完全能够满足普通用户的需要。系统采用STM封装,具有外形小巧、方便佩戴等优点,是一款廉价实用的电子产品。本系统目前的不足是能管理的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 隧道灯 驱动电源
关闭