当前位置:首页 > 技术分享 > 正文

三菱FX2N串口数据传送涉及其他指令

1.HEX-ASCII变换指令ASCI[]将存储在以S为首地址的寄存器的十六进制字符,转换成相应ASCII码存放在以D为首地址的寄存器中,n为转换的十六进制字符个数。若当前D10=DCBAH,D11=1234H。试说明16位数据模式和8位数据模式转换后的ASCII码存放地址。1)M8161=OFF,...

1.HEX-ASCII变换指令ASCI[]将存储在以S为首地址的寄存器的十六进制字符,转换成相应ASCII码存放在以D为首地址的寄存器中,n为转换的十六进制字符个数。若当前D10=DCBAH,D11=......

1.HEX-ASCII变换指令ASCI

[]

将存储在以S为首地址的寄存器的十六进制字符,转换成相应ASCII码存放在以D为首地址的寄存器中,n为转换的十六进制字符个数。

若当前D10=DCBAH,D11=1234H。试说明16位数据模式和8位数据模式转换后的ASCII码存放地址。

1)M8161=OFF,16位数据模式

2)M8161=ON,8位数据模式(常用)

注:被转换字符的最低位(表中A)转换后存在(D+n-1)寄存器内,然后按照字符由低到高存放在(D+n-2)…..(D+n-n)寄存器中。n=k5A存在的D104寄存器中。

2.ASCII-HEX变换指令HEX

[]

将存储在以S为首地址的寄存器的ASCII码,转换成十六进制字符,相应存放在以D为首地址的寄存器中,n为转换的十六进制字符个数。

若D100=【1,0】若D101=【3,2】若D102=【B,A】若D103=【D,C】

【1,0】表示D100存放两个十六进制字符的ASCII码,高8位存【1】,低8位存【0】,其他下同。

1)M8161=OFF,16位数据模式

2)M8161=ON,8位数据模式(常用)

注:16位模式,完整地执行转换,8位模式忽略高8位,只转换低8位ASCII码转换到D寄存器。使用HEX指令,S寄存器的数据必须是ASCII码,如果不是运算错误,不能进行转换,特别注意16位模式S的高8位也是必须是ASCII码。

在PLC通信控制中,如果通信协议规定用ASCII码进行传送,则应答回传回来的数据也是ASCII吗,所以利用HEX指令把它转换为十六进制数后,PLC才能执行。

3.校验码指令CCD

CCD指令使针对求和校验和异或校验设计的,三菱变频器专用协议采用的是求和校验,具体请查看《三菱PLC-FX编程口通讯协议》。

1)求和校验

算法:将参与校验的数据求和,取其低8位位校验码。

例:求数据01H,03H,21H,02H,00H,02H之求和校验码。

01H+03H+21H+02H+00H+02H=29H求和校验码:29H

2)异或校验

算法:将参与校验的数据依次进行一一异或位运算,最后异或结果为校验码。

例:求数据01H,03H,EFH,4DH之异或校验码。

看各列的偶校验位,奇数次1则为1

异或校验在其他地方应用也很多。如西门子变频器,SEW变频器等。

4.CCD指令

[]

将存储在以S为首地址的寄存器的n各数据进行求和校验,和校验存放在以D为首地址的寄存器中,异或校验码存放在(D+1)寄存器中。

最新文章