S7200smart字符串问题

触摸屏一个字符串变量VB4500(10个字)输送到PLC,平时字数不定,可能是3-7个汉字都有可能,如果是3个汉字就有7个字的空位,PLC读到字符串VB4500后,和PLC的另一变内的汉字组合成一句话,送给另一语音模块(485通讯),语音模块读到两个字符串中间7个字的空位就断开了,0为结束位,请问怎样把七个空位补充成空格字符?

问题补充:
和PLC内的另一个字符串变量,组合成一句话,发送给语音模块,语音模块读取这20个字,中间不能有空字(可用空格键代替),字符串怎样输入空格字符。

最佳答案

通常触摸屏读写200 SMART字符串是不包括string字符长度(string第一个字节)
可以考虑写入PLC字符串的同时,写入对应的字节个数(即字符长度,一个ASCII为1个字节,一个中文为2个字节)
然后把接收的字符串使用STR_CPY指令复制到一新的字符串空间,然后再使用STR_CAT指令拼接上待组合的字符串,组成一个新的字符串送给语音模块
 
S7-200 SMART 系统手册
https://support.industry.siemens.com/cs/cn/zh/view/109745610
西门子 S7-200 SMART PLUS V2.3 技术参考
https://support.industry.siemens.com/cs/cn/zh/view/76488152

提问者对于答案的评价:

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

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2020年10月30日 下午6:16
下一篇 2020年10月30日

相关推荐

发表回复

登录后才能评论