基于MSP430单片机的Profibus-DP通信接口的开发
考虑到Profibus对速率的要求本文选用高速率,低功耗的16位MSP430单片机,采用Intel工作方式。CPU与SPC3接口电路如图3所示。对于MSP430单片机而言,SPC3相当于它扩张的一个外部RAM。单片机可以通过访问外部RAM的方法访问SPC3的寄存器。RS 485驱动器的一端与SPC3相连,另一端通过9针D型插头与总线相连。RS 485驱动器选择SN75SLS176来满足高速的数据通信。
本文引用地址:https://www.eepw.com.cn/article/173254.htm软件设计是开发Profibus-DP通信接口的一个重要环节。由于SPC3集成了完整的DP协议,因此在进行通信时,MSP430单片机不用参与处理DP状态机。主要任务是根据SPC3产生的中断,对SPC3接收到数据转存,组织要通过SPC3发给的数据,并根据要求组织外部诊断。

主程序流程图如图4所示,在SPC3正常工作之前,需要进行初始化,以配置需要的寄存器,包括设置协议芯片的中断允许,写入从站识别号和地址,设置SPC3方式寄存器,设置诊断缓冲区,配置缓冲区,地址缓冲区,初始化长度,并根据以上初始值得出各个缓冲区的指针和辅助缓冲区的指针。根据确定输出缓冲区、输入缓冲区及指针,初始化流程图如图5所示,初始化包括:SPC3硬件复位、硬件模式、设置SPC3中断屏蔽寄存器、SPC3内部看门狗、设备标识号、缓冲区初始化。
中断程序流程图如图6所示,在Profibus-DP中最主要处理以下的中断事件:新的参数报文事件,全局控制命令报文事件,进入或退出数据交换状态事件,新的配置报文事件,新的地址设置报文事件,检测到波特率事件,看门狗事件。
4 结语
选用的MSP430单片机具有高速率、低功耗的特点,SPC3芯片则集成了Profibus-DP全部协议内容,整系统功能相对完善,使用方法简单。本方案用于Profibus-DP通信接口的开发,可以减少开发周期,实现开发的简化。
评论