USB串口和RS232串口协议转换接口设计.docx

上传人:b****6 文档编号:3282819 上传时间:2022-11-21 格式:DOCX 页数:23 大小:1.90MB
下载 相关 举报
USB串口和RS232串口协议转换接口设计.docx_第1页
第1页 / 共23页
USB串口和RS232串口协议转换接口设计.docx_第2页
第2页 / 共23页
USB串口和RS232串口协议转换接口设计.docx_第3页
第3页 / 共23页
USB串口和RS232串口协议转换接口设计.docx_第4页
第4页 / 共23页
USB串口和RS232串口协议转换接口设计.docx_第5页
第5页 / 共23页
点击查看更多>>
下载资源
资源描述

USB串口和RS232串口协议转换接口设计.docx

《USB串口和RS232串口协议转换接口设计.docx》由会员分享,可在线阅读,更多相关《USB串口和RS232串口协议转换接口设计.docx(23页珍藏版)》请在冰豆网上搜索。

USB串口和RS232串口协议转换接口设计.docx

USB串口和RS232串口协议转换接口设计

桂林理工大学博文管理学院

毕业设计(论文)

题目:

USB串口和RS232串口协议转换接口设计

二级学院:

专业(方向):

班级:

学生:

指导教师:

 

 

 

2015年5月5日

 

摘要

社会的发展,科技的进步,普通的RS232接口和打印机并行接口已经逐步被淘汰,取而代之的是USB接口,USB接口是一种快速、灵活的总线接口,与其它通信接口比较,它的最大特点是方便使用,这就是USB的主要设计目标。

本文介绍了基于AT89C52单片机开发USB串口和RS232串口协议转换的基本原理和实现方法,详细介绍了该系统的构成和实现方法,并给出了硬件原理图和软件的设计流程图。

本系统是由USB接口芯PDIUSBD12与AT89C52单片机并口通讯编程来实现USB虚拟串口功能,最终可以通过操作这个虚拟串口来完成设备和电脑数据交互。

关键词AT89C52;PIDUSBD12;USB;

 

TheDesignofTemperatureController

Student:

HeDiTeacher:

ChengXiao_hui

Abstract:

Withthesocialdevelopmentandtheadvancementoftechnology,OrdinaryRS232interfacesandprinterparallelinterfacehasbeenphasedout,replacedbyaUSBinterface,USBinterfaceisafast,flexiblebusinterface,andothercommunicationsinterfacecomparison,thebiggestfeatureiseasytouseUSBinterface,whichisthemainUSBdesigngoals.Nowinsomelaptopcomputersandbrandarenolongerequippedwithstandardserialport.However,alargenumberofapplicationdevelopment,especiallyforembeddeddevelopmentmorecloselylinkedwiththeunderlyinghardwaredevelopment,weneedtousetheserialport,sothemarkettherehasbeenalotofUSB-to-serialdevices.USBreasonsowidelyusedisbecauseithasaconnectionissimple,fast,scalable,andhot-swappableoperationuniformstandardsandsoon.Thispaperdescribesthe51microcontrollerbasedhardwaredesignandthesoftwaredevelopmentprocess.ThesystemiscomposedPDIUSBD12USBinterfacechipand51microcontrollerwithparallelcommunicationprogrammingtoachieveUSBvirtualserialportfunction,Finalbyoperatingthevirtualserialporttocompletetheequipmentandcomputerdataexchange.

Keywords:

AT89C52;PIDUSBD12;USB;

 

目 次

绪论

今天的信息普及程度已经非常高了,三个“电”的时代已经从我们身边走过,即电气、电子和现已进入的电脑三个时代,而这里的电脑,通常是指个人计算机,它是由显示器、主板、内存、硬盘、鼠标键盘等组成。

还有一类计算机,大部分人却不怎么熟悉,那就是单片机,亦称微控制器,顾名思义,单片机的最小构成部分只用了一片集成电路,就可以进行简单的控制和运算。

因为它很小的体积,通常它都被藏在被控机械的内部。

它在整个系统中,堪比人类大脑的作用,如果他除了问题,整个设备就瘫痪了。

USB是计算机总线技术期中的一种,在如今的个人计算机上已经是必不可少的了。

我们身边大多数的外部设备都是通过USB口与计算机相连。

鼠标、键盘、游戏手柄、打印机、扫描仪、MP3、数码相机、U盘、移动硬盘及移动光驱等,另外,还有一些我们不太常见的USB设备,例如一些具有USB口的仪表仪器、开发用的调试器、烧录机、USB网卡、USB耳机、USB话筒及USB电话,甚至一些移动电话(手机)也具备USB口。

总之,只要是与计算机通信的外部设备,似乎都可以用USB来连接,这足见USB之强大。

USB接口应用的如此广泛,总是有它的原因的,连接简单、速度快、可扩展性强、支持热插拔操作和标准统一都是它受到大众青睐的原因。

因为USB的各种参数以及数据结构协议的合适都有详细的规定,所以使得市面上生产出来的USB设备的兼容性都非常好。

随着计算机技术的发展,支持热插拔的USB标准接口将取代RS232接口,因此计算机将越来越少配置甚至不配置RS232接口。

在一般的笔记本计算机上,都不再配置标准的串行端口.但是现在社会中还有很多产品都使用到了串口,因而市面出现了大量的USB转串口设备。

 

1系统总体设计方案

1.1方案设计具体思路

本设计是基于AT89C52单片机和PIDUSBD12USB芯片去完成USB串口和RS232串口协议转换接口设计,因为现在市面上大多数笔记本电脑并没有RS232接口,不方便演示,所以需要市场上购买现成的USB转RS232串口线来验证设计是否实现。

1.2方案设计总体框图

 

图1-1系统设计总体框图

 

2硬件部分

2.1主控制芯片AT89C52

在大学的学习过程中,我们就了解过绍AT89C52单片机的内部硬件结构、引脚功能、储存器和其复位电路等基础知识,而在学习过程中我并没有认真的钻研,导致我对AT89C52单片机的认识不够。

在这次的毕业设计中我要对89系列单片机的各种应用特性进行全面的了解,进一步理解本设计的原理。

2.11AT89C52单片机的结构[1]

AT89C52是我们在工作学习中经常见到和用到的一种单片机,其特点是低功耗、高性能。

而且它具有8k可编程FLASH存储器,而它兼容MCS-51芯片正是我选择它的原因。

AT89C52单片机其性价比高的特点,使其在各个领域都发挥着强大的作用。

AT89C52单片机芯片结构框图如图2-1所示

 

图2-1AT89C52结构框图

 

2.12AT89C52管脚说明【1】

目前单片机的发展迅速,AT89C52作为传统的8位单片机,但是其性能比起80年代的8位单片机性能和处理能力以提升百倍有余。

它有40个引脚,其中32个是外部双向输入/输出端口,有2个外中断口,3个16为可编程定时计数器,2个全双工串行通信口,2个读写口线。

由于AT89C52单片机是一个高性能单片机,芯片的引脚有受到限制,所以有的引脚不得不有2个功能。

1)VCC:

供电电压。

2)GND:

接地。

3)P0口:

P0口是一组8位的漏级开路双向I/O口,也就是说地址和数据总线都可以使用这个口。

4)P1口:

P1口是一个带有内部上拉电阻的8位双向I/O口。

当其内部的上拉电阻将端口的电平拉到高时,此时P1口可作为输入口。

5)P2口:

P2口和P1口的内部结构相似,都是带有内部上拉电阻,其功能也与P1口相似。

6)P3口:

P3口和P1/P2一样管脚内部具有上拉电阻作用,8位双向I/O口。

P3口除了P1口和P2口的作用相似之外,更重要的是它还可以用于接于Flash闪速储存器和程序校验控制信号。

2.2单片机AT89C52外围晶振电路

晶振是每个单片机芯片系统中都有的零件,晶体震荡器是他的全称,在单片机系统里,晶振的作用是相当大的,它结合了单片机内部的电路,产生芯片所必须的时钟频率,相当于计算机中CPU的作用,这个时钟基础上承载着单片机的全部指令的执行,如果晶振提供的时钟频率越高,那么单片机的运行速度也就越快,单片机系统中最基本的时钟信号就是由晶振提供的。

通常一个单片机系统只有一个外部晶振在工作,这便于单片机各部分保持同步。

有些通讯系统的基频和射频使用了不相同的晶振,这种情况它是通过电子调整频率的方法使其系统保持同步。

本论文设计晶振为

11.0592MHz,图2-2为晶振电路。

单片机晶振电路,晶振的2边存在两个电容,因为其单片机的晶振工作是必须让其处于并联谐振的状态,谐振电容的组成部分就是由这2个电容构成的。

电容是根据厂家提供的晶振,要求负载电容选出来的值,通俗的说晶振的频率就是在它提供的负载电容下被测出来的,输出频率的误差能得到最大的保障。

同时也能保证温漂的误差。

2个电容的取值不能相差太大,否则会造成谐振的平衡,从而造成晶振不振,电路的工作会受到影响。

图2-2晶振电路

2.3单片机AT89C52外围复位电路

图2-3手动复位电路

为确保单片机系统中电路稳定工作,单片机的复位电路是不可缺少的一部分,单片机在上电开机时或在正常工作中可以会收到外界的干扰而导致程序失去控制的情况下进行复位。

复位作用就是当CPU或者其他零件出现故障或者死机的情况下使其回复到初始状态,并且从这个初始状态重新开始工作,类似于计算机的重启。

复位电路一般有上电复位、手动开关复位和自动复位电路三种,本设计采用的复位电路是手动开关复位,图2-3为手动复位电路。

一般单片机电路正常工作需要电源电压为5V±5%。

由于单片机电路是时序数字电路,需要稳定的时钟脉冲,只有当电源电压超过4.75V低于5.25V以及晶体振荡器开始稳定工作时,复位的信号才被移除,单片机电路重新正常工作。

2.4PIDUSBD12电路

图2-4PIDUSBD12电路

2.41PIDUSBD12芯片概述

PDIUSBD12是PHILIPS生产的一款接口芯片,它最常用作高速的通用并行接口的通信,最重要的是它还支持DMA传输,它极大的方便了开发者,使其在大量不同类型的MCU中选择出最合适的MCU,正是它这种灵活性大大的缩减了开发者的时间和费用,所以它极为适合作为毕业设计的开发。

PDIUSBD12芯片还有一大优点就是完全符合USB1.1版的规范,这点是难能可贵的,这也是大多数人选择它为开发USB接口的芯片的重要原因。

PDIUSBD12采用28PIN脚的设计模式,它有SIE功能用来实现与USB协议层的完整功能。

而且利用PDIUSBD12芯片可以完成微控制器送出的信号到符号USB规定的信号的转换。

2.4.2PIDUSBD12芯片主要特性

1)符合USB1.1版规范

2)高性能USB接口器件集成了电压调整器以及SIEFIFO存储器收发器

3)符合大多数芯片的分类规格

4)可与任何嵌入式芯片实现高速并行接口2M字节/秒

5)直接内存读写DMA操作

6)集成320BYTE多结构FIFO存储器

7)主端点的双缓冲配置增加USB数据吞吐量,进而轻松实现实时数据传输

8)在批量模式和同步模式下均可实现1M字节/秒的数据传输速率

9)具有总线供电能力

10)在挂起的时候可以控制LAZYCLOCK输出

11)可通过软件来控制与USB的连接

12)采用了GoodLink技术连接指示器,在通讯的时候使LED闪烁

13)可编程的时钟频率输出

14)它符合USB电源管理和ACPIOnNOW的要求

15)内部集成了低电压复位和上电复位电路

16)有SO28/TSSOP28封装

2.5电源电路

图2-5电源电路

 

电源电路选择最常用的USB口供电,可以通过USB线插到PC的USB口供电也可以插到手机适配器上面,因为板子的供电电压刚好是5V,也不需要额外的转换电压。

开关是用来控制整个板子的用电开与关。

2.6串口电路

图2-6串口电路

2.61MAX232芯片概述

MAX232芯片是一款兼容RS232标准的串行接口芯片,而且是有业界著名的德州仪器公司生产的。

总所周知,电脑的串口RS232接口与一般单片机MCU的管脚信号电压是不同的,而MAX232芯片就是为了解决这个问题而产生的,MAX232芯片包中包含双组驱动器/接收器,且含有一个电容性电压发生器以便在单5V电源供电时提供相同的电平。

主要特点:

1)只需要单一5V电源工作

2)符合所有RS232技术标准

3)2个驱动器及2个接收器

4)±30V的输入电平

5)低电源电流:

典型值为8毫安

6)符合ANSI标准EIA/TIA-232-E以及ITU推荐标准V.28

7)ESD能够保护大于MIL-STD-883标准的2000伏

3USB1.0协议

3.1USB现状

USB设备在我们身边随处可见,可以说已经与我们的生活息息相关,像我们平时使用的手机,各种移动通信设备,全部都需要与PC的USB通讯。

通过USB的接口,使我们的生活变的更加方便了,U盘可以随身携带我们重要的资料,手机可以说是我们生活中必不可少的东西了,手机的充电和数据传输都必须依赖USB接口。

这个过程在用户看来是非常的简单,不需要安装驱动程序,不需要断掉PC机的电源。

3.2USB简介

UniversalSerialBus是USB的缩写,中文是“通用串行总线”。

它目前应用的最新领域是在计算机领域,而且是目前最近最新型的接口技术。

USB技术在最近几年可以说是飞速发展,从最开始的USB1.0协议全速传输只有12M/S,再到USB2.0协议的传输速度已经达到480M/S,再到最近几年已经得到大众认可的USB3.0协议,其传输速度已经可以达到USB2.0的10倍。

科技日新月异,这几年,随着个人计算机的普及,而个人计算机基本上已经全面支持USB接口,USB成为计算机的标准接口已是大势所趋。

USB设备之所以会被大量应用,主要具有以下优点:

1、可以进行热插拔。

2、携带比较方便。

3、标准规范统一。

3.3USB体系结构

USB是一种的高速串行传输总线,而且支持热拔插。

USB支持两种供电模式,分别是“自供电”和“总线供电”。

在总线供电模式下,USB设备最多可以获得500毫安的电流。

USB2.0最初的设计就非常人性化,它被设计成了向下兼容的模式,就是当有比你协议更加低级的USB接口连接到USB2.0上的时候,USB主机可达到的最高传输速度由该总线上最慢的USB设备来决定的。

“物理连接”、“主机”以及“设备”是USB体系的三个部分。

主机简单点说就是可以搭载USB接口的一个平台,像计算机,OTG设备都可以作为主机。

一个USB系统中有且只能有一个USB主机;设备包括USB功能USBHUB和USB设备,最多可以支持127个设备;我们日常生活中最常使用的USB数据线就是我们所说的物理连接。

在USB1.0系统中要求使用屏蔽的USB数据双绞线。

从0开始作为默认地址一直到128,USB主机最大的地址数就是128,地址0作为默认地址,只有在设备枚举期间临时使用,而它不能被分配给任何一个设备,所以一个USB主机中最大的地址数就是127个。

3.4USB通讯过程

USB中有2个信号线是负责与总线上的设备来进行数据交换的。

而采用轮询的广播机制传输数据,就可以保证由主机发起所有的传输。

在一个USB主机中在任何时刻决不允许有1个以上的数据包同时传输,所以在不同的信号线上所显示的数据包都是同一个。

“令牌包”-“数据包”-“握手包”三个包都是USB所以采用的传输机制,在令牌包中传输的数据都与被广播的令牌包/数据包是一一对应的,这使仅被广播的作出响应得到了保证。

USB传输数据的成功与否是由握手包所决定的。

USB设备和主机端点之间数据传输的模型是管道,共有两种类型的管道:

无格式的流管道和有格式的信息管道。

一旦USB设备上电之后就回简历一个信息管道,这就是控制管道。

USB设备的配置、描述、状态,配置都要经过控制管道来实现。

USB枚举:

在USB体系中的通讯过程占有很重要的位置,它是由一系列标准USB请求组成。

主机通过枚举可以获得USB设备的基本描述信息,如支持的USB版本、VID、PID、设备分类(Class)、最大消耗电流、供电方式、配置数量、传输能力(最大包长度)及各种类型端点的数量。

主机通过PID和VID加载USB设备驱动程序,同时对USB设备进行合适的配置。

USB设备只有经过枚举的才能正常被使用。

对于USB总线供电设备,在枚举完成前最多可从USB总线获取100mA的电流。

USB四种类型的传输:

1)控制传输:

其特点是可靠、非周期性的发起请求或回应,主要用于在USB设备连接时对USB设备进行枚举.

2)批量传输:

用于那些非周期性、打包的、可靠的数据。

对时间要求宽松,传输数据量大,如U盘等

3)中断传输:

用于对时间要求严格、传输小量数据即数据规模较小、速度较低、固定延迟较低的传输,如键盘、鼠标、游戏手柄等。

4)同步传输:

主要用于在设备与主机之间周期性、连续的通信。

对安全性不高的设备,但是要保证数据的实时传输,如USB麦克风。

注意:

这里的中断传输并不不是真正硬件上的中断操作,而是主机采用轮询的方式询问USB设备是否有数据发送,如果有则传输数据,否则NAK响应主机。

3.5USBCDC协议

3.5.1USBCDC协议简介

USB为了实现不同的应用场景,将具有特定属性与服务的一类USB设备划分为一个USBClass。

如果提供相似格式的USB数据流或者相似的与USB主机交换方式,两个设备则被统一在一个USBClass中。

如USB标准就有AudioClass、VideoClass、HIDClass、CommunicationsDeviceClass等用于在USB接口上实现不同的设备接口。

在USB标准协议规范中,有一类专用于USB通讯设备的CDC协议,USB的CDC类是USB数据通信设备类(CommunicationDeviceClassSpecification)的简称。

可以通过USB的CDC协议来实现将USB接口虚拟为其他的通讯接口如串口,ISDN接口、以太网接口等等。

本文就是通过USBCDC串口模型来虚拟串口接口。

CDC协议由根据不同的功能可以分为三个部分:

通讯接口类(CommunicationInterfaceClass)、通讯设备类(CommunicationDevicesClass)、和数据接口类(DataInterfaceClass)。

3.5.2USBCDC类枚举过程

USB设备是怎么检查是否与USB设备连接的呢?

正是通过USB的枚举过程,USB通过检测电源上拉电阻的变化,从而确定USB主机有没有同USB设备连接。

在USB设备里面有一块D12芯片,它内部集成了一个1.5kΩ的电阻连接到电源,这样就可以检测到是否有USB设备连接到主机。

4软件部分

4.1USB程序流程图设计

 

图4-1USB程序流程图

按照USB2.0协议 实现USB枚举过程,主机电脑通过枚举可以获得USB设备的基本描述信息,如支持的 USB 版本、VID 、PID、设备分类(Class)、最大消耗电流、供电方式、配置数量 、传输能力 (最大包长度)及各种类型端点的数量。

4.2主程序流程图

图4-2主程序流程图

单片机通过 PIDUSBD12芯片实现USB虚拟串口功能,并用市场上购买的USB转串口将接收下来的数据发送到PC另外一个串口,然后数码管显示接收字节数,按键可以对数码管清零。

4.3程序初始化

1)串口任务初始化,设置串口通讯参数波特率为:

9600,校验位:

NONE,数据位:

8,停止位:

1。

InitUART();

2)读取D12的ID号。

id=D12ReadID();

3)在连接USB之前先断开USB连接。

UsbDisconnect();

4)USB连接。

UsbConnect();

5)设置配置初始值为0.

6)ConfigValue=0;死循环,主要处理USB数据接收,并通过数码管显示接收字节数,再通过串口发送,同时处理串口接收,并通过USB发送,以及按键处理。

4.3串口下载程序。

使用USB转串口线进行下载程序,USB转串口线都需要安装相应USB驱动程序,在安装驱动程序之前先不要插USB转串口线,安装好驱动并插入USB转串口线后,在电脑上会虚拟出一个串口,这个串口的编号可以在硬件管理器里找到,如下图所示,找到含有“USB-SERIALCH340”的那项,其后面的括号里就是虚拟出来的串口号,在第1步时选择的串口号要与此一致。

4-3驱动

1)该方法适用于可以通过串口进行烧录的单片机,如SST、STC和WINBOND等。

在烧录的时候我遇到了许多问题,在代码调试的时候,出现过有时能烧录,有时又不能烧录的情况,后来通过查找资料,知道了原来是USB转串口的芯片的问题,需要专用芯片的USB转串口。

还有千万不要选择“等于0/0才可以下载,快速启动”,否则下次就烧不进程序了,如果不小心选择了此项并烧录了程序,在下次烧录时请将P1.0和P1.1与地短接后再下载。

3)插上串口线和USB数据线,点“Download/下载”按钮,如果电源开关(位于USB插口旁,标记为PSW)已打开,请关闭一次再打开,程序就可以正常烧录了。

如果烧录不成功,可以试着:

1、多试几次关闭电源后再打开电源;2、重新插一下串口线;3、降低烧录软件里的最高波特率设置;4、重新启动电脑。

5电路板制作步骤

5.1PCB板制作步骤

本设计制作硬件电路在确定电路的正确性可行性之后,开始使用PCB系统设计PCB板,具体分为以下几个步骤:

1)相关参数的设置。

这一步主要设定自动布线参数、自动布参数、板面参数等。

2)PCB板尺寸设计。

3)元器件布局,主要是考虑元器件之间的连接关系,同时考虑电磁兼容性以及元器件的安装空间和散热等问题。

4)手动布线。

布线也可先设定好规则之后进行自动布线,但是一般建议还是进行手动布线。

5)启动PCB设计规则检查DRC,来进行检查布线和元器件摆放是否有问题。

6)板面字符调整。

例如一些元器件标号和板子名称字符,以及一些测点名称字符摆放调整。

7)印刷板电路设计完成以后,整个产品电路板的设计项目就基本上完成。

5.2PCB制作流程图

 

图5.2作PCB板的流程图

6系统调试

6.1硬件电路调试

仔细检查所接电路,按照硬件原理图接线,理论上是能实现的,如果硬件没有正常工作,可以先看单片机是否防止反了,再用万用表看看电源电压是不是正常,复位管脚电压是否正常,再用示波器看看晶振有没有起

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 小学教育 > 语文

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1