·上一文章:基于C8O51F04O单片机的温度遥测遥控系统
·下一文章:单片语音录放电路模块及其应用
通讯部分采用芯片MAX232C与上位机通讯,具体接线如图4所示。
此通讯电路仅能实现15m的通讯距离,如果需要更长距离通讯,则需先将信号转换为RS422全双工信号,在计算机一端再转换为RS232接入计算机即可。
2 编程环境及程序
本系统使用Keil V3.0作为编程环境(编程环境介绍见参考文献),MAXl86采集子程序如下:
开关量输入输出部分的程序在main函数中,由串口收到的上位机开关量状态数据直接作为单片机输出数据输出到P0口,P0各位作为一个开关量通过图3所示的放大电路驱动各开关量负载。单片机开关量输入数据直接发送回上位机回显单片机Pl口各位状态。
3 结束语
本系统通过PCB制板封装后,调试正常,16路数据采集正常,16路开关量输入、16路开关量输出正常,工作可靠安全,可脱离上位机单独使用。如果需要扩展输入输出端口,只需使用MODBUS协议将此套系统组成RTU设备网络即可实现。本系统不建议采用多片选通的方式增加输入输出口,这样系统执行速度会受到影响,采用STC89C52单片机一片不足5元,为了系统安全可靠的运行,所以采用多片单片机组成MODBUS网络来进行扩展可以增加系统可靠性,而且每个控制模块出现故障时不影响其他控制模块的正常运行和通讯。