目前串行通信在现代工业生产中各个领域被广泛应用,尤其是在相关监测部门,用于收集实时的设备以及仪表数据并通过上位机进行相对应的控制。
本课题以C8051F020单片机作为下位机,PC机作为上位机,通过RS232串行通信协议端口来进行对多个单片机的串行通信。
1.2 课题设计意义
由于集成电路的集成度逐年提高,计算机的发展走向微型化和超微型化,微机已成为军工、机器人、精细工业等复杂系统不可缺少的组成部件。在一些工业控制中,经常需要以多台单片机作为下位机执行对被控对象的直接控制,以一台PC机为上位机完成复杂的数据处理,组成一种以集中管理、分散控制为特点的集散控制系统[1]。
为了提高系统管理的先进性和安全性,计算机工业自动控制和监测系统越来越多地采用集总分算系统。较为常见的形式是由一台做管理用的上位主计算机(主机)和一台直接参与控制检测的下位机(单片机)构成的主从式系统,主机和从机之间以通讯的方式来协调工作。主机的作用一是要向从机发送各种命令及参数:二是要及时收集、整理和分析从机发回的数据,供进一步的决策和报表。从机被动地接受、执行主机发来的命令,并且根据主机的要求向主机回传相应实时数据,报告其运行状态。
用串行总线技术可以使系统的硬件设计大大简化、系统的体积减小、可靠性提高。同时,系统的更改和扩充极为容易。
1.3 论文结构及内容安排
第一章为绪论部分,该部分介绍了本课题的背景、现况以及设计意义。
第二章主要介绍了设计中所涉及的一些基本概念以及使用部件的选型,这部分包括了本设计的核心部分即自定义通信协议。
第三章为硬件部分的设计,包括设备的连接、单片机串口部分的寄存器设置等。
第四章为软件部分的设计,分为上位机和下位机,每一部分都介绍了该部分的设计思路、相应的流程图以及各个模块的功能设计。
第五章为程序的实机调试,介绍了软件界面、各个功能模块的调试。
第751章介绍了本人在设计过程中遇到的一些问题以及相应的解决方法。
最后为结论、致谢以及参考文献部分。
2. 基本概念及技术方案
2.1 RS-232通信协议
RS-232 通讯接口是一种标准化的串行接口,是为远程通讯连接终端设备DTE (Data Terminal Equipment) 与数据通讯设备DCE (Data Communication Equipment)定义的物理接口。目前的PC 机都有至少一个串行通讯端口RS-232,RS-232 端口可用于两台计算机之间进行通讯,RS-232 的逻辑电平用正负电压表示,且信号使用负逻辑,逻辑0的电压范围是+5V~+15V,而逻辑1的电压范围是-5V~ -15V,RS-232端口是计算机与其他设备沟通的最常用的接口,不但实作简单,而且价格便宜[2]。规定的数据传输速率为2400、4800、9600、19200、38400等多种波特率。驱动器允许有2500pF的电容负载,通信距离将受此电容限制。如当采用150pF/m的通信电缆时,最大通信距离为15m;若每米电缆的电容量减小,则还可以继续增加通信距离。传输距离短的另一原因是RS-232属单端信号传送,存在共地噪声和不能抑制共模干扰等问题,因此一般用于较短距离的通信。
2.2 单片机选型
本设计采用的C8051F020单片机是完全集成的混合信号系统级MCU 单片机,具有64个数字I/O 引脚(C8051F020/2)。选择该款单片机是基于其为8051系列单片机架构考虑的,在结构以及程序设计上与常用的单片机相似,提高了整个设计的通用性。此外与一般的8051单片机相比,该单片机在性能上又优越于一般的8051单片机,并且还有许多扩展接口。提高了系统的稳定性、使用效率以及可扩展性[3]。 pc机与多台单片机串行通信的设计(2):http://www.751com.cn/zidonghua/lunwen_16635.html