"基于单片机的串口通信模块设计及其在工业控制中的应用"

1 下载量 12 浏览量 更新于2024-01-05 收藏 713KB DOCX 举报
本次设计旨在基于单片机实现串口通信模块,以实现上位机与下层实时控制与监测设备之间的数据传输与交换。串行通信由于其结构简单、执行速度快且抗干扰能力强等特点,在数据采集和过程控制等领域得到广泛应用。 本设计的基础是计算机与外界的信息交换,其中并行通信和串行通信是根本的通信方式。串行通信是指将一条信息的各位数据逐位按顺序传送的通信方式。与并行通信相比,串行通信的特点是数据位传送按位顺序进行,只需要一根传输线,成本相对较低但传输速度较快,而且串行通信可以实现的距离范围从几米到几千米不等。 随着计算机技术和单片微型机技术的发展,越来越多的工业控制系统采用单片机来监测和控制温度、流量、压力等参数。PC机具备强大的监控和管理能力,而单片机具有快速和灵活的控制特点。通过PC机的RS-232串行接口与外部设备进行通信,是许多测控系统常用的通信方案。 由于USB接口技术的成熟和广泛使用,USB接口也逐渐成为替代RS-232串口的选择。因此,本设计将考虑两种通信接口的设计方案。首先,对RS-232串口通信模块进行设计,实现单片机与PC机之间的数据传输。然后,针对USB接口的特性和需求,设计USB接口模块,以实现高速的数据传输。通过这两个模块的设计与实现,可以满足不同环境和需求下的通信应用。 在设计中,要考虑到通信的稳定性和可靠性。通信过程中,需要对数据进行检错和纠正,以保证数据传输的准确性。为此,本设计将采用CRC校验算法对发送和接收的数据进行校验,以检测和纠正数据传输中的错误。 另外,为了提高系统的性能和可扩展性,本设计将采用多线程编程技术,利用单片机丰富的IO口资源进行数据的同时读取和写入,提高通信效率。同时,在硬件设计方面,要考虑到电路的布局和干扰抑制,以提高系统的稳定性和抗干扰能力。 最后,为了验证通信模块的设计是否有效和可靠,在设计完成后,将进行实际的通信测试,通过发送和接收不同的数据进行功能验证。测试结果将进行数据分析和对比,以评估系统的性能和可靠性。 总之,本次基于单片机的串口通信模块设计旨在实现数据的传输与交换,为工业控制系统提供可靠和高效的通信解决方案。通过对RS-232串口和USB接口的设计与实现,考虑通信的稳定性和可靠性,并结合多线程编程技术和电路布局的优化,可以提高系统的性能、抗干扰能力和可扩展性。通过通信测试和数据分析,可以验证设计的有效性和可靠性,为工业控制系统的应用提供技术支持和参考。
2023-02-27 上传
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 国内外研究现状 由于计算机工业自动控制和检测系统越来越多地采用集总分散系统,而主从式是其中最 为普遍的一种方式,因此各种各样主从式总线通信系统的方法不断涌现。目前比较常用 的有利用IIC总线传输协议设计的主从式总线通信系统,还有的是利用SPI总线传输协议 和USB协议以及串口通信等设计的主从式总线通信系统[6,7]。 由于主从式总线通信系统采用的方法众多,因此目前国内外一般是根据实际情况而采 用不同的方法去实现主从式通信系统的功能[8]。比如,如果要设计的主从式通信系统只 是小范围内传送数据,甚至只是板间传送数据,或者要求使用的I/O口很少,而对于数据 的抗干扰能力的要求不是很高的话,则采用IIC总线传输协议是最合适不过的了。IIC总 线支持任何一种IC制造工艺,并且PHILIPS和其他厂商提供了种类非常丰富的I2C兼容芯 片。作为一个专利的控制总线,IIC已经成为世界性的工业标准。每个器件都有一个唯一 的地址,而且可以是单接收的器件(例如:LCD驱动器)或可以接收也可以发送的器件( 例如:存储器)。发送器或接收器可以在主模式或从模式下操作,这取决于芯片是否必 须启动数据的传输还是仅仅被寻址。IIC是一个多主总线,即它可由多个连接的器件控制 [9]。 基本的I2C总线规范于20年前发布,其数据传输速率最高为100Kbits/s,采用7位寻址 。但是由于数据传输速率和应用功能的迅速增加,I2C总线也增强为快速模式(400Kbit s/s)和10位寻址以满足更高速度和更大寻址空间的需求[10]。IIC总线始终和先进技术 保持同步,但仍然保持其向下兼容性。并且最近还增加了高速模式,其速度可达3.4Mbi ts/s。它使得IIC总线能够支持现有以及将来的高速串行传输应用,例如EEPROM和Flash 存储器[11]。 而如果需要远距离传输数据,且对数据传送的抗干扰能力要求有点高,则可以使用R S-422或者RS- 485协议进行主从式通信系统的设计[12]。另外,USB协议则是一种比较新型、快速、灵 活的总线传输方法,此通信系统通常只有一个主机,利用此方法设计的通信息有如下特 点:(1)适用范围广泛,适用于数码相机,高速数据采集等多种设备;(2)支持热拔 插,且此过程由系统自动完成,无需用户干预;(3)采用菊花链式的星型总线结构,支 持多达127个外设同时连接;(4)5Mbps、12Mbps和480Mbps的3种速度模式,可以满足不 同外设对速度的要求。USB发展到今天,总共有三种标准:1996年发布的USB1.0,1998年 发布的USB1.1以及刚刚发布的最新标准USB2.0,此三种标准最大的差别就在于数据传输 率方面,在其他方面也不同程度的改进,总体来说,就目前的USB2.0而
2023-02-27 上传
设计内容和要求 1.1设计内容 本设计采用AT89S52单片机以及MAX232通信芯片配合使用与上位机(计算机)进行串口通讯,根据上位机所发送的不同请求数据来判断计算机所要求单片机所返回的数据。上位机软件采用串口调试助手,在串口调试助手发送区输入相应字符,然后点击发送,串口调试助手软件将数据传送到计算机串口处,采用串口连接线将计算机串口信号传送至MAX232芯片,再通过电平转换将RS232信号转换为单片机所能识别的TTL信号,然后将该信号传输到单片机串行口,将数据传送到单片机内部寄存器进行相应处理。 1.2功能要求: 通过上位机串口调试软件给单片机发送命令,单片机接收到所发送的命令后,进行比较处理,确定上位机信息内容后,返回上位机所请求的数据。具体通信波特率和校验方法设置为: 通信波特率:9600bps; 校验方式:无校验; 数据位:8位; 停止位:1位。 具体发送和接收要求为: 首先上位机发送请求命令,当单片机接送到上位机的请求命令后,判断上位机是何数据,然后给出相应的返回数据,具体发送和接收的数据如下表所示: 序号 上位机发送数据 上位机接收数据 1 1 "What do you plan to do this Friday?" 2 2 "I plan to go to the concert." 3 3 "What are you doing next week?" 4 4 "I'm thinking of going to my grandma's" 5 其他字符 "Please select a character '1','2','3','4'!" 单片机串口通讯设计全文共16页,当前为第1页。 单片机串口通讯设计全文共16页,当前为第1页。 系统总体结构 2.1功能模块描述 本设计为上位机与单片机通讯,单片机采用UART串行口,计算机采用串口,考虑到单片机串行口输出的是TTL电平信号,而计算机串口输出的是RS232信号,两种信号存在不兼容的问题,因此需要进行电平转换以达到电平兼容的目的,所以我们还需要选择另外一种具有TTL信号到RS232信号转换功能的芯片,本设计中要求采用交流9V电源供电,而我们单片机以及其他芯片工作所需要的电压为直流,因此这里我们必须将电压性质转化一下,否则芯片将不能正常工作。 整流的方法有半波整流和桥式整流两种方法,半波整流效率较低,只有输入电压的0.45倍,输入交流电压为9V,半波整流后输出的电压仅为4.05V,而我们单片机正常工作的电压为直流5V,不能满足要求,因此半波整流方式不可取。在本设计中我们选择桥式整流方式,其输出电压为输入电压的0.9倍,输入电压为交流9V时,输出电压为8.1V大于单片机工作电压,可以选择,整流后输出直流电压波动较严重,因此在整流输出端我们需要增加滤波网络,进行稳定输出电压。 由于桥式整流电路输出电压大于我们芯片所能承受的最大电压,因此需要增加降压网络,将整流桥输出电压降低到芯片的工作电压5V。为保证电路板加电后能够有上电指示功能,因此在降压网络输出端增加发光二极管作为上电指示灯。 本设计中,当上位机下发请求数据时,下位机(单片机)能够识别下发数据并显示所下发的数据,正常下发请求命令为'1'、'2'、'3'、'4'或其他数据或字符,设计要求电路板能够正常显示'1'、'2'、'3'、'4',显示其他数据或字符时不必显示,因此这里我们需要选择一个8段数码管即可。 单片机串口通讯设计全文共16页,当前为第2页。 单片机串口通讯设计全文共16页,当前为第2页。 2.2功能模块框图 硬件设计 3.1硬件介绍 3.1.1单片机介绍 单片机串口通讯设计全文共16页,当前为第3页。AT89S52 是一种低功耗、高性能CMOS8位微控制器,具有8K 在系统可编程Flash存储器。使用Atmel 公司高密度非易失性存储器技术制造,与工业80C51 产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使得AT89S52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。 AT89S52具有以下标准功能: 8k字节Flash,256字节RAM, 32 位I/O 口线,看门狗定时器,2 个数据指针,三个16 位 定时器/计数器,一个6向量2级中断结构,全双工串行口, 片内晶振及时钟电路。另外,AT89S52 可降至0Hz 静态逻 辑操作,支持2种软件可选择节电模式。空闲模式下,CPU 停止工作,允许RAM、定时器/计数器、串口、中断继续工 作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。 单片机串口通讯设计全文共16页,当前为第3页。 端