Вверх ↑
Ответов: 4631
Рейтинг: 749
#1: 2017-01-16 12:07:55 ЛС | профиль | цитата
Леонид, проблема в том, что COMEX принимает данные в виде строки. Ему нужно вот это +100+30-55 преобразовать в строку (показано в HEX):
2B642B1E2D37

Здесь на смещение я отвел 1 байт, но если оно может быть больше 255, то нужно отводить 2 байта. 2B - знак '+', 2D - знак '-', остальное - смещение.

amateur, если это так, то подобную строку можно сформировать так (StrToHex при отправке в порт не нужно):

Add(MainForm,2953706,21,105)
{
Position=1
}
Add(Memory,2932007,189,119)
{
Default=String(+)
AddHint(-10,-34,31,13,Default)
}
Add(Memory,6454270,259,119)
{
Default=Integer(100)
AddHint(-10,-34,33,13,Default)
}
Add(Memory,1023962,441,119)
{
Default=Integer(30)
AddHint(-10,-34,27,13,Default)
}
Add(Memory,14007082,658,119)
{
Default=Integer(55)
AddHint(-10,-34,27,13,Default)
}
Add(Memory,7101387,343,119)
{
Default=String(+)
AddHint(-10,-34,31,13,Default)
}
Add(Memory,18260,546,119)
{
Default=String(-)
AddHint(-10,-34,28,13,Default)
}
Add(StrCat,8739572,189,259)
{
link(onStrCat,13102809:doStrCat,[])
link(Str1,2932007:Value,[])
link(Str2,16688035:GetData,[(202,233)(223,233)])
}
Add(StrCat,13102809,336,259)
{
link(onStrCat,2874153:doStrCat,[])
link(Str2,7101387:Value,[])
}
Add(StrCat,2874153,392,259)
{
link(onStrCat,12580061:doStrCat,[])
link(Str2,12031991:GetData,[])
}
Add(StrCat,12580061,539,259)
{
link(onStrCat,2771292:doStrCat,[])
link(Str2,18260:Value,[])
}
Add(Convertor,15299091,259,175)
{
Mode=4
link(onResult,16688035:doData,[(303,181)(303,169)(205,169)(205,181)])
link(Data,6454270:Value,[])
}
Add(EventFromData,16688035,217,175)
{
link(onEvent,15299091:doConvert,[])
}
Add(Convertor,10840331,441,175)
{
Mode=4
link(onResult,12031991:doData,[(485,181)(485,169)(387,169)(387,181)])
link(Data,1023962:Value,[])
}
Add(EventFromData,12031991,399,175)
{
link(onEvent,10840331:doConvert,[])
}
Add(Convertor,8762883,658,182)
{
Mode=4
link(onResult,15998340:doData,[(702,188)(702,176)(604,176)(604,188)])
link(Data,14007082:Value,[])
}
Add(EventFromData,15998340,616,182)
{
link(onEvent,8762883:doConvert,[])
}
Add(StrCat,2771292,609,259)
{
link(onStrCat,6362806:doConvert,[])
link(Str2,15998340:GetData,[])
}
Add(Button,14890044,112,259)
{
Left=25
Top=15
link(onClick,8739572:doStrCat,[])
}
Add(Edit,174288,728,259)
{
Left=25
Top=50
Width=250
Text=""
}
Add(StreamConvertor,6362806,679,259)
{
Mode=2
link(onResult,174288:doText,[])
}
карма: 26

0
Редактировалось 2 раз(а), последний 2017-01-16 12:09:10