微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 模拟电路设计 > 基于CAN总线的RS-232串口设备远程通信

基于CAN总线的RS-232串口设备远程通信

时间:01-18 来源:国外电子元器件 作者:李 娟 点击:

子程序:

;//////////////////////////////////////////////////////////////////

;//CAN数据接收/统一成2个字节ID的帧格式//

;///////////////////////////////////////////////////////////////////////

RECAN:

MOV R0,#C_RE ;单片机内缓冲区起始地址

MOV DPTR,#RXBUF ;读取并保存接收缓冲区的内容

MOVX A,@DPTR ;读取CAN缓冲区的2号字节

MOV @R0,A ;保存

JB ACC.7,EFF_RE ;FF位,0-SFF,1-EFF

MOV R2,#0

SJMP SFF_RE ;ID数目不同,截取"数据字节"的位置不同

EFF_RE:MOV R2,#2

SFF_RE:MOV R2,#2

SFF_RE:

JB ACC.6,EXIT_RECAN ;RTR位判断,1-远程帧,则跳出

ANL A,#0FH

MOV R3,A ;这时截取中间4位是数据长度

MOV C_NUM,A ;R3,R5中存放接收帧的长度

RDATA0:

INC DPTR ;2个字节ID

INC R0

MOVX A,@DPTR

MOV @R0,A

INC DPTR

MOVX A,@R0,A

INC DPTR

MOVX A,@DPTR

MOV @R0,A

MOV A,R2 ;如果是EFF则跳过两个字节ID

JZ DRATA1

INC DPTR

INC DPTR

DATA1: ;数据字节

INC DPTR

INC R0

MOVX A,@DPTR

MOV @R0,A

DJNZ R3,RDATA1

EXIT_RECAN:

RET

4 结束语

计算机的微型化为测控仪表的智能化提供了必要的条件,使得带微处理器的终端设备具备更好的数字通信能力。随着越来越多智能终端的出现,无论是对网络的结构、协议、实时性,还是适用性、灵活性、可靠性乃至成本都有了更高的要求,因此现场总线有着很好的发展前景。CAN总线的帧结构拥有标识ID,这使得设备网络中拥有多台网络主机成为可能,即通过网络主机可以监控整个设备网络的工作情况并作出相应的控制决策。本装置目前已开发完成,并在实际应用中取得了非常好的效果。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top