Вверх ↑
Ответов: 3
Рейтинг: 0
#1: 2019-10-10 06:07:53 ЛС | профиль | цитата
Спасибо! Разобрался! Если есть возможность можете объяснить... К компьютеру подключен блютуз модуль, на скорости 9600 бот, передаю скорость с ардуинки в котором модуль HC06 блютуз, на com порт. Данные в виде числа от 1 до 255 с задержкой секунда. Вывожу цифры по мере поступления каждый раз в новой строке. К примеру должно приходить целое число 100, но бывает такой момент что число приходит не полностью а 1 и с новой строки 00, или 10 и с новой строки 0, а должно 100, понимаю что скорей всего причина в скорости передачи, и HIASM не успевает вывести всю строку целиком. Как можно выйти из данной ситуации? Если воспользоватся передачей не по блютузу а USB с ардуинки в COM порт то все норм.
Add(Timer,11901500,406,112)
{
Interval=10
Enable=1
link(onTimer,16112240:doData,[])
}
Add(DoData,16112240,455,112)
{
Data=Integer(16)
link(onEventData,10903250:doRead,[])
}
Add(Hub,15962356,343,84)
{
OutCount=3
link(onEvent1,10903250:doOpen,[])
link(onEvent2,11901500:doTimer,[(381,97)(381,118)])
}
Add(Button,6627573,294,84)
{
Left=10
Top=37
Caption="Start"
link(onClick,15962356:doEvent1,[])
}
Add(Button,1445190,294,154)
{
Left=10
Top=55
Caption="Stop"
link(onClick,13915471:doEvent1,[])
}
Add(Hub,13915471,343,154)
{
InCount=2
OutCount=3
link(onEvent1,10903250:doClose,[(501,160)(501,97)])
link(onEvent2,11901500:doStop,[(380,167)(380,125)])
}
Add(MainForm,3499755,210,147)
{
Width=1091
Height=595
Point(onClose)
link(onClose,13915471:doEvent2,[(334,174)(334,167)])
}
Add(Edit,10797025,490,35)
{
Left=15
Top=10
Text="9"
DataType=2
}
Add(COM,10903250,511,84)
{
Port=8
link(onRead,11923192:doCompare,[])
link(Port,10797025:Text,[(517,75)(496,75)])
link(BaudRate,12135757:Text,[(524,75)(538,75)])
}
Add(Edit,12135757,532,35)
{
Left=80
Top=10
Text="9600"
DataType=2
}
Add(If_else,11923192,588,91)
{
Type=5
Op2=String()
link(onTrue,5402983:doString,[])
}
Add(FormatStr,5402983,637,91)
{
Mask="%1\10\13%2"
link(onFString,3578917:doWork2,[])
link(Str2,6626954:Var1,[(650,82)(699,82)(699,131)])
}
Add(Memory,7858327,714,91)
{
link(onData,7654372:doSplit,[(753,97)(753,118)(704,118)(704,153)])
}
Add(StrPart,7654372,714,147)
{
Char="\13"
link(onSplit,3578917:doWork3,[(753,153)(753,139)(690,139)])
link(onPart,11119196:doReplace,[])
link(Str,6626954:Var2,[])
}
Add(Replace,11119196,763,154)
{
SubStr="\10"
link(onReplace,6593453:doCompare,[])
}
Add(HubEx,3578917,686,91)
{
link(onEvent,7858327:doValue,[])
}
Add(GetDataEx,6626954,714,126)
{
link(Data,7858327:Value,[])
}
Add(If_else,6593453,810,154)
{
link(onFalse,11943547:doAdd,[])
link(Op2,9165463:Value,[])
}
Add(Memory,9165463,817,109)
{
}
Add(Memo,11943547,862,161)
{
Left=130
Top=10
Width=940
Height=540
ScrollBars=3
link(onChange,10903250:doRXClear,[(906,167)(906,135)(499,135)(499,104)])
}

карма: 0

0
Редактировалось 1 раз(а), последний 2019-10-10 06:09:43