AT89C52单片机控制系统采用计算机与AT89C52单片机所构成的多种微处理芯片混合的主从系统,教师机是系统的上位机,实现人机交互和数据交换、检索、存储、处理、更新图形的显示,对下位机(即学生机)的控制和通信等控制。学生机完成数据的采集和信号的处理。教师机作为主机,学生机作为从机。主从机间的通信方式采用串行口方式。每一个训练或鉴定工位均有独立的学生机和彩色电视机,每台学生机之间通过网线互联。学生机通过继电器控制彩色电视机故障点的状态。
AT89C52单片机控制系统需要进行软、硬件开发。与单个独立单片机系统不同,网络中单片机不仅要按预先设计的程序工作,更多时候需要根据来自上位机的控制指令适时调整工作程序。实操训练或考试时下位机主要功能如下:
(1)作为上位机的终端;
(2)作为电子设备控制器;
(3)提供考生交互界面;
(4)其他监考服务。
2 通信接口设计
通信接口是单片机控制系统的重要组成部分。单片机与计算机之间不断地进行信息交换和传输,而这种信息的交换和传输都必须通过通信接口和数据总线来实现,通信接口器件和总线的合理选择是单片机控制系统中数据交换和传输顺利进行的前提和保障。
该系统采用RS 485总线组网,上位机通过串行接口经标准RS 232总线和RS 232/RS 485转换器将RS 232标准电平转换为RS 485标准电平与考生的下位机端通信;在下位机端SN75176将RS 485标准电平转换为TTL电平接入处理器的异步串行通信口(UART),实现RS 485网络的半双工通信。
RS 232/RS 485转换器采用市场上即插即用型的产品,本身已经实现智能控制收发使能,无须更改任何上位机硬件。上位机最多可连接32台下位机,如果在下位机端采用SN75184则上位机最多可连接64台下位机。
RS 485接口电路的设计要充分考虑线路上的各种干扰及线路特征阻抗的匹配。信号在传输过程中会产生电磁干扰和终端反射,使有用信号与干扰信号在传输线上相叠加,当干扰太大时,可导致通信无法进行。该系统选用SN75176 RS 485接口芯片,RS 485总线网络的通信介质采用带有屏蔽层的双绞线,并在传输线末端各安装120Ω匹配电阻,以消除传输线上信号的反射,通信距离可达到1 200 m。
3 通信协议
RS 485接口的软件设计对系统联网的可靠性有很大的影响。由于RS 485总线是异步半双工的通信总线,在某一时刻总线只可能呈现一种状态,所以这种方式使用于上位机与下位机的查询方式通信,为了协调总线的分时复用,必须制定一套合理的通信协议,以保证数据通信的正常进行。本系统通信协议是:波特率约定为9 600 b/s,Tl工作于方式2,初值为FDH,SMOD=O。串行口初始化为方式3。通信格式要求如下:
通信数据格式总共24 b(二进制),8 b识别码,8 b控制指令代码,8 b故障点代码,格式如下:
规定如下:
识别码为下位机地址码,地址范围为70H~88H。控制指令代码为:字符“1”表示故障点短接,ASCII码为“31H”;字符“O”表示故障点断开,ASCII码为“30H”。
(1)上位机状态字:
bo:发卷指令标志1,无发卷指令标志0;
b1:开考指令标志1,无开考指令标志O;
b2:答题查询指令标志1,无答题查询指令标志0;
b3:强行中止答题指令标志1,无强行中止答题指令标志O;
b4:恢复答题指令标志1,无恢复答题指令标志0。