基于单片机与MXA2500GL传感器的振动信号分布式检测方法

[09-12 18:13:47]   来源:http://www.88dzw.com  单片机学习   阅读:8743

文章摘要:由于PC机本身并不具备多机通信功能,所以目前普遍采用的通信方式有两种:一种是利用“桥梁”硬件—多机通信卡。通信卡一般有两种形式,应用最广的是以51单片机为核心,结合8255、6116、2716等芯片构成的通信卡。该卡可以插在PC的扩展槽中,各从机与通信卡中单片机进行串行通信,而PC通过8255芯片与卡上的单片机进行并行通信。另外一种通信卡仅仅由单片机构成(也就是牺牲一个单片机做通信中转),从机与通信卡及PC与通信卡之间都是串行通信;另一种方式是在PC的串口上软件模拟51系列单片机串口可编程第9位数据功能实现多机通信,系统采用的是后一种方式。另外由于远距离传输,系统中使用了MAX485芯片,同时

基于单片机与MXA2500GL传感器的振动信号分布式检测方法,标签:单片机开发,单片机原理,单片机教程,http://www.88dzw.com

  由于PC机本身并不具备多机通信功能,所以目前普遍采用的通信方式有两种:一种是利用“桥梁”硬件—多机通信卡。通信卡一般有两种形式,应用最广的是以51单片机为核心,结合8255、6116、2716等芯片构成的通信卡。该卡可以插在PC的扩展槽中,各从机与通信卡中单片机进行串行通信,而PC通过8255芯片与卡上的单片机进行并行通信。另外一种通信卡仅仅由单片机构成(也就是牺牲一个单片机做通信中转),从机与通信卡及PC与通信卡之间都是串行通信;另一种方式是在PC的串口上软件模拟51系列单片机串口可编程第9位数据功能实现多机通信,系统采用的是后一种方式。另外由于远距离传输,系统中使用了MAX485芯片,同时还使用了光电隔离来提高系统的抗干扰能力。图2给出了整体硬件架构。

图2 分布式检测系统的硬件架构 

        多机通信协议 

  C8051F020单片机具有适于多机通信的特殊功能,即方式2(3)。在这2个方式里,接收的第9位进入RB8,然后为停止位。串行口可程控为:当接收到停止位,只有当RB8=1时才产生串行口中断。这个特性可由置位SCON中的SM2控制。多机通信中使用这种特性的方法是:当主机要发送一个数据块给几个从机之一时,它先发送一个目标从机的地址字节,地址字节第9位为1而数据字节第9位为0。当SM2=1时,数据字节不会中断任何从机,然而,地址字节会中断所有从机,这样每一个从机可检查接收到的地址,看是否为寻址自己。被寻址的从机将SM2位清0,准备接收传送过来的数据字节,没被寻址的从机保持SM2为置位状态,继续处理其它工作。C8051F020单片机方式3下的信息桢格式见图3。

图3 C8051F020单片机在方式3下的信息桢格式
  PC机的异步串行通信口是采用通用异步接收发送器(简称UART)为核心构成的。UART的产品型号很多,大多采用Ins8250芯片。对UART的编程实际上是对其内部寄存器的操作。UART内部寄存器共有10个。编程时首先要确定串行通信的数据格式,这是通过将选定的数据格式参数写入到线路控制寄存器LCR来完成的,接下来需要将波特率因子写入到波特率因子寄存器来确定双方传输波特率,再通过读线路状态寄存器LSR来判断芯片是否就绪或有错等。通信线路控制寄存器LCR的格式如图4所示。    
 
图4 通信线路控制寄存器LCR 

  通过将参数字节写入到线路控制寄存器,可以将UART编程为这样的串行通信数据格式:1位起始位,8位数据位,1位奇偶校验位,1位停止位,1帧共11位。既然能够在PC机上实现1帧11位的数据格式,并且改变线路控制寄存器的D5、D4、D3位的值能将奇偶位设定为“恒1”或“恒0”,则若在发送地址帧时将奇偶位设定为“恒1”,在发送数据位时将奇偶位设定为“恒0”,便可以在PC机上模拟51系列单片机的多机通信持点,从而直接利用这种特点实现它们之间的主从分布式多机通信。
  
  主机和从机遵循主从原则,主机用呼叫方式选择从机,数据在主机和从机之间双向传递,各从机之间的相互通信需通过主机作为中介。主从机之间还应传送一些供它们识别的命令和状态字,如以00H表示主机发送从机接收命令,以01H表示从机发送主机接收命令等。 

        PC主机通信程序的实现方法

上一页  [1] [2] [3]  下一页


Tag:单片机学习单片机开发,单片机原理,单片机教程单片机学习
分类导航
最新更新
热门排行