Вверх ↑
Ответов: 163
Рейтинг: 33
#1: 2014-05-27 00:08:09 ЛС | профиль | цитата
GanjaKyp писал(а):
я не могу разобраться как получить эту строку в программе (например 05 04 00 05 01 00 00 00 00 00 00 00 00 00 00 00 00 00 0D 0A)

А зачем именно эту строку? Ее выдает снифер, с нашего элемента COM порт скорее всего придет 540510000000000000 и 2 не символьных кода, означающих перевод строки.
Попробуй так:
Add(MainForm,2953706,21,105)
{
}
Add(ComboBox,11023158,385,105)
{
Left=70
Top=35
Width=65
Height=21
Strings=#3:300|3:600|4:1200|4:2400|4:4800|4:9600|5:14400|5:19200|5:38400|5:57600|6:115200|6:128000|
Text=""
Point(doSelect)
}
Add(Label,7414994,322,70)
{
Left=10
Top=10
Width=47
Height=17
Caption="№ порта"
}
Add(Label,7221042,385,56)
{
Left=10
Top=40
Width=51
Height=17
Caption="скорость"
}
Add(Edit,8501238,322,119)
{
Left=70
Top=5
Text="1"
DataType=2
}
Add(COM,8120607,343,210)
{
link(onRead,10772354:doCompare,[])
link(Port,8501238:Text,[(349,180)(328,180)])
link(BaudRate,11023158:String,[(356,184)(398,184)])
}
Add(CheckBox,258478,35,203)
{
Left=10
Top=65
Width=110
Caption="открыть порт"
link(onCheck,10069476:doEvent,[])
}
Add(IndexToChanel,10069476,126,203)
{
link(onEvent1,9184129:doEvent1,[(170,209)(170,230)])
link(onEvent2,8120607:doOpen,[])
}
Add(Button,649574,35,273)
{
Left=10
Top=95
Width=110
Caption="взвесить"
link(onClick,10601268:doEvent1,[])
}
Add(If_else,10772354,406,217)
{
Op2=String()
link(onFalse,15482596:doEvent1,[])
}
Add(Hub,10601268,126,273)
{
link(onEvent1,10124000:doData,[])
link(onEvent2,16563596:doTimer,[(182,286)(182,335)])
}
Add(Timer,16563596,224,329)
{
Interval=100
Enable=1
AutoStop=100
link(onTimer,11363521:doData,[])
}
Add(DoData,11363521,273,329)
{
Data=Integer(256)
link(onEventData,8120607:doRead,[(324,335)(324,244)])
}
Add(LineBreak,14702954,119,336)
{
Caption="stop read"
link(Out,15911223:doWork2,[])
Primary=[75446,378,-133]
}
Add(Hub,15482596,455,224)
{
OutCount=3
link(onEvent1,75446:In,[(483,230)(483,209)])
link(onEvent2,13701641:doValue,[])
link(onEvent3,7250977:doEvent1,[(483,244)(483,363)])
}
Add(Memory,13701641,623,231)
{
Default=String()
}
Add(DoData,10124000,224,273)
{
Data=String(10)
link(onEventData,8120607:doWrite,[(303,279)(303,237)])
}
Add(Hub,9184129,182,224)
{
link(onEvent1,15911223:doWork1,[(207,230)])
link(onEvent2,8120607:doClose,[(270,237)(270,223)])
}
Add(HubEx,15911223,203,336)
{
link(onEvent,16563596:doStop,[])
}
Add(Str_Enum,3329721,623,322)
{
Delimiter=""
Direct=1
link(onEnum,16200581:doEvent,[])
link(String,13701641:Value,[])
}
Add(If_else,14454902,819,322)
{
Op2=String(0)
link(onFalse,7778065:doCompare,[])
}
Add(IndexToChanel,16200581,756,322)
{
Point(Index)
link(onEvent1,14454902:doCompare,[])
link(onEvent2,10758415:doWork1,[(807,335)])
link(Index,13019128:Value,[])
}
Add(Memory,13019128,756,266)
{
Default=Integer(0)
}
Add(ChanelToIndex,6164522,714,266)
{
link(onIndex,13019128:doValue,[])
}
Add(Hub,7250977,497,357)
{
OutCount=3
link(onEvent1,14424044:In,[(529,363)(529,342)])
link(onEvent2,1951499:In,[(532,370)(532,356)])
link(onEvent3,444385:doEvent1,[])
}
Add(LineBreak,4400244,658,266)
{
Caption="reset"
link(Out,6164522:doWork1,[])
Primary=[14424044,-112,70]
}
Add(LineBreak,11008380,742,392)
{
Caption="clear"
link(Out,2527612:doClear,[])
Primary=[1951499,-189,-42]
}
Add(Hub,5740559,917,329)
{
link(onEvent1,6164522:doWork2,[(943,335)(943,307)(702,307)(702,279)])
link(onEvent2,10758415:doWork3,[(943,342)(943,366)])
}
Add(HubEx,10758415,803,360)
{
Angle=1
link(onEvent,2527612:doStrCat,[(807,391)])
}
Add(Hub,444385,574,371)
{
link(onEvent1,3329721:doEnum,[(606,377)(606,328)])
link(onEvent2,1489854:doText,[(707,384)(707,468)])
}
Add(StrCat,2527612,826,385)
{
Point(doClear)
link(Str1,7676655:Var1,[(832,373)(823,373)(823,432)])
}
Add(GetDataEx,7676655,826,427)
{
link(Data,2527612:Result,[])
}
Add(If_else,7778065,868,329)
{
Type=1
Op2=Integer(9)
link(onTrue,5740559:doEvent1,[])
}
Add(Label,8529929,882,462)
{
Left=15
Top=130
Width=25
Height=17
Caption="вес:"
}
Add(Label,1489854,826,462)
{
Left=65
Top=130
Width=10
Height=17
Caption="0"
link(Text,7676655:Var2,[])
}


Код конечно китайский , лаконичней было бы обработать строку математически, как в примере Netspirit`а.
карма: 3

0
файлы: 1code_33675.txt [3.7KB] [430]