基于C167的PROFlBUS-DP智能从站的设计
图4为PROFIBUS-DP的RS-485传输接口电路。其中,M和2M为不同的电源地,P5,2P5为两组不共地的+5 V电源。74HCl32为施密特与非门。RS485总线驱动器一侧与9针D型插座相连,另一侧通过光耦与SPC3相连。HCPL-0601和HCPL-7721是能够满足12 MB・s-1波特率的光耦,采用光电隔离主要是为了消除来自外界的干扰。
3.3 软件设计
由于SPC3集成了完整的PROFIBUS-DP协议,因此C167不用参与处理PROFIBUS-DP状态机,P89C61X2的主要任务就是根据SPC3产生的中断,对SPC3接受到的主站发出的输出数据转存,组织要通过SPC3发给主站的数据,并根据要求组织外部诊断等。
主程序和中断程序的流程图,分别如图5和图6所示。本文引用地址://m.amcfsurvey.com/article/163043.htm
主程序中的SPC3初始化包括设置SPC3允许的中断,写入从站识别号和地址,设置SPC3方式寄存器,设置诊断缓冲区、参数缓冲区、配置缓冲区、地址缓冲区和初始长度,并根据以上初始值求出各个缓冲区的指针及辅助缓冲区的指针。根据传输的数据长度,确定输出缓冲区,输入缓冲区和指针。
中断程序主要用来处理PRM报文,CFG报文和SSA报文。
另外,PROFIBUS设备具有不同的性能特点,为达到PROFIBUS简单的即插即用配置,PROFIBUS设备的特性均在电子设备数据库文件(GSD)中具体说明。标准化的GSD数据将通信扩大到操作员控制级,使用基于GSD的组态工具可将不同厂商生产的设备集成在同一总线系统中,简单而且用户界面友好。
4 结束语
PROFIBUS-DP开发器件的选择比较灵活。在对数据传输速度有较高要求的应用场合,必须根据应用需求选择器件,尤其是对处理器、RS485接口器件和收发器芯片更要慎重选择,这是快速数据传输的前提。
评论