西门子S7-200PLC HTA指令问题

使用这条指令时我的16#34通过HTA指令转化出来为什么VB200里是ASCII 3 而VB201中是ASCII的4,但是看转换表16#34示ASCII的4. 这是为什么

图片说明:

西门子S7-200PLC  HTA指令问题    西门子S7-200PLC  HTA指令问题    西门子S7-200PLC  HTA指令问题    西门子S7-200PLC  HTA指令问题   

最佳答案

1、一个指令:
HTA:HEX至ASCII (HTA)指令将从输入字节(IN)开始的长度为LEN的十六进制数转换成ASCII字符,放入从OUT开始的存储单元。
ATH :ASCII至HEX(ATH)指令将从IN开始的长度为LEN 的ASCII字符转换成十六进制数,放入从OUT开始的存储单元。
见:
S7-200PLC ASCII码与十六进制数之间的转换指令及其使用:
http://www.plc100.com/siemens/biancheng/ASCIImazhuanhuan.htm
2、看转换表16#34示ASCII的4. 这是为什么?
注意:合法的ASCII码对应的十六进制数包括30H到39H,41H到46H。如果在ATH指令的输入中包含非法的ASCII码,则终止转换操作,特殊内部标志位SM1.7置位为1。
你的HTA(HEX至ASCII)程序没有错,输入34H输出是ASCII码I的4。
如果是ATH (ASCII至HEX)程序错,输入ASCII码I的4输出是34H。

提问者对于答案的评价:
xiexie\

专家置评

1关于指令: HAT执行没有问题  16#34通过HTA指令转换后    ASCII为3和4
2 关于转换表:比方如果建立一个变量VB100,写入数值为16#34,将格式改为ASCII则显示4

原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc172472.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2017年6月13日
下一篇 2017年6月13日

相关推荐