您好!欢迎光临工博士商城

西门子变频器服务商

产品:395    

咨询热线:13397493317(微信同号)

QQ QQ
您当前的位置:首页 » 新闻中心 » 西门子200SMART十六进制与ASCII字符之间的转换
产品分类
新闻中心
西门子200SMART十六进制与ASCII字符之间的转换
发布时间:2023-03-27        浏览次数:413        返回列表
 介绍十六进制与ASCII字符之间的转换。主要是ATH、HTA这两个指令。ASCII字符与字符串的区别是ASCII字符是不带长度字节的一串ASCII码序列,而字符串是带长度字节的一串ASCII码序列。

一、 所需软件及硬件

 

西门子200SMART编程软件V2.7版,200SMART ST30 CPU一台,通信网线一条。

 

 


二、 转换指令含义及用法

 

1. 十六进制转换为ASCII字符

该指令的形式及在指令列表中的位置如下图1所示:

 

10.27

图1

 

HTA指令是将从输入字节IN开始的十六进制数转化为从OUT开始的ASCII字符,转换的***大数目为255,超出该长度指令将会报错。比如VW100里的16进制数为16#AB85,占两个字节,转换为ASII字符后放在以VB200为首字节的地址区里,那么一共占用了四个字节,VB200到VB203,分别存储“A”、“B”、“8”、“5”。由此可见转换后ASCII字符序列所占用的字节数是转换前16进制数所占用字节数的2倍,因为一个16进制数占用半个字节,而一个字符占用1个字节。转换后的结果如下图2所示:

 

10.27

 图2

 

 

2. ASCII字符转换为十六进制

 

该指令的形式及在指令列表中的位置如下图3所示:

 

10.27

图3

 

ATH指令是将长度为 LEN、从 IN 开始的 ASCII 字符转换为从 OUT 开始的十六进制数。可转换的***大 ASCII 字符数为 255 个字符。需要注意的是,该指令可转换的ASCII有效字符为数字0-9(16进制30-39)及大写的字母A-F(16进制41-46)。若超出这个范围指令将报错。比如VB300至VB303这四个字节里分别存放了ASCII字符“C”、“D”、“6”、“9”,执行完ATH指令,VW310中的数值为16#CD69,与HTA指令相反,转换后的结果如下图4所示:

10.27

 图4

 

 

 


三、 总结

 

今天讲的两个指令比较简单,大家多做练习,一定可以掌握。这类指令虽然不常用,但某些场合还是会应用到,所以希望大家能熟练使用,对今后的编程肯定会有帮助。


来源:技成培训网,作者:技成-何晓刚,转载请注明出处!




 

联系热线:13397493317(微信同号)   联系人:刘芳香 联系地址:上海市宝山区富联一路98弄6号

技术和报价服务:星期一至星期六8:00-22:00 西门子变频器服务商