用87C196NT单片机实现CAN总线通信
3.2 CAN控制器PCA82C200介绍
PCA82C200芯片是Philips公司生产的CAN控制器,是一种I/O设备基于内存编址的微控制器。双设备的独立操作是通过像RAM一样的片内寄存器修正来实现的。它只支持标准的信息帧格式。
PCA82C200的地址区包括控制段和信息缓冲区控制段。在初始化载入时可被编程来配置通信参数(例如,位时序)。微控制器也是通过这个段来控制CAN总线上通信的。
PCA82C200有2种工作模式:复位模式和工作模式。在复位模式下可以对接收代码、接收屏蔽、总线时序寄存器0和1以及输出控制寄存器进行设置。一般在CAN初始化时完成对以上寄存器的设置,当CAN进入工作模式后,它们的值就不再变化。在工作模式下可以进行数据的发送和接收。特别要注意的是当硬件复位或控制器掉线时会自动进入复位模式,这样就不能进行正常的CAN通信,这就要求对复位进行监控。当发生硬件复位或控制器掉线而进入复位模式时,就要求把复位位置为0进入工作模式,这样CAN就能正常地发送接收了。
3.3 网络通信规则
CAN总线为多主工作方式,网络上任一节点均可在任意时刻主动向网络上其它节点发送信息,而不分主从。通信方式灵活,且无需占地址等节点信息。为禁止总线冲突,CAN总线采用非破坏性总线仲裁技术,根据需要将各个节点设定为不同的优先级,并以标志符ID标定,其值越小,优先级越高。
在本系统的实际应用中,主站负责整个网络。它向从站发送各种控制命令,从站按照来自主站的命令进行操作。主站可以选择任意一个从站交换数据信息,任一从站一旦被选中,即可以接收来自主站的信息,也可以依据从站的命令和凡站回送信息。当某一从站发生故障时,可以主动向从站发送有关信息。任一从站与主站交换信息时,必须带上从站地址信息。
3.4 下位机软件编程
单片机87C196NT与上位机之间的CAN通信接口程序见本刊网络补充版。(http://www.dpj.com.cn)。单片机向上位机一直以500 Kbps的波特率发送数据,当单片机接收到上位机下传的数据后,又把接收到的数据转发给上位机。用我国台湾研华公司的CAN卡,调试时用它自带的Monitor程序。
结束语
将CAN现场总线应用于电力系统线路分段保护监控单元中,有利于实现电力系统中检测的实时性和可靠性。在现有设备的基础上,进一步提高了电网的自动化监测和管理水平,对提高供电的可靠性、增加电网的经济效益有着重大的意义。
评论