当前位置: 主页 > PLC控制

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

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

图片说明:

西门子S7-200PLC  HTA指令问题ed1cab54e705ae75983563FC53c2f703 西门子S7-200PLC  HTA指令问题西门子S7-200PLC  HTA指令问题 西门子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-200PLCASCII码与十六进制数之间的转换指令及其使用:
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

  • 关注微信

猜你喜欢

微信公众号