麓山愚者 2015-01-28 01:25 采纳率: 0%
浏览 4694

FX2N系列PLC通过编程口如何与上位机实现串口通信

新人,最近在写一个MFC的控制台,实现与PLC串口通信,以前写的是实现与avr单片机的通信。我按照三菱特有的通信格式编写,不知为啥一直无法实现,哪位前辈有这方面的经验吗?诚心求指点。
比如:
1.上位机发请求讯号(05H)给PLC,上位机只要负责把它发到串口缓冲区就可以吗?
2.在上位机收到PLC返回的确认信号(ACK)后,发后面的多字符帧命令码(02 45 31 30 34 30 30 34 30 32 37 42 30 30 03 41 43)这一串数据是可以一起一次性发送给PLC还是得一个一个单独发?也就是先发开始标识02H,再发操作命令.....发结束标志03H,发校验码?
3. 5 2 45 31 30......这些数据应该定义为什么类型呢?通信协议要求是16进制的ASCII形式,可以定义为unsigned char类型吗?
我用的是VC++
谢谢~

  • 写回答

2条回答 默认 最新

  • sky444038761 2016-04-26 10:15
    关注

    1、上位机发送05H plc正常情况下会返回06H,有问题时返回15H。
    2、可以一次性发送一串数据,三菱FX系列网上已给出了相关协议(30 31 37 38命令码)
    (一部分地址区间可以用D、M、Y、T、C、X,三菱没有给出所有寄存器的具体的内存地址);
    3、就看你编程的读写串口的函数中参数是定义什么类型,这个不是问题。

    评论

报告相同问题?

悬赏问题

  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器