新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 基于RS 485单片机多机串行通信的电子开关设计

基于RS 485单片机多机串行通信的电子开关设计

作者:时间:2012-05-31来源:网络收藏

摘要:针对大中型传送带传送过程中位置跑偏的检测, 485多机。介绍了该的总体方案及硬件电路,该采用 485,不仅抗干扰能力好,并能够实现长距离且可以避免多个从机同时与主机通信时产生数据冲突的问题。实验表明,该电子开关结构简单、性能稳定,可应用于工业控制、检测等领域中。
关键词: 485;通信;电子开关

0 引言
目前多机通信是通信控制领域的主流通信方式,数据通信、计算机网络、分布式工业控制系统及其测控领域中,经常采用串行通信来达到信息交换的目的。多机串行通信控制网络是物理层采用RS 485通信接口所组成的多机串行通信工控设备网络,RS 485既是物理层的协议标准,也是串行通信接口的电气标准。这种通信接口可以十分方便地将许多设备组成一个控制网络。RS 485通信方式有很多优点,首先它的通信距离比较远,通常可以做到数百米甚至千米以上,而且还可以实现多点通信方式,从而可以建立一个小范围内的局域网,因而更有实用价值。RS 485采用差模信号传输方式,与地电平关系不大,因而它抗干扰的能力比较好,即便在信号电压比较小的情况下也能获得稳定的传输。

1 总体方案及硬件
该电子开关系统的设计要求主机能够与从机之间进行地址确认并相互通信,从机能够准确检测到被测信号,主机能够接收从机传来的数据信号,并通过液晶显示器和发光二极管显示,同时采用RS 485总线主从机可以实现长距离通信。主从机采用的主要核心芯片均为,考虑单片机性能及实际运行环境的需要,选用AT89S51单片机,串行通信网络结构如图1所示。

本文引用地址:http://www.eepw.com.cn/article/171385.htm

a.jpg


(1)主机使用主要器件:AT89S51 MAX4851602LCD LED RESISTORS CAP CRYSTAL;
(2)从机使用主要器件:AT89S51 MAX485 RESISTORS CAP CRYSTAL
主机主要功能:
(1)与从机之间进行地址确认。
(2)查询从机是否有信号(从机检测被测量时产生的相应的数据信号)发送到主机。
(3)通过液晶显示发送信号的从机地址,同时可以通过发光二极管显示信号的级别(这里两个发光二极管分别代表两个行程开关的亮灭)。
从机主要功能:
(1)与主机之间进行地址确认。
(2)检测被测量,并将被测信号数据发送给主机。
主机主要有两大功能模块:液晶显示模块用来显示从机地址编号,所使用的器件为1602LCD,RS 485串行通信模块用来实现与从机之间的远距离串行通信,使用MAX485芯片来实现。
从机的主要功能模块为RS 485串行通信模块用来完成与主机之间数据的发送和接收。

2 设计实现原理
主从机均采用的是AT89S51单片机,它是一个低功耗,高性能CMOS 8位单片机,片内含4 KB的可反复擦写1 000次的FLASH只读程序存储器。单片机的XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2:来自反向振荡器的输出。本电子开关设计外接12MHz晶振。
主从机均使用单片机2个全双工串行通信口外接MAX485芯片来完成与从机之间的串行通信,由串行口控制寄存器SCON设置串行口的工作方式、监视串行口工作状态、发送与接收的状态控制等。P3.0/RXD为串行通信接收端,P3.1/TXD为串行通信发送端。
主机端口P0.0~P0.7作为液晶显示器的数据线,P0口上拉10 kΩ电阻与1602液晶的D0~D7数据端相连,P3.7与使能端E相连,P3.6与读/写信号线RW相连,P3.5与寄存器选择端RS相连。P1.0和P1.1引脚接两个发光二极管,用来显示从机发送信号的级别。
从机P1.0和P1.1引脚分别接到一级行程开关和二级行程开关,用来检测两个开关的状态,最终由从机P1.0和P1.1这两个引脚将行程开关的状态发送到主机,主机读取状态值并且显示。
主机通过轮询的方式,当主机查询n号从机时,与n号从机进行地址确认,并判断n号从机是否有信号产生,如果没有,主机将查询n-1号从机,如果有信号产生,主机接收到信号并存储该从机的主机编号,分别通过发光二极管和液晶显示出来,如果n-1号从机继续有信号产生,主机继续接收,直到接收完毕,主机将查询n-2号从机,如此往复。从机的个数可以在主机程序中对从机个数n值进行设定。
2.1 多机串行通信及通信协议
电子开关的设计核心主要通过单片机的多机串行通信来实现。
2.1.1 发送器和接收器
AT89S51串行口主要由发送器、接收器和串行控制寄存器组成。发送器主要由发送缓冲寄存器SBUF和发送控制器组成。接收器主要由接收缓冲寄存器SBUF,接收移位寄存器和接收控制器组成。
2.1.2 串行口控制寄存器
串行口控制寄存器SCON用于设置串行口的工作方式、监视串行口工作状态、发送与接收的状态控制等。它是一个既可字节寻址又可位寻址的特殊功能寄存器。控制寄存器SCON的格式如下:

b.jpg


电子开关中单片机串行口控制寄存器SCON各位设置如下:
主机SCON设置:1 0 0 1 1 0 0 0 =#98H
从机SCON设置:1 0 1 1 0 0 0 0 =#0B0H
2.1.3 工作方式的选择
本电子开关单片机串行通信工作方式选择为工作方式2,在方式2下,串行口工作在11位异步通信方式。一帧信息包含一个起始位“0”,八个数据位,一个可编程第九数据位和一个停止位“1”。其中可编程位是SCON中的TB8位,在八个数据位之后,可作奇偶校验位或地址/数据帧的标志位使用,由使用者确定。
波特率的选择:方式2的波特率是固定的。
若PCON中SMOD=0,速率=fosc/32
若PCON中SMOD=1,速率=fosc/64
该设计中:波特率为9 600 b/s。
2.1.4 实现原理及流程
多机通信主要靠主、从机之间正确地设置与判断多机通信控制位SM2和发送或接收的第9数据位(D8)。
电子开关多机串行通信的实现流程:
(1)主从机均初始化工作方式2,主机置SM2=0,允许中断,从机置SM2=1,REN=1。
(2)主机置REN=1,TB8=1,将地址信息发送给从机,并等待是否发送完毕,从机等待主机发送地址。
(3)从机接收到地址与本机地址核对,核对正确,置SM2=0,向主机发送应答地址并等待发送完毕,主机接收之后进行地址确认,并置TB8=0。
(4)从机地址发送完毕后,接着发送信号数据并等待发送完毕。
(5)主机接收到数据将从机编号发送到液晶显示,将信号数据发到发光二极管显示信号级别。

行程开关相关文章:行程开关原理

上一页 1 2 3 4 下一页

评论


相关推荐

技术专区

关闭