Вверх ↑
Этот топик читают: Гость
Ответов: 138
Рейтинг: 2
#1: 2017-06-08 19:27:51 ЛС | профиль | цитата
Есть программа

Add(Service,7189109,140,105)
{
Wait=0
link(onStart,5481620:doEvent1,[])
link(onStop,12038044:doWork2,[(205,118)(205,412)])
}
Add(Ini,13896480,644,77)
{
FileName="SIT.ini"
Section="COMspeed"
Key="COMspeed"
Type=1
link(onResult,9593167:doValue,[])
}
Add(Ini,3131760,644,133)
{
FileName="SIT.ini"
Section="COMport"
Key="COMport"
Type=1
link(onResult,5481943:doValue,[])
}
Add(COMEX,4082497,406,399)
{
DTR=1
RTS=1
Point(onOpen)
Point(onError)
Point(onClose)
link(onRead,4181219:in,[(482,412)(482,419)])
link(Port,16720945:Var,[(412,382)(391,382)])
link(BaudRate,9344502:Var,[(419,392)(398,392)])
link(onOpen,4181219:open,[])
link(onError,4181219:error,[])
}
Add(If_else,13014796,784,392)
{
Op1=String(off)
link(onTrue,11968355:doPowerOff,[(832,398)(832,419)])
link(Op2,803146:Var3,[(797,380)(760,380)(760,418)])
}
Add(ExitWindows,11968355,847,392)
{
QuickForce=0
Point(doPowerOff)
}
Add(Ini,9863913,644,189)
{
FileName="SIT.ini"
Section="Notification"
Key="Notification"
Type=1
link(onResult,12774457:doValue,[])
}
Add(Memory,12774457,679,189)
{
}
Add(Memory,5481943,679,133)
{
}
Add(Memory,9593167,679,77)
{
}
Add(LineBreak,2243802,679,231)
{
Type=1
link(Data,12774457:Value,[])
Primary=[15884623,-588,168]
}
Add(LineBreak,14759302,679,168)
{
Type=1
link(Data,5481943:Value,[])
Primary=[16720945,-294,175]
}
Add(LineBreak,6508154,679,112)
{
Type=1
link(Data,9593167:Value,[])
Primary=[9344502,-287,252]
}
Add(LineBreak,3297058,714,427)
{
Caption="Plauer"
Type=1
link(Data,803146:Var2,[])
Primary=[12239910,-588,35]
}
Add(LineBreak,11892186,70,490)
{
Caption="Player"
link(Out,16129343:doEvent1,[])
Primary=[11138918,574,-91]
}
Add(Hub,14287879,588,406)
{
OutCount=5
link(onEvent1,461059:doEvent2,[(607,412)(607,338)(408,338)(408,265)])
link(onEvent2,7165480:In,[(630,419)(630,384)])
link(onEvent3,8570588:doValue,[(651,426)(651,364)])
link(onEvent4,11138918:In,[(623,433)(623,405)])
link(onEvent5,13587115:doMultiReplace,[(620,440)(620,461)])
}
Add(GetDataEx,803146,714,413)
{
link(Data,8570588:Value,[(720,401)(706,401)])
}
Add(MultiReplace,13587115,637,455)
{
Mode=1
link(onResult,12086259:doExec,[])
link(ReplaceList,4890113:Text,[(650,331)(573,331)])
}
Add(WinExec,12086259,686,455)
{
}
Add(StrList,4890113,567,161)
{
}
Add(Hub,3384054,364,420)
{
InCount=2
OutCount=1
link(onEvent1,4082497:doWrite,[(392,426)(392,419)])
}
Add(Hub,461059,420,252)
{
InCount=2
OutCount=1
link(onEvent1,9077209:doPart,[(441,258)(441,195)])
}
Add(Application,12632479,476,147)
{
}
Add(FilePartElm,9077209,476,189)
{
Mode=0
link(onPart,9314984:doStrCat,[])
link(FileName,12632479:AppFileName,[])
}
Add(StrCat,9314984,518,189)
{
Str2="files.ini"
link(onStrCat,4890113:doLoad,[])
}
Add(LineBreak,8763575,56,280)
{
Primary=[7165480,602,98]
}
Add(LineBreak,10526043,273,427)
{
link(Out,3384054:doEvent2,[])
Primary=[14077337,-154,-147]
}
Add(Memory,8570588,700,358)
{
}
Add(MultiElementEx,4181219,525,406)
{
link(out,14287879:doEvent1,[])
link(open COM port,14930966:In,[(574,419)(574,443)(527,443)(527,461)])
}
BEGIN_SDK
Add(EditMultiEx,9916280,21,21)
{
WorkCount=#5:Start|2:in|4:open|5:error|
EventCount=#3:out|13:open COM port|
Width=755
Height=403
link(Start,13727387:doWork,[(35,27)(35,6)])
link(in,10955674:doWork,[(63,34)(63,17)])
link(open,3195055:doEvent1,[(45,41)(45,90)])
link(error,2357852:doEvent1,[(39,48)(39,118)])
}
Add(GHotKey,3020619,133,175)
{
Alt=1
Ctrl=1
Key=27
link(onEventHotKey,8629139:doCompare,[])
}
Add(LineBreakEx,13727387,49,0)
{
Caption="Star"
}
Add(LineBreakEx,5924971,70,175)
{
Caption="Star"
Type=1
link(OnEvent,3020619:doStartHotKey,[])
}
Add(Switch,15627858,434,91)
{
DataOn=Integer(1)
DataOff=Integer(0)
Default=0
Point(onOn)
Point(onOff)
link(onSwitch,7751993:doMultiReplace,[(488,97)(488,48)])
link(onOn,4150201:doWork2,[])
link(onOff,4150201:doWork3,[(501,111)])
}
Add(Message,221399,623,42)
{
}
Add(FormatStr,12619513,567,42)
{
DataCount=1
Mask="Программа в состоянии %1/ Успешно!"
link(onFString,221399:doMessage,[])
}
Add(MultiReplace,7751993,511,42)
{
ReplaceList="1=On;\r\n0=Off;"
Mode=1
link(onResult,12619513:doString,[])
}
Add(Memory,14739232,532,98)
{
Default=Integer(1)
}
Add(HubEx,4150201,497,98)
{
link(onEvent,14739232:doValue,[])
}
Add(LineBreakEx,10955674,154,11)
{
Caption="In"
}
Add(LineBreakEx,15896438,476,168)
{
Caption="In"
Type=1
link(OnEvent,1032889:doEvent,[])
}
Add(IndexToChanel,1032889,532,168)
{
Point(Index)
link(onEvent2,9916280:out,[(670,181)(670,27)])
link(Index,14739232:Value,[])
}
Add(Switch,9982402,217,112)
{
DataOn=Integer(1)
DataOff=Integer(0)
Point(onOn)
Point(onOff)
Point(doOn)
Point(State)
}
Add(Message,2497670,329,182)
{
Type=2
Point(onYES)
link(onYES,14993438:doWork1,[(368,195)])
}
Add(FormatStr,8530383,273,182)
{
DataCount=1
Mask="Программа пытается установить соединение с COM port'om /Остановить её?/"
link(onFString,2497670:doMessage,[])
}
Add(If_else,8629139,210,175)
{
Op1=Integer(1)
link(onTrue,15627858:doSwitch,[(262,181)(262,154)(338,154)(338,97)])
link(onFalse,8530383:doString,[])
link(Op2,9982402:State,[])
}
Add(Hub,3195055,70,84)
{
link(onEvent1,9982402:doSwitch,[(150,90)(150,118)])
link(onEvent2,9490176:In,[])
}
Add(Hub,2357852,56,112)
{
link(onEvent1,9982402:doReset,[(144,118)(144,125)])
link(onEvent2,14513386:In,[])
}
Add(LineBreak,4961463,301,231)
{
link(Out,14993438:doWork2,[])
Primary=[9490176,-189,-140]
}
Add(LineBreak,2715193,301,252)
{
Caption="-"
link(Out,4694006:doStart,[(423,258)(423,237)])
Primary=[14513386,-210,-133]
}
Add(Thread,4694006,469,231)
{
Point(doStopFlag)
link(onExec,9916280:open COM port,[(695,237)(695,34)])
}
Add(HubEx,14993438,364,231)
{
link(onEvent,4694006:doStop,[(400,237)(400,244)])
}
END_SDK
Add(Hub,5481620,224,105)
{
OutCount=8
link(onEvent1,4296760:In,[(252,111)(252,97)])
link(onEvent2,10118343:In,[])
link(onEvent3,7489658:In,[(259,125)(259,139)])
link(onEvent6,9719234:In,[(248,146)(248,174)])
link(onEvent7,3259584:In,[(252,153)(252,188)])
link(onEvent8,5346630:doWork1,[(354,160)])
}
Add(LineBreak,6181080,553,77)
{
link(Out,13896480:doRead,[])
Primary=[4296760,-287,14]
}
Add(LineBreak,16670038,595,133)
{
link(Out,3131760:doRead,[])
Primary=[10118343,-329,-21]
}
Add(LineBreak,6572222,602,189)
{
link(Out,9863913:doRead,[])
Primary=[7489658,-336,-56]
}
Add(LineBreak,9179786,364,252)
{
link(Out,461059:doEvent1,[])
Primary=[9719234,-98,-84]
}
Add(LineBreak,7014236,476,350)
{
link(Out,4181219:Start,[(516,356)(516,412)])
Primary=[3259584,-210,-168]
}
Add(MultiElement,2878098,91,420)
{
link(onEvent1,3384054:doEvent1,[])
link(Data1,15884623:Var,[])
}
BEGIN_SDK
Add(EditMulti,7293230,21,21)
{
EventCount=1
WorkCount=1
DataCount=1
Width=573
Height=487
link(doWork1,15646537:doEvent1,[])
}
Add(DoData,7847080,315,273)
{
Data=String(S)
link(onEventData,6340300:doEvent2,[(335,279)(335,237)])
}
Add(Hub,6340300,350,224)
{
InCount=2
OutCount=1
link(onEvent1,7293230:onEvent1,[(479,230)(479,27)])
}
Add(DoData,2891777,301,217)
{
Data=String(A)
link(onEventData,6340300:doEvent1,[(341,223)(341,230)])
}
Add(Hub,1623713,210,245)
{
InCount=2
link(onEvent1,2891777:doData,[(262,251)(262,223)])
link(onEvent2,4915675:doTimer,[(242,258)(242,279)])
}
Add(If_else,6757027,154,245)
{
Op1=Integer(1)
link(onTrue,1623713:doEvent1,[])
link(Op2,7293230:Data1,[(167,133)(27,133)])
}
Add(Ini,3648801,161,301)
{
FileName="SIT.ini"
Section="S"
Key="S"
link(onResult,4915675:doInterval,[(226,307)(226,293)])
}
Add(Timer,4915675,259,273)
{
Interval=500
Enable=1
AutoStop=1
Point(doInterval)
link(onTimer,7847080:doData,[])
}
Add(LineBreak,9013881,168,280)
{
link(Out,1623713:doEvent2,[(204,286)(204,258)])
Primary=[12955779,-56,-224]
}
Add(Hub,15646537,35,21)
{
link(onEvent1,3648801:doRead,[(105,27)(105,307)])
link(onEvent2,12955779:In,[(81,34)(81,62)])
}
END_SDK
Add(LineBreak,6918245,49,420)
{
link(Out,2878098:doWork1,[])
Primary=[11875662,217,-266]
}
Add(MultiElementEx,16129343,126,490)
{
link(Data,12239910:Var,[])
}
BEGIN_SDK
Add(EditMultiEx,13115465,21,21)
{
WorkCount=#8:doEvent1|
DataCount=#4:Data|
Width=601
Height=536
link(doEvent1,102692:doEvent1,[(105,27)(105,195)])
}
Add(StrList,8476112,364,224)
{
@Hint=#8:0 - Prew|14:1 - Play/Pause|8:2 - Next|10:3 - Звук +|10:4 - Звук -|28:6 - Открыть плеер по лефолту|
Strings=#3:177|3:179|3:176|3:174|3:175|3:181|
Point(doGetString)
Point(onGetString)
Point(IdxToSelect)
link(onGetString,9758585:doPress,[(429,237)(429,324)(352,324)(352,405)])
AddHint(115,-1,152,78,@Hint)
}
Add(KeyEvent,9758585,378,399)
{
link(Handle,10838508:Value,[])
}
Add(Memory,10838508,378,350)
{
Default=Integer(0)
Point(Data)
link(Data,8316693:CurrentID,[])
}
Add(ChanelToIndex,1802464,315,231)
{
Count=6
link(onIndex,8476112:doGetString,[(356,237)(356,272)])
}
Add(Hub,102692,189,189)
{
OutCount=6
link(onEvent1,2965005:doCompare,[(210,195)(210,174)])
link(onEvent2,4372608:doCompare,[(210,202)(210,223)])
link(onEvent3,5189170:doCompare,[(210,209)(210,272)])
link(onEvent4,5415406:doCompare,[(210,216)(210,321)])
link(onEvent5,10270960:doCompare,[(210,223)(210,363)])
link(onEvent6,4628896:doCompare,[(210,230)(210,412)])
}
Add(If_else,2965005,224,168)
{
Op1=String(‹)
link(onTrue,1802464:doWork1,[(289,174)(289,237)])
link(Op2,13928232:Var2,[])
}
Add(If_else,4372608,224,217)
{
Op1=String(PS)
link(onTrue,1802464:doWork2,[(289,223)(289,244)])
link(Op2,11965273:Var2,[])
}
Add(If_else,5189170,224,266)
{
Op1=String(›)
link(onTrue,1802464:doWork3,[(289,272)(289,251)])
link(Op2,7735617:Var2,[])
}
Add(If_else,5415406,224,315)
{
Op1=String(-)
link(onTrue,1802464:doWork4,[(289,321)(289,258)])
link(Op2,14888043:Var2,[])
}
Add(If_else,10270960,224,357)
{
Op1=String(+)
link(onTrue,1802464:doWork5,[(289,363)(289,265)])
link(Op2,10190159:Var2,[])
}
Add(If_else,4628896,224,406)
{
Op1=String(-+)
link(onTrue,1802464:doWork6,[(289,412)(289,272)])
link(Op2,10190159:Var1,[(237,377)(228,377)(228,348)])
}
Add(GetDataEx,7735617,231,252)
{
link(Data,11965273:Var1,[(237,230)(228,230)(228,208)])
}
Add(GetDataEx,14888043,231,301)
{
link(Data,7735617:Var1,[(237,286)(228,286)(228,257)])
}
Add(GetDataEx,10190159,231,343)
{
link(Data,14888043:Var1,[(237,331)(228,331)(228,306)])
}
Add(GetDataEx,13928232,231,147)
{
link(Data,13115465:Data,[(237,84)(27,84)])
}
Add(GetDataEx,11965273,231,203)
{
link(Data,13928232:Var1,[(237,185)(228,185)(228,152)])
}
Add(EnumProcess,8316693,378,287)
{
Name="AIMP.exe"
Point(doFindName)
Point(onNotFind)
link(onProcess,10838508:doValue,[(422,293)(422,325)(366,325)(366,356)])
link(onNotFind,10838508:doClear,[(422,300)(422,332)(366,332)(366,363)])
}
Add(Timer,1837972,301,294)
{
link(onTimer,8316693:doFindName,[(345,300)(345,314)])
}
END_SDK
Add(LineBreak,3678298,217,378)
{
Caption="Open COM port"
link(Out,10217366:doEvent1,[])
Primary=[14930966,322,77]
}
Add(Hub,10217366,322,378)
{
link(onEvent1,12038044:doWork1,[(340,384)])
link(onEvent2,5346630:doWork2,[])
}
Add(HubEx,5346630,350,385)
{
Angle=1
link(onEvent,4082497:doOpen,[(354,405)])
}
Add(HubEx,12038044,336,406)
{
link(onEvent,4082497:doClose,[])
}

С её помощью я управляю AIMP'om через ардуино, а также запускаю некоторые программы через туже ардуинку
Но со временем заметил, что иногда ARCL (моя программа) не хочет соединяться с ардуино
Оказалось это из-за драйвера, а что-бы всё заработало надо перезагрузить комп или "перезагрузить драйвер" то есть с начало выключить его,а потом включить
Хочу потом доделать в программе проверку на доступность порта и если он не доступен с начало "переконектиться" к порту ,а если не катит то перезагрузить драйвер ардуинки
Но как это сделать через Хиасм? Я так полагаю через командную строку ? (Вроде искал "как управлять драйверами через командную строку в гугле, но ничего не нашёл)
карма: 0
私はアニメが大好き
0
vip
#1.1контекстная реклама от партнеров
Администрация
Ответов: 15294
Рейтинг: 1518
#2: 2017-06-10 00:24:14 ЛС | профиль | цитата
А не проще установить драйвер, у которого подобных проблем нет?
карма: 26
0
Ответов: 138
Рейтинг: 2
#3: 2017-06-10 17:25:03 ЛС | профиль | цитата
Dilma писал(а):
А не проще установить драйвер, у которого подобных проблем нет?

Нет такого
Да к то-муже если я подключая паяльник драйвер слетает, а подключаю я его частенько
карма: 0
私はアニメが大好き
0
3
Сообщение
...
Прикрепленные файлы
(файлы не залиты)