(此文档为word格式,下载后您可任意编辑修改!) 1 绪论
1.1 研究背景
通信是指不同的独立系统利用线路互相交换数据,它的主要目的是将数据从一端传送到另一端,实现数据的交换。在现代工业控制中,通常采用计算机作为上位机与下层的实时控制与监测设备进行通讯。现场数据必须通过一个数据收集器传给上位机,同样上位机向现场设备发命令也必须通过数据收集器。串行通信因其结构简单、执行速度快、抗干扰能力强等优点,已被广泛应用于数据采集和过程控制等领域。
计算机与外界的信息交换称为通信。基本的通信方式有并行通信和串行通信两种。串行通信是指一条信息额各位数据被逐位按顺序传送的通信方式。串行通信的特点是:数据位传送,按位顺序进行,最少只需要一根传输线即可完成,成本低但传送速度快,串行通信的距离可以从几米到几千米 。
随着计算机技术尤其是单片微型机技术的发展,人们已越来越多地采用单片机来对一些工业控制系统中如温度、流量和压力等参数进行监测和控制。PC机具有强大的监控和管理能力,而单片机则具有快速及灵和的控制特点,通过PC机的RS-232串行接口与外部设备进行通信,是许多测控系统中常用的一种通信解决方案。而随着USB接口技术的成熟和使用的普及,由于USB 接口有着RS-232(DB-9)串口无法比拟的优点,RS-232(DB-9)串口正在逐步地为USB 接口所替代。而在现在的大多数笔记本电脑中,出于节省物理空间和用处不大等原因,RS-232(DB-9)串口已不再设置,这就约束了基于RS-232(DB-9)串口与PC 机联络的单片机设备的使用范围。当前USB接口逐步取代RS-232(DB-9)串口已是大势所趋,单片机同计算机的USB通信在实际工作中的应用范围也将越来越广。本文所介绍的单片机和PC机的USB通信方法,电路简单,兼容性好,可移植性强,故可作为单片机同计算机的USB通信模块广泛应用于工业和电子产品的开发中。因此研究如何实现PC机与单片机通过USB之间的通信具有非常重要的现实意义。 1.2 国内外研究现状
由于计算机工业自动控制和检测系统越来越多地采用集总分散系统,
1
而主从式是其中最为普遍的一种方式,因此各种各样主从式总线通信系统的方法不断涌现。目前比较常用的有利用IIC总线传输协议设计的主从式总线通信系统,还有的是利用SPI总线传输协议和USB协议以及串口通信等设计的主从式总线通信系统[6,7]。
由于主从式总线通信系统采用的方法众多,因此目前国内外一般是根据实际情况而采用不同的方法去实现主从式通信系统的功能[8]。比如,如果要设计的主从式通信系统只是小范围内传送数据,甚至只是板间传送数据,或者要求使用的IO口很少,而对于数据的抗干扰能力的要求不是很高的话,则采用IIC总线传输协议是最合适不过的了。IIC总线支持任何一种IC制造工艺,并且PHILIPS和其他厂商提供了种类非常丰富的I2C兼容芯片。作为一个专利的控制总线,IIC已经成为世界性的工业标准。每个器件都有一个唯一的地址,而且可以是单接收的器件(例如:LCD驱动器)或可以接收也可以发送的器件(例如:存储器)。发送器或接收器可以在主模式或从模式下操作,这取决于芯片是否必须启动数据的传输还是仅仅被寻址。IIC是一个多主总线,即它可由多个连接的器件控制[9]。
基本的I2C总线规范于20年前发布,其数据传输速率最高为100Kbitss,采用7位寻址。但是由于数据传输速率和应用功能的迅速增加,I2C总线也增强为快速模式(400Kbitss)和10位寻址以满足更高速度和更大寻址空间的需求[10]。IIC总线始终和先进技术保持同步,但仍然保持其向下兼容性。并且最近还增加了高速模式,其速度可达3.4Mbitss。它使得IIC总线能够支持现有以及将来的高速串行传输应用,例如EEPROM和Flash存储器[11]。
而如果需要远距离传输数据,且对数据传送的抗干扰能力要求有点高,则可以使用RS-422或者RS-485协议进行主从式通信系统的设计[12]。另外,USB协议则是一种比较新型、快速、灵活的总线传输方法,此通信系统通常只有一个主机,利用此方法设计的通信息有如下特点:(1)适用范围广泛,适用于数码相机,高速数据采集等多种设备;(2)支持热拔插,且此过程由系统自动完成,无需用户干预;(3)采用菊花链式的星型总线结构,支持多达127个外设同时连接;(4)5Mbps、12Mbps和480Mbps的3种速度模式,可以满足不同外设对速度的要求。USB发展到今天,总共有三种标准:1996年发布的USB1.0,1998年发布的USB1.1以及刚刚发布的最新标准USB2.0,此三种标准最大的差别就在于
2
数据传输率方面,在其他方面也不同程度的改进,总体来说,就目前的USB2.0而言,已经拥有什么出众的性能与传输速率。USB数据线由两对线组成,一对电力线,通过电力线可以为USB设备提供5V电压,允许通过最大电流为500mA,这个数字不算很大,但好在聊胜于无,可以满足一些耗电量较少的设备的需求,通过特殊的USB互联设备,我们还可以用USB口实现双机联网,速度是USB1.1的标准达12Mbps(1.5MBS),可惜仅能进行简单的数据交换,不能称作真正的网络[13,14]。
当所要设计的主从式总线通信系统采用譬如MSP430单片机当主机或者从机时,由于此单片机具有支持SPI的片内串行通信接口,所以可以采用SPI总线传输协议进行设计。SPI是英语Serial Peripheral Interface的缩写,顾名思义就是串行外围设备接口[15]。是Motorola首先在器MC68HCXX系列处理器上定义的[16]。SPI接口主要应用在EEPROM,FLASH,实时时钟,AD转换器,还有数字信号处理器和数字信号解码器之间。SPI是一种高速的,全双工,同步的通信总线,并且在芯片的管脚上只占用四根线,节约了芯片的管脚,同时为PCB的布局上节省空间,提供方便,正是出于这种简单易用的特性,现在越来越多的芯片集成了这种通信协议,比如AT91RM9200。串行外围设备接口SPI是一种同步串行接口,因其硬件功能强,与SPI有关的软件就相当简单,可使MSP430单片机有更多的时间处理其他任务。此时,所设计的系统拥有极低的功耗,丰富的片内外设,卓越的工作性能和方便灵活等优点[17]。 1.3 本课题研究的主要内容
本文研究的内容共分为五个章节,第一章介绍本课题的研究背景和国内外研究现状;第二章介绍串行通信的基本原理;第三章介绍具体USB通信原理;第四章介绍PC机和USB通信的设计,包括两个方面:(1)硬件设计:单片机及外围电路设计;(2)软件设计:单片机的通信控制程序, PC机的通信程序。第五章对本文的总结。
2 串行通信基础
2.1 串口通信的基本知识 2.1.1并行通信与串行通信
微机的信息交换有两种方式进行:串行通信方式和并行通信方式。
3