2011届毕业设计任务书
一、课题名称:基于单片机和CH375的U盘读写控制器设计 二、指导教师:粟慧龙
三、设计内容与要求(小四、宋体) 1、课题概述 (五号、宋体)
随着计算机技术的快速发展,USB存储设备的使用已经非常的广泛,随
着USB规汇范的完善和成熟,USB外设和的各类不断丰富,应用领域也不断扩大。在传统的应用中,USB主要是PC扮演着主机的角色。根据USB的规范,可以看到USB的拓朴结构中居核心地位的是主机,每一次数据传输必须由主机发起和控制。但是随着单片机技术的发展,以及单片机应用领域的日益增长,USB外设的应用也随之扩大,为此在单片机系统中实现对USB外设控制也变得日益迫切。尤其在一些需要转存数据的设备、仪器上提供能够使用USB移动储存设备的接口已经变得非常有必要。本课题的研究目标是:基于单片机和USB总线接口芯片CH375,设计一个可嵌入到相关设备、仪器上的U盘读写控制器,以实现对设备、仪器相关数据的存储。 2、本课题的主要研究内容如下:
1、基于单片机和CH375器件的系统电路的研究;
2、FAT16和FAT32文件系统的研究,以及文件系统的自动识别、切换; 3、U盘的插入和拔出检测;
4、文件的打开、读取、写入、创建、删除; 5、目录的创建和删除,支持多级目录; 6、长文件名、长目录名支持。 四、设计参考资料 参考文献:
1、CH375器件使用手册 2、FAT16和FAT32文件系统
3、《单片机高级教程》,何立民,北京航空航天大学出版社,2000年。 4、《单片机的C语言应用程序设计》,马忠梅,北京航空航天大学出版社, 5、《计算机控制系统》,清华大学出版社。
6、孙霞 基本单片机的大容量数据存储技术的应用研究 微计算机信息 2006 7、张峰峰 嵌入式U盘读写器接口技术和系统设计 桂林电子科技大学 2007
3
8、杨全玖 基本CH375多通道USB接口与PC机通信的实现微计算机信息 2007
4
湖南铁道职业技术学院毕业设计(论文)
摘 要
随着单片机技术的发展,各种嵌入式系统逐渐应用于工作现场的数据采集和控制之中。各种测量仪器检测到的数据常常需要传送到PC机进行数据处理与存档,以充分利用PC机丰富的硬件和软件资源,获得更为完善和强大的数据处理、分析和存储能力。传统PC平台的数据采集卡受PC机插槽数目、地址、中断等硬件和软件资源的,可扩展性较差,安装拆卸困难,成本高。USB总线技术的发展,使得数据传输和采集技术变得简单,易携和方便使用。基于USB总线技术的USB储存设备简称U盘,它具有支持热拔热插,储存量大,耐用和轻巧方便的特点。也正是因为这样,USB发展速度惊人,迅速席卷电子产品世界。基于单片机技术的U盘数据采集是把单片机系统作为主机系统,再利用支持USB总线协议的U盘读写芯片或者模块来完成工业现场的数据采集或者传输。这样便可以把U盘的大容量存储,方便易用的功能从PC机扩展到单片机系统中,可以方便在室外进行大量数据的采集。这类USB接口芯片价格较低、接口方便、灵活性高,针对不同的硬件环境可以配合多种MCU使用。USB接口芯片用以完成USB通信底层的数据链路级交换,并对本地微控制器提供一个并行接口。本设计选用CH375作为USB接口芯片。简单介绍了CH375芯片、单片机STC12C5A60AD、RS232芯片的构造和特点,以实现对设备、仪器相关数据的存储和读取。允许使用现存的体系结构并使固件投资减到最小。这种灵活性减少了开发时间、风险和成本,是开发高效低成本的USB外围设备的一种快捷途径。
关键词:USB总线接口芯片CH375;单片机;RS232;数据读取;数据存储
I
湖南铁道职业技术学院毕业设计(论文)
ABSTRACT
With micro-controller technology development, each kind of embedded system gradually applied in job site of data collection and under control. Various measurement instrument detected data often need to teleport to PC for the data processing and archive, to take full advantage of PC rich hardware and software resources, obtain more perfect and powerful data processing, analysis and storage capacity. Traditional PC platforms of data acquisition card slots by PC number, address, interruption of software and hardware resource constraints, scalability poorer, installation remove difficulties and high cost. USB bus technology development makes the data transmission and acquisition technology becomes simple, easy to carry and convenient use. Based on the USB bus technology USB storage device referred to as U disk, it has support hot pull hot plugging, large storage capacity, durable and legerity convenient features. It is also for this, USB developing at breakneck speed, quickly swept electronics world. Based on single chip microcomputer U dish of data acquisition is the SCM system as host system, then use support USB protocol U dish of literacy chips or module to complete industrial field data collection or transmission. So we can put U dish of mass storage, convenient functions from the PC expanded to SCM system, can go to the lavatory to outside as a lot of data acquisition. This kind of USB interface chip lower prices, interface convenience, flexibility is high, in view of the different hardware environment can cooperate to use a variety of MCU. USB interface chip to finish USB communication at the bottom of the data link level exchange, and to local micro controller provides a parallel interface. This design multi-back CH375 as USB interface chip. Simply introduces CH375 chip, a single chip microcomputer STC12C5A60AD, RS232 chip structures and features, so as to realize the equipment, apparatus, related to the data storage and read. This flexibility reduced the development time, risk and cost, high efficient, low cost is to develop the USB peripherals a quick way.
Key word: USB bus interface chip CH375; Monolithic integrated circuit; RS232; Data read; Data storag
II
湖南铁道职业技术学院毕业设计(论文)
目录
摘 要 ............................................................. I ABSTRACT ......................................................... II 目录 ............................................................... I 第1章 绪 论 .................................................... 1
1.1 单片机和USB的发展现状 .......................................... 1
第2章 总体设计方案 ............................................. 3
2.1硬件总体方案分析 ................................................ 3 2.2硬件方案选择与论证 .............................................. 3
2.2.1控制模块 .................................................................. 3 2.2.2 USB主机模块 ............................................................. 4 2.2.3 串口模块 .................................................................. 4 2.3软件总体方案设计 ................................................ 5
第3章 硬件电路设计 ............................................. 7
3.1控制模块 ........................................................ 7
3.1.1电路设计 .................................................................. 7 3.2 USB主机模块 .................................................... 7
3.2.1电路设计 .................................................................. 8 3.3串口模块 ........................................................ 8
3.3.1串口电路设计 ............................................................. 9 3.4电源模块 ........................................................ 9
3.4.1电源模块电路设计 ........................................................ 9 3.5 按键模块 ....................................................... 10
3.5.1按键模块设计 ............................................................ 10 3.6显示模块 ...................................................... 10
3.6.1显示模块电路设计 ....................................................... 10
第4章 软件模块设计 ............................................ 11
4.1主程序模块 ..................................................... 11 4.2串口模块 ....................................................... 12 4.3显示部分 ....................................................... 12 4.4 按键模块 ....................................................... 12 4.5 U盘操作 ....................................................... 13 4.5 文件系统 ....................................................... 15
第5章 安装与调试 ............................................... 16
I
湖南铁道职业技术学院毕业设计(论文)
5.1系统调试 ....................................................... 16 5.2硬件调试 ....................................................... 16 5.3软件调试 ....................................................... 16 5.4出现的问题及解决办法 ........................................... 17
第6章 总结与展望 ............................................... 18 参考文献 ......................................................... 19 致 谢 ............................................................ 20 附录A ............................................................ 21
A1基于单片机和CH375的U盘读写控制器设计的电路图 .................. 21 A2元件清单 ........................................................ 22 A3基于单片机和CH375的U盘读写控制器设计的PCB图 .................. 23
II
湖南铁道职业技术学院毕业设计(论文)
第1章 绪 论
1.1 单片机和USB的发展现状
单片微型计算机简称单片机,是典型的嵌入式微控制器Micro Controller Unit,常用英文字母的缩写MCU表示单片机,它最早是被用在工业控制领域。单片机由芯片内仅有CPU的专用处理器发展而来。最早的设计理念是通过将大量外围设备和CPU集成在一个芯片中,使计算机系统更小,更容易集成进行复杂的而对体积要求严格的控制设备当中。INTEL的Z80是最早按照这种思想设计出的处理器,从此以后,单片机和专用处理器的发展便分道扬镳。早期的单片机都是8位或4位的。其中最成功的是INTEL的8031,因为简单可靠而性能不错获得了很大的好评。此后在8031上发展出了MCS51系列单片机系统。基于这一系统的单片机系统直到现在还在广泛使用。90年代后随着消费电子产品大发展,单片机技术得到了巨大提高。随着INTEL i960系列特别是后来的ARM系列的广泛应用,32位单片机迅速取代16位单片机的高端地位,并且进入主流市场。目前,高端的32位单片机主频已经超过300MHz,性能直追90年代中期的专用处理器,而普通的型号出厂价格跌落至1美元,最高端的型号也只有10美元。当代单片机系统已经不再只在裸机环境下开发和使用,大量专用的嵌入式操作系统被广泛应用在全系列的单片机上。而在作为掌上电脑和手机核心处理的高端单片机甚至可以直接使用专用的Windows和Linux操作系统。单片机比专用处理器更适合应用于嵌入式系统,因此它得到了最多的应用。事实上单片机是世界上数量最多的计算机。现代人类生活中所用的几乎每件电子和机械产品中都会集成有单片机。手机、电话、计算器、家用电器、电子玩具、掌上电脑以及鼠标等电脑配件中都配有1-2部单片机。而个人电脑中也会有为数不少的单片机在工作。汽车上一般配备40多部单片机,复杂的工业控制系统上甚至可能有数百台单片机在同时工作!单片机的数量不仅远超过PC机和其他计算的总和,甚至比人类的数量还要多。
USB是英文Universal Serial Bus的缩写,中文含义是“通用串行总线”。它是一种串行总线系统,带有5V电压,最多能同时连入127个USB设备,
1
湖南铁道职业技术学院毕业设计(论文)
由各个设备均分带宽。它诞生于1994年,当时是由 PC 界的几位\"巨人\"——康柏,IBM,Intel和Microsoft为了解决传统总线的不足而推广的一种新型串行通讯标准 。随着USB设备的日渐增多,现在PC机均配备有USB接口 ,流行的操作系统也都支持USB ,很多厂商提供USB芯片、USB已进入其发展的黄金时代。与其他总线相比 ,USB有很多优势 ,例如速度快、设备安装和配置简单、连接容易、支持热插拔、占用主机资源少、易于扩展等。短短十几年,USB接口可谓春风得意,市场上每一款主板都带有不少于2个USB接口;外置式大容量存储器也无一例外都使用了USB接口,这些都表明了目前USB技术在该领域所处的统治地位。
随着计算机技术的快速发展,USB存储设备的使用已经非常普遍,USB用于将适用USB的外围设备连接到主机,实现二者之间数据传输的外部总线结构;是一种快速、灵活的总线接口。它最大的特点是易于使用,主要是用在中速和低速的外设。随着USB规范的完善和成熟,USB外设的种类不断丰富,应用领域也不断扩大。在传统的应用中,主要是PC扮演着主机的角色。根据USB的规范,可以看到在USB的拓朴结构中居于核心地位的是主机,每一次的数据传输都必须由主机发起和控制。但是随着单片机产品应用领域的日益增长,USB外设的应用范围也随之扩大,为此在单片机系统中实现对USB外设控制也变得日益迫切。因此在一些需要转存数据的设备,仪器上使用USB移动存储设备接口的芯片便相继产生了,CH375就是其中之一,它是一个USB总线的通用接口芯片,支持HOST主机方式和SLAVE设备方式。如今,USB技术已经越来越普及和成熟,低成本、高稳定性、较高的数据传输速率和即插即用的方便性,使其备受硬件厂商的青睐。随着数据采集和单片机用户对移动存储的需求越来越大,具有USB接口的存储设备以其优异的性价比和灵活性常用来进行数据的存储和交换,所以在单片机系统中实现对优盘或移动硬盘的直接读写是非常有价值的。
本文介绍了单片机STC12C5A60AD和USB总线的通用接口芯片CH375,并在此基础上加入了按键模块、显示模块。一来实现对U盘读写控制。方法简单、便于操作、综合成本比较低,具有较大的推广应用价值。
2
湖南铁道职业技术学院毕业设计(论文)
第2章 总体设计方案
2.1硬件总体方案分析
单片机的集成度高,通用性好,特别是它具有体积小,重量轻,能耗低,价格便宜,可靠性高,抗干扰能力强和使用方便等独特的优点使其应用日趋广泛。CH375是一个USB总线的通用接口芯片,支持主机方式和设备方式。在本地端,CH375具有八位数据总线和读、写、片选控制线以及中断输出,可以方便地挂接到单片机/DSP/MCU/MPU等控制器的系统总线上。所以本次设计的U盘读写控制器是以STC12C5A60AD单片机、CH375芯片为核心来实现其功能。硬件系统图包括五大模块,如图2.1
按键模块 显示模块 电源模块
控制模块 串口模块 CH375模块 图2.1硬件系统图
2.2硬件方案选择与论证
2.2.1控制模块
方案一:采用数字逻辑电路制作,用IC拼凑焊接实现。其特点是直接用现成的IC组合而成,简单方便,但由于使用的器件较多,连线复杂,体积大,功耗大,焊点和线路较多将使成品稳定度与精确度大打折扣。
方案二:采用FPGA技术。FPGA可以实现各种复杂的逻辑功能,规模大,密
3
湖南铁道职业技术学院毕业设计(论文)
度高,利用EDA软件编程,下载实现。将所有器件集成在一块芯片上,体积大大减小的同时还提高了稳定性,并且可应用EDA软件仿真,调试,易于进行功能扩展,但是其成本高,芯片引脚较多,实物硬件电路板布线复杂,硬件制作难度较大。
方案三:采用单片机实现,通过软件编程,将程序用编程器写入到单片机芯片上,系统的稳定度较好,外围电路较少,开发及制作成本低,能较大程度地利用资源,适合实际应用。
基于以上分析拟定方案三。 2.2.2 USB主机模块
方案一:使用带USB接口的专用微控制器(MCU),这类MCU有自己的系统结构和指令,从底层专用于USB控制,这类MCU的开发需要用专用工具,且性能有限;
方案二:使用带USB接口的通用MCU,这类MCU只是基于一般芯片内核增加了USB接口,这类MCU的开发语言和开发工具都和一般MCU相似,因而较易入手,但其缺点是成本较高;
方案三:使用纯粹的USB接口芯片,通过外加MCU对其控制。这类USB接口芯片价格较低、接口方便、灵活性高,针对不同的硬件环境可以配合多种MCU使用,如单片机、DSP、FPGA都可以。
综合各方面因素考虑,本设计选用方案三,即采用USB接口芯片CH375。 2.2.3 串口模块
方案一:.RS-485总线。RS-485采用平衡发送和差分接收,因此具有抑制共模干扰的能力。加上总线收发器具有高灵敏度,能检测低至200mV的电压,故传输信号能在千米以外得到恢复。 适合远距离传输。
方案二:RS-232总线。RS-232C主要用来定义计算机系统的一些数据终端设备(DTE)和数据电路终接设备(DCE)之间的电气性能。例如CRT、打印机与CPU的通信大都采用RS-232C接口,MCS-51单片机与PC机的通信也采用这种类型的接口。由于STC系列单片机本身有一个全双工的串行接口,因此该系列单片机使用RS-232C串行接口总线非常方便。RS-232C串行接口总线适用于设备之间的通信距离不大于15 m,传输速率最大为20 kb/s。
综上所述,选择方案二。
4
湖南铁道职业技术学院毕业设计(论文)
2.3软件总体方案设计
一个应用系统要完成各项功能,首先必须有较完善的硬件作保证。同时必须得到应设计合理的软件支持,尤其是微机应用告诉发展的今天,许多由硬件完成的工作,都可通过软件编程而代替。甚至有些必须采用很复杂的硬件电路才能完成的工作,用软件编程有时会变得很简单,如数字滤波,信号处理等。因此充分利用其内部的硬件资源与软件资源,本设计采用C语言程序设计方法进行软件编程。本系统的软件主要包括输入模块、显示模块、串口通讯模块和CH375处理模块。
STC12C5A60AD单片机中包含处理器(CPU)、程序存储器(Flash)、数据存储器(SRAM)、定时/计数器、UART串口、串口2、I/O接口、高速A/D转换、SPI接口、PCA、看门狗及片内R/C振荡器和外部晶体振荡电路等模块。STC系列单片机几乎包含了数据采集和控制中所需的所有单元模块,可称得上一个片上系统。
单片机通过八位并口对CH375芯片进行读写,所有操作码都是由一个命令码、若干个输入数据和若干个输出数据组成,部分命令不需要输入数据,部分命令没有输出数据。命令操作步骤如下:
①.在A0=1时向命令端口写入命令代码;
②.如果该命令具有输入数据,则在A0=0时依次写入输入数据,每次一个字节;
③.如果该命令具有输出数据,则在A0=0时依次读取输出数据,每次一个字节;
④.命令完成,可以暂停或者转到①继续执行下一个命令。
CH375芯片专门用于处理USB通讯,在检测到USB总线的状态变化时或者命令执行完成后,CH375以中断方式通知单片机进行处理。
5
湖南铁道职业技术学院毕业设计(论文)
U盘是否插入 开始 打开文件 读取文件 关闭文件 保存数据 结束 图2.2软件流程图
6
湖南铁道职业技术学院毕业设计(论文)
第3章 硬件电路设计
3.1控制模块
单片机的工作就是执行用户程序,指挥各部分硬件完成既定任务。该电路包括单片机、外部晶振电路和复位电路。STC12C5A60AD单片机是宏晶科技生产的单时钟/ 机器周期(1T)的单片机,是高速/ 低功耗/超强抗干扰的新一代8051 单片机,指令代码完全兼容传统8051,但速度快8-12 倍。内部集成MAX810 专用复位电路,2 路PWM,8 路高速10 位A/D 转换(250K/S),针对电机控制,强干扰场合。 3.1.1电路设计
图3.1控制模块电路设计图
3.2 USB主机模块
CH375 是USB总线的通用接口芯片,支持USB-HOST主机方式和USB-DEVICE/SLAVE设备方式。在本地端,CH375具有8位数据总线和读、写、片选
7
湖南铁道职业技术学院毕业设计(论文)
控制线以及中断输出,可以方便地挂接到单片机/DSP/MCU/MPU等控制器的系统总线上。在USB主机方式下,CH375还提供了串行通讯方式,通过串行输入、串行输出和中断输出与单片机/DSP/MCU/MPU 等相连接。
CH375的USB 主机方式支持常用的USB全速设备,外部单片机可以通过CH375 按照相应的USB 协议与USB 设备通讯。CH375 还内置了处理Mass-Storage 海量存储设备的专用通讯协议的固件,外部单片机可以直接以扇区为基本单位读写常用的USB 存储设备(包括USB 硬盘/USB 闪存盘/U 盘) 3.2.1电路设计
图3.2 USB主机模块电路
3.3串口模块
在计算机系统中,CPU和外部有两种通信方式:并行通信和串行通信。串行通信,即数据一位一位的顺序传送。本设计采用的是串行通信。串行通信接口标准经过使用和发展,目前已经有几种。但都是在RS-232标准的基础上经过改进而形成的。所以,以RS-232C为主来讨论。RS-232C标准是美国EIA(电子工业联合会)与BELL等公司一起开发的1969年公布的通信协议。它适合于数据传输速率在0~20000b/s范围内的通信。这个标准对串行通信接口的有关问题,如信号线功能、电器特性都作了明确规定。由于通行设备厂商都生产与RS-232C制式兼容的通信设备,因此,它作为一种标准,目前已在微机通信接口中广泛采用。
8
湖南铁道职业技术学院毕业设计(论文)
3.3.1串口电路设计
图3.3串口电路图
MAX232芯片是MAXIM 公司生产的,本器件包含2驱动器、2接收器和一个电压发生器电路提供TIA/EIA-232-F电平。它符合TIA/EIA-232-F标准,每一个接收器将TIA/EIA-232-F电平转换成5-V TTL/CMOS电平。每一个发送器将TTL/CMOS电平转换成TIA/EIA-232-F电平。所以采用此芯片接口串行通信系统只需单一的+5V电源就可以了。对于没有-12~+12V 的场合,其适应性更强.加之其价格适中,硬件接口简单,所以被广泛采用。
3.4电源模块
电子产品中,常见的三端稳压集成电路有正电压输出的78 系列和负电压输出的79系列。顾名思义,三端IC是指这种稳压用的集成电路,只有三条引脚输出,分别是输入端、接地端和输出端。
用78/79系列三端稳压IC来组成稳压电源所需的外围元件极少,电路内部还有过流、过热及调整管的保护电路,使用起来可靠、方便,而且价格便宜。该系列集成稳压IC型号中的78或79后面的数字代表该三端集成稳压电路的输出电压。 78系列的稳压集成块的极限输入电压是36V,最低输入电压为输出电压的3-4V以上。 3.4.1电源模块电路设计
图3.4电源模块设计
9
湖南铁道职业技术学院毕业设计(论文)
3.5 按键模块
式按键是指用i/0口线构成的单个按键电路,每个式按键单独占有一根i/0口线,每根i/0口线上按键的工作状态不会影响其他i/o口线的工作状态,即一个按键对应着-个端口输入,每一个按键都有一个按键电路来判断其是否按下。 上拉电阻确保按键松开时,i/o口线有确定的高电平。当i/o口线内部有上接电阻时,外电路可以不配置上拉电阻,可以采用查询方式或中断方式读取按键。式按键具有硬件和软件相对简单的特点。 3.5.1按键模块设计
图3.5按键模块电路图
3.6显示模块
LED半导体数码管是组合LED中用途最广泛的一种。数字时钟、数字仪表以及其他数字显示中都大量采用。它具有体积小、功耗低、寿命长、响应速度快、显示清晰、易于与集成电路匹配等优点。适用于数字化仪表及各种终端设备中作数字显示器件半导体数码管是以发光二极管为基础,用多个发光管组成数字的各个笔段,并按共阴极或共阳极的方式连接。然后封装在同一管壳之内制成的。 3.6.1显示模块电路设计
图3.6显示模块电路设计
10
湖南铁道职业技术学院毕业设计(论文)
第4章 软件模块设计
4.1主程序模块
单片机电路作为整个系统的核心控制部分,主要是完成与其他电路的接口,从而获得数据进行处理,将处理的结果采用某种方式表示出来,比如显示或报警。单片机的接口电路非常简单,分别采用单片机的一般I/O口实现与其他电路的连接。通过读取P1.3~P1.0的状态读取按键情况;通过P0.4~P0.7控制显示模块。流程图如下所示:
目录是否打开 开始 系统初始化 CH375初始化 U盘检测 检测U盘是否准备就绪? 获取磁盘信息 枚举文件 按键操作U盘结束 图4.1 主机模块流程图
11
湖南铁道职业技术学院毕业设计(论文)
4.2串口模块
PC机通过RS232接口下载程序,向STC单片机发送数据。串口模块包括串口初始化函数、串口中断处理函数、串口发送字节函数、串口发送回车、换行函数、串口发送字符串函数、串口发送数值、串口发送调试信息函数等。串口模块用到的寄存器包括定时/计数器工作方式寄存器TMOD,定时/计数器控制寄存器TMOD,串行口控制寄存器SCON,专用寄存器IE。串口模块流程图如下:
图4.2串口模块流程图
4.3显示部分
P0.4~P0.7控制显示模块,显示模块采用动态扫描的方式。所谓动态扫描显示即轮流向各位数码管送出字形码和相应的位选,利用发光二极管的余辉和人眼视觉暂留作用,使人的感觉好像各位数码管同时都在显示。
4.4 按键模块
系统的输入部分为按键扫描。按键电路直接与单片机的数据I/O口进行连接。P0.0~P0.3是用来控制四个按键。
12
湖南铁道职业技术学院毕业设计(论文)
开始
S1 键盘扫描 是否有键按下 S2 S3 S4 修改 删除 关闭 创建 结束 图4.3键盘输入流程图
4.5 U盘操作
CH375芯片占用两个地址位,当A0 引脚为高电平时选择命令端口,可以写入命令;当A0引脚为低电平时选择数据端口,可以读写数据。
单片机通过8 位并口对CH375 芯片进行读写,所有操作都是由一个命令码、若干个输入数据和若干个输出数据组成,部分命令不需要输入数据,部分命令没有输出数据。
CH375芯片专门用于处理USB 通讯,在检测到USB 总线的状态变化时或者命令执行完成后,CH375以中断方式通知单片机进行处理。
13
湖南铁道职业技术学院毕业设计(论文)
开始 系统初始化 查询中断 U盘是否插入 U盘复位/加载 查询FAT文件系统 打开U盘指定文件 结束 图4.4读U盘数据软件流程图
文件级子程序库的所有API 在调用后都有操作状态返回,但不一定有应答数据。有关API 参数的说明可以参考CH375HF.H,主要子程序如下:
初始化CH375 芯片:CH375Init 查询U 盘是否准备好:CH375DiskReady 查询U 盘容量:CH375DiskSize
查询U 盘信息(总容量及剩余容量):CH375DiskQuery 打开文件:CH375FileOpen
枚举或者搜索文件:CH375FileEnumer 关闭文件:CH375FileClose 新建文件:CH375FileCreate 删除文件:CH375FileErase
以扇区为单位从文件读数据:CH375FileReadX 以扇区为单位向文件写数据:CH375FileWriteX 以扇区为单位移动文件指针:CH375FileLocate
查询文件属性(属性/日期/时间/长度):CH375FileQuery
14
湖南铁道职业技术学院毕业设计(论文)
设置文件属性(属性/日期/时间/长度):CH375FileModify 以字节为单位从文件读数据:CH375ByteRead 以字节为单位向文件写数据:CH375ByteWrite 以字节为单位移动文件指针:CH375ByteLocate
4.5 文件系统
FAT 是Microsoft 较早推出的文件系统,具有高度的兼容性,目前仍然广泛应用于个人电脑尤其是移动存储设备中,FAT 由引导扇区、FAT1 表、FAT2 表、目录和文件区组成(其中FAT2 表是FAT1 表的备份)。磁盘的管理是以扇区为单位的,而移动存储设备则是以块为单位的,FAT 将块映射成扇区,原理相同,FAT 将磁盘空间以一定数目的扇区为单位进行划分,这样的单位成为\"簇\"。通常情况下,每扇区512 字节的原则是不变的,簇的大小一般是2n(n 为整数)个扇区的大小。所以以簇为单位而不以扇区为单位进行磁盘的分配,是因为当区分容量较大时,采用512 字节的扇区管理,会增加FAT 表的项数和大文件存取的消耗,使文件系统效率不高。
引导扇区DBR(DOS Boot Record)通常占用分区的第0 扇区,共512 字节,FAT 表紧随其后。DBR 的第一部分是一个0x86 跳转指令、厂商标志和操作系统版本号,接下来的从偏移0x0B 开始的是一段描述能够使可执行引导代码找到相关参数的消息,通常称之为BPB。最后是引导程序代码以及扇区结束标志。BPB 中记录了扇区大小、簇的扇区数、保留扇区数、FAT 表大小和文件系统类型等重要参数,用于文件的索引和定位计算。
15
湖南铁道职业技术学院毕业设计(论文)
第5章 安装与调试
5.1系统调试
系统调试包括硬件调试和软件调试,而且两者是密不可分的。我们设计好的硬件电路和软件程序,只有经过联合调试,才能验证其正确性;软硬件的配人情况以及是否达到设计任务的要求,也只有经过调试,才能发现问题并加以解决、完善。
5.2硬件调试
硬件调试分单元电路调试和联机调试,单元电路试验在硬件电路设计时已经进行,这里的调试只是将其制成印刷电路板后试验电路是否正确,并排除一些加工工艺性错误(如错线、开路、短路等)。这种调试可单独模拟进行,也可通过开发装置由软件配合进行,硬件联机调试则必须在系统软件的配合下进行。
5.3软件调试
软件调试一般包括分块调试和联机调试两个阶段。程序的分块调试一般在单片机开发装置上进行,可根据所调程序功能块的入口参量初值编制一个特殊的程序段,并连同被调程序功能块一起在开发装置上运行;也可配合对应硬件电路单独运行某程序功能块,然后检查是否正确,如果执行结果与预想的不一致,可以通过单步运行或设置断点的方法,查出原因并加以改正,直到运行结果正确为止。这时该 程序功能块已调试完毕,可去掉附加程序段。其它程序功能块可按此法进行调试。程序联机调试就是将已调试好的各程序功能块按总体结构联成一个完整程序,在所研制的硬件电路上运行。从而试验程序整体运行的完整性、正确性和与硬件电路的配合情况。在联调中可能会有某些支路上的程序、功能块因受条件制约而得不到相应的输入参数,这时,调试人员应创造条件进行模拟调试。在联调中如发现硬件问题也应及时修正,直到单片机系统的软件、硬件全部调试成功为止。系统调试完成后,还要进行一段时间的试运行,从而检验系统的稳定性和抗干扰能力,验证系统功能是否达到设计要求,是否达到预期的效果。
16
湖南铁道职业技术学院毕业设计(论文)
5.4出现的问题及解决办法
1.连接到计算机没有反应
当单片机控制CH375执行CMD_SET_USB_MODE命令,选择模式2后,首次连接计算机,计算机就应该提示找到新硬件,否则应该检查CH375是否正常工作。如果确认单片机端没问题,那么可以用万用表测量CH375的UD+和UD-引脚,也就是USB信号线,应该UD+为3V以上,UD-为0.4V以下,否则说明CH375未工作或者未收到CMD_SET_USB_MODE命令,只有模式1和2会导致UD+上拉到3V电压以上。
2.连接到计算机,无法安装驱动,提示未知设备
1、CH375的GND以及单片机的GND必须与USB的GND可靠地连接,USB的VBUS/+5V可以不连接。
2、USB的D+和D-信号线接反,导致通讯失败,USB线4个,分别是+5V,D-,D+,GND,顺序不能错。
3、USB信号线必须用标准的USB线,不能用普通排线等代替,D+和D-布线要平行,附近铺地减少干扰。
4、由于CH37X内置了USB电阻,所以外部电路中D+和D-不需要串电阻,如果一定要串也不能大于5欧姆。
5、建议调试初期不要设置USB-ID,也就是单片机不要执行CMD_SET_USB_ID 命令,等调通后再尝试修改。
3.计算机成功安装驱动程序,但是无法进行任何USB通讯
通常是单片机未收到或者未处理USB中断,驱动的安装与初始化是由CH372和CH375内置USB固件实现的,不需要单片机的任何干预,而USB数据通讯需要由单片机收到USB中断并由程序实现
17
湖南铁道职业技术学院毕业设计(论文)
第6章 总结与展望
此次毕业设计是我们从大学毕业生走向未来工程师重要的一步。从最初的选题,查找资料、绘图、制作PCB板子直到完成设计。其间老师的指导与同学交流,反复修改图纸,每一个过程都是对自己能力的一次检验和充实。
通过这次实践,我了解了单片机读写U盘的用途及工作原理,熟悉了单片机读写U盘的设计步骤,锻炼了工程设计实践能力,培养了自己设计能力。此次毕业设计是对我专业知识和专业基础知识一次实际检验和巩固,同时也是走向工作岗位前的一次热身。
毕业设计收获很多,比如学会了查找相关资料相关标准,分析数据,提高了自己的绘图能力,懂得了许多经验公式的获得是前人不懈努力的结果。同时,仍有很多课题需要后辈去努力去完善。
但是毕业设计也暴露出自己专业基础的很多不足之处。比如缺乏综合应用专业知识的能力,对材料的不了解,等等。这次实践是对自己大学三年所学的一次大检阅,使我明白自己知识还很浅薄,虽然马上要毕业了,但是自己的求学之路还很长,以后更应该在工作中学习,努力使自己 成为一个对社会有所贡献的人。
本次设计的系统还有不少缺陷,但是我认为收获最大的是学习到了一种方法,在面对自己不了解的领域怎样动手的方法。在老师的指导、自己的努力和我们组共同研究下,完成了本次设计。
18
湖南铁道职业技术学院毕业设计(论文)
参考文献
[1]马 伟. 计算机USB系统原理:北京航空航天大学出版社,2004 [2]汤晓丹. 计算机操作系统:西安电子科技大学出版社,2000 [3]何立民. 单片机高级教程:北京航空航天大学出版社,2000
[4]马忠梅. 单片机的C语言应用程序设计:北京航空航天大学出版社,2003 [5]张峰峰. 嵌入式U盘读写器接口技术和系统设计:桂林电子科技大学,2007 [6]杨全玖. 基本CH375多通道USB接口与PC机通信的实现:微计算机信息,2007 [7]孙 霞. 基本单片机的大容量数据存储技术的应用研究:微计算机信息,2006 [8] CH375中文技术手册
[1] horse wei. Computer USB system principle: Beijing university of aeronautics and press, 2004
[2]. ShangXiaoDan computer operating system: xian university of electronic science and technology press, 2000
[3]. HeLiMin microcontroller advanced tutorial: Beijing university of aeronautics and press, 2000
[4]. MaZhongMei SCM C language program design: Beijing university of aeronautics and press, 2003
[5]. ZhangFengFeng embedded U disk literacy device interface technology and system design: guilin university of electronic technology, 2007
[6] YangQuanJiu. Basic CH375 multi-channel USB interface with the PC of communication: micro computer information, 2007
[7] sun chardonnay. Basic single-chip microcomputer high capacity data storage technology application research: micro computer information, 2006
19
湖南铁道职业技术学院毕业设计(论文)
致 谢
大学三年学习时光已经接近尾声,在此我想对我的父母、亲人们,我的母校,我的老师和同学们表达我由衷的谢意。感谢我的家人对我大学三年学习的默默支持;感谢我的母校湖南铁道职业技术学院给了我大学三年继续深造的机会,让我能继续学习和提高;感谢我的老师和同学们三年来的关心和鼓励,老师们课堂上的激情洋溢,课堂下的谆谆教诲,同学们在学习中的认真热情,生活上的热心主动,所有这些都让我的三年充满了感动。这次毕业论文设计我得到了很多老师和同学的帮助,其中我的论文指导老师粟慧龙对我的关心和支持尤为重要。粟老师多次询问研究进程,并为我们指点迷津,帮助我们开拓研究思路,精心点拨、热忱鼓励。粟慧龙老师一丝不苟的作风,严谨求实的态度,踏踏实实的精神,将给以终生受益无穷之道。对粟老师的感激之情是无法用言语表达的。同时本文也参考了大量的文献资料,在此,向各学术界的前辈们致敬!
20
湖南铁道职业技术学院毕业设计(论文)
附录A
A1基于单片机和CH375的U盘读写控制器设计的电路图
21
湖南铁道职业技术学院毕业设计(论文)
A2元件清单
序号 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 27 18 19 20 21 22 23 24 25 元器件代号 R1、R16~R19 R2 R5 R3、R4 R6~R13 R20~R27 R40 C1、C2 C3 C4、C5 C6、C12~C16 C7 C8、C9 C10 C11 Y1 Y2 U1 U2 U3 U4 D1、D9 DB9 Q1~Q4 S1~S5 LED1 名称型号及参数 电阻10K 电阻1K 电阻22 电阻4.7K 电阻620 电阻1.5k 瓷片电容30pF 电解电容10uF 瓷片电容20pF 电解电容1uF 电解电容0.47uF 瓷片电容104 电解电容100uF 瓷片电容103 晶振12M 晶振22.1184M STC12C5A60AD芯片 USB芯片CH375 三端稳压器7805 MAX232芯片 发光二极管 9针串口 PNP三极管 点触开关 SM410361K数码显示管 总计 5个 2个 2个 8个 8个 1个 2个 1个 2个 6个 1个 2个 1个 1个 1个 1个 1个 1个 1个 1个 2个 1个 4个 5个 1个
22
湖南铁道职业技术学院毕业设计(论文)
A3基于单片机和CH375的U盘读写控制器设计的PCB图
23
因篇幅问题不能全部显示,请点此查看更多更全内容