论文部分内容阅读
引言:在工业自动化控制、智能仪器仪表中,单片机的应用越来越广泛,随着应用范围的扩大和解决问题的需要,对某些数据要做较复杂的处理。由于单片机的运算功能较差,不能对数据进行复杂处理,因而须借助计算机系统。这就要解决单片机与计算机系统的通信问题,本文就单片机与PC机之间的通信问题进行研究比较有意义。
单片机与PC机之间的通信可分为PC机与单个单片机通信和PC机与多单片机通信,下面就这两种通信类型做以下分析。
一、 PC机与单个单片机通信
1. 硬件设计
可采用 MCl488和MCl489芯片的转换接口 MCl488和MCl489芯片为早期的RS-232至TTL逻辑电平的转换芯片。此种电路的不便之处是需要±12V电压,并且功耗较大,不适合用于低功耗的系统。
8031的TXD为串行口的数据发送线。它经过1488电平转换器接于CE-158串行口的RD(数据接收线),使8031的数据进入PC计算机内存。CE-158的DTR(数据终端设备准备好信号),经过1489接于8031的 ,作为请求8031向PC计算机发送数据的申请线。
2. 软件设计
整个通信软件分为两部分:一部分是用8031汇编语言编写的数据发送程序,可以固化
在8031系统的程序化存储器中;另一部分是用BASIC语言编写的数据接收程序,配置在PC计算机上。发送和接收约定为:波特率1200,数据位8位,奇偶校验位为奇校验。
主程序流程图如下:
二、 PC机与多单片机通信
PC与多单片机通信的基本原理基本是整个系统中PC机是上位管理机,各从机是分布在不同地点的数据采集及执行机构。PC机与执行机构之间采用的总线方式为RS-485。PC机作为主控机,通过串口向单片机发送命令。单片机收到数据后,对其进行校验,并根据命令类型向PC机返回数据。
1. 典型器件介绍
由于接口电平的不一致,一般是不能直接连接的。常用的总线方式根据通信距离,速度以及网络的结构等指标的要求,有RS-232C、RS485、RS422等接口标准。
PC机上大多数都有RS-232C接口,采用DB-9连接器,RS-232C标准是EIA(电子工业联合会)与BELL公司等共同开发的通信协议。适合与数据速率在0Kbit/s~20Kbit/s范围内的通信。RS-232C标准对电气特性、逻辑电平和各种信号线功能都做了规定。逻辑“1”的电平为-15V~-3V,逻辑“0”的电平-15V~-3V。也就是当传输电平的绝对值大于3V时,电路可以有效的检查出来。介于-3V~+3V的电压无意义,低于-15V或高于+15V的电压也认为无意义。因此,在实际工作时,应保证电平在有效范围内。
与RS-232C相匹配的连接器有DB-25、DB-15和DB-9 3种,其引脚的定义各不相同。简化的9芯DB-9连接器其引脚分布如图
实际应用时,一般使用DB-9连接器的2、3和5脚即可满足需要。TTL电平RS232C接口电平互不兼容,所以两者接口时,必须进行电平转换。当应用系统的通信距离比较远或干扰比较严重的场合,RS-485通信协议具有比RS232C更优良的性能、目前有多重RS485收发器,常用的有SN75176、MAX485、SN75LBC184等,实现RS-485通信接口较为方便。
2.硬件设计
PC机与和各数据采集及执行机构之间采用的总线方式为RS-485,而且在从机通信的出口处采用光电隔离技术,为保证通信时potential率能达到9600bit/s,隔离器件可采用高速光6N137。信号在传输线上传输时,若遇到阻抗不连续的情况,就会出现反射现象,从而影响信号的远距离离传输。常用双纹线的特性在110~130,因此在RS-485总线末端接入120Ω的电阻。与单片机端的接口电路类似,将PC机连接到RS485总线上也需要转换电路,PC机处采用的RS-232/RS-485转换器也有采用光电隔离型的,如波士电子的RS-232/RS-485接口转换器。
3.程序设计
利用RS-485接口标准组成的多机通信网络和直接利用TTL接口组成多机通信网络最大的不同时RS-485多机通信网采用半双工工作方式,数据在发送和接收时,必须对RE/DE引脚进行设置,SN75LBC184工作状态只有两种:发送和接收。当P1.0为高电平时,SN75LBC184只允许接收,反之只允许发送。
由于PC机上位管理微机,为便于管理员操作,采用的是具有人性化的操作界面,语言使用Visual C++6.0,数据库使用SQL Server。
由于采用的RS-485总线方式,为半双通信方法,而且作为终端系统,从机的工作是被动的,因此从机时不会主动向管理主机发送信息的,只有在管理主机由请求时,才会有应答信息,各从机在正常情况下一只处于接受状态,只有在收到管理主机由对本级的呼叫后,主动将状态切换为发送状态,然后根据命令向管理主机发送应答信息,发送完毕后,又马上返回接受状态,通信采用的波特率为6900bit/s,8位数据位,1位数束位无奇偶校验,单片机接受采用中断方式。
结论
单片机与PC机之间的通信按单片机数量划分为两大类,PC机内要设计操作画面,并且要建立数据库,而单片机作为数据的采集和执行单元,必须能实现通信,做硬件和软件方面的设计。
参考文献
[1]张洪润.单片机应用设计200例.北京航天大学出版社.
[2]宋戈,黄鹤松等.51单片机应用开发范例大全.人民邮电出版社.
[3]刘坤,宋戈等.51单片机C语言应用开发技术大全.人民邮电出版社.