教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 精品文档 > 综合文档 >

51单片机与三菱PLC无协议通讯成功

来源:网络收集 时间:2026-08-05
导读: 51单片机与三菱PLC无协议通讯成功 2012-05-11 20:42:21| 分类: | 标签: |字号大中小 订阅 我用了两个晚上的时间查阅一些资料,利用三菱PLC的扩展RS485通讯板与其51单片机连接通讯,可写PLC任意的地址。长度可达1000米,看见网上写的都很烦且对三菱和单片机

51单片机与三菱PLC无协议通讯成功

2012-05-11 20:42:21| 分类: | 标签: |字号大中小 订阅

我用了两个晚上的时间查阅一些资料,利用三菱PLC的扩展RS485通讯板与其51单片机连接通讯,可写PLC任意的地址。长度可达1000米,看见网上写的都很烦且对三菱和单片机不是很熟的朋友来说有一定的阅读难度,今天将它与大家分享。希望在此基础上大家能扩展出自己想要的功能,过些时间有空我

在写个半双工的程序。

硬件部分:

我用的是天祥单片机实验板,由于没有RS485接口,我利用ADM485芯片自制了一个485接口与三菱PLC的扩展RS485通讯如图,但如果要进行半双工通讯,须将P3.0口到下载程序的RS232芯片的线断开可用一个跳线,用RS485的时候断开RS232,用RS232的时候插上跳线帽。硬件连接如图

PLC程序:

通讯我用单片机做主机(只发送指令),PLC做从机(只接收指令),单工单向,以便初学着掌握。

格式:1位启始,8位数据,一位停止。

所以PLC寄存器D8120:0C81.

plc程序很简单不懂的可以看下三菱PLC的通讯手册。如下图:

三:单片机程序:

#include<reg52.h> /*单片机的头文件*/

unsigned char code tab[]={0x17,0xff};/*PLC输出的Y点数,PLC输出Y灯0125678亮*/

sbit led=P1^1; /*将RS485置为发送数据模式*/

unsigned char i;

void init()

{

SCON=0x50; /*串口中断开*/

TMOD=0x20; /*定时器设置*/

TH1=0xfd; /*定时时间的高位*/

TL1=0xfd; /*定时时间的低位,速度为9600BPS*/

TR1=1; /*定时器开*/

EA=1; /*开总中断*/

TI=0; /*复位串口中断*/

led=1; /*将RS485置为发送数据模式*/

}

void main()

{

init(); /*调用子程序*/

for(i=0;i<2;i++)

SBUF=tab[i];

while(!TI);

TI=0; { /*将数据发送到串口*/ /*等待串口数据发送结束*/ /*复位串口中断*/

}

}

51单片机与三菱PLC无协议通讯成功.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wendang/1893558.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)