Вверх ↑
Этот топик читают: Гость
Этот топик был перемещен из раздела "Помощь по среде"
Ответов: 91
Рейтинг: 6
#1: 2021-05-30 21:40:45 ЛС | профиль | цитата
Привет.
Помогите пожалуйста как сделать простейшую операцию преобразования НЕХ в Char.

Сама идея такая - в окне программы вводим адрес регистра в виде НЕХ, как указано в списке регистров микросхемы.
Потом это число преобразуем в Char и шлем в СОМ порт. На устройстве считываем как десятичное или bin и шлем в микросхему.

Кроме вот такой схемы ничего не приходит в голову.



Add(Edit,13864584,483,357)
{
Left=115
Top=50
Width=70
Text=""
link(onChange,7205753:doConvert,[(573,363)(573,402)(510,402)(510,432)])
}
Add(Edit,5648323,679,427)
{
Left=215
Top=45
Width=95
Height=30
Color=12639424
Font=[MS Sans Serif,14,1,0,1]
Ctl3D=1
WinStyle=1
Alignment=2
}
Add(Convertor,7205753,550,426)
{
Mode=1
link(onResult,6261538:doConvert,[(578,432)(578,433)])
link(Data,13864584:Text,[(556,414)(489,414)])
}
Add(Convertor,6261538,616,427)
{
Mode=4
link(onResult,5648323:doText,[])
}


карма: 0

0
vip
#1.1контекстная реклама от партнеров
Ответов: 8888
Рейтинг: 823
#2: 2021-05-31 10:28:54 ЛС | профиль | цитата
ibegen,

Add(Edit,13864584,210,140)
{
Left=30
Top=50
Width=70
Text="FF20FF61"
ClearAfterEnter=1
link(onEnter,13129069:doConvert,[(249,153)(249,146)])
}
Add(Edit,5648323,329,140)
{
Left=140
Top=50
Width=205
Height=30
Color=12639424
Font=[MS Sans Serif,14,1,0,1]
Ctl3D=1
WinStyle=1
Alignment=2
}
Add(StreamConvertor,13129069,266,140)
{
Mode=3
link(onResult,5648323:doText,[])
}

nesco
карма: 19

0
Ответов: 91
Рейтинг: 6
#3: 2021-05-31 13:53:01 ЛС | профиль | цитата
Леонид.
Как обычно спасибо преогромнейшее.
Скажите пожалуйста, где этот элемент взять?
У меня нет подобного.... не нашел где и в какой вкладке компонентов....

Ещё не проверял, но похоже работает....
карма: 0

0
Ответов: 8888
Рейтинг: 823
#4: 2021-05-31 19:44:59 ЛС | профиль | цитата
ibegen, вкладка Файлы --> раздел Потоки --> Конвертер потоков (StreamConvertor)
карма: 19

0
Ответов: 91
Рейтинг: 6
#5: 2021-06-01 20:34:23 ЛС | профиль | цитата
Леонид, спасибо!
Со слепу не увидел.
Теперь самое интересное....

Мне надо 3 разных Char соединить и постлать в СОМ порт. Это будет адрес устройства, адрес регистра и собственно настройки регистра.
Так это не работает.
Опять мозг кипит и буксует.
Адреса 00Н и 01Н не выводятся.... Все остальные вроде работают - от 02Н до 7ВН
Вот примерная схема.


Add(Edit,13864584,399,147)
{
Left=80
Top=25
Width=70
Text="00H"
ClearAfterEnter=1
link(onChange,13129069:doConvert,[])
}
Add(Edit,5648323,616,238)
{
Left=80
Top=50
Width=140
Height=30
Color=12639424
Font=[MS Sans Serif,14,1,0,1]
Ctl3D=1
WinStyle=1
Text=""
Alignment=2
}
Add(StreamConvertor,13129069,455,147)
{
Mode=3
link(onResult,6847025:doValue,[])
link(Data,13864584:Text,[(461,135)(445,135)(445,192)(405,192)])
}
Add(FormatStr,3527994,525,238)
{
Mask="%1%2"
link(onFString,5648323:doText,[])
link(Str1,6847025:Value,[(531,208)(524,208)])
link(Str2,5136792:Value,[(538,208)(741,208)])
}
Add(Memory,6847025,518,147)
{
Default=String()
}
Add(Edit,9518005,616,147)
{
Left=170
Top=25
Color=12639424
Font=[MS Sans Serif,8,1,0,1]
Ctl3D=1
WinStyle=1
Text="01H"
Alignment=2
link(onChange,13767125:doConvert,[])
}
Add(Button,14820405,434,238)
{
Left=120
Top=95
link(onClick,3527994:doString,[])
}
Add(StreamConvertor,13767125,672,147)
{
Mode=3
link(onResult,5136792:doValue,[])
link(Data,9518005:Text,[(678,135)(662,135)(662,190)(622,190)])
}
Add(Memory,5136792,735,147)
{
Default=String()
}


карма: 0

0
Ответов: 8888
Рейтинг: 823
#6: 2021-06-01 22:51:46 ЛС | профиль | цитата
ibegen, добавлять символ "Н" не надо, этот символ исключительно для пользователя, чтобы понимал "это НЕХ". Здесь по умолчанию подаются HEX. Кроме того среди 256 значений есть "непечатные" в Edit, вы их не видите, но в потоке они присутствуют и в СОМ порт попадут


Add(Edit,13864584,441,56)
{
Left=80
Top=25
Width=70
Text="FF"
ClearAfterEnter=1
}
Add(Edit,5648323,539,175)
{
Left=80
Top=50
Width=140
Height=30
Color=12639424
Font=[MS Sans Serif,14,1,0,1]
Ctl3D=1
WinStyle=1
Text=""
Alignment=2
link(onChange,11701964:doString,[])
}
Add(StreamConvertor,13129069,441,112)
{
Mode=3
link(onResult,6847025:doValue,[])
link(Data,2236560:Var2,[])
}
Add(FormatStr,3527994,483,175)
{
Mask="%1%2"
link(onFString,5648323:doText,[])
link(Str1,6847025:Value,[])
link(Str2,5136792:Value,[(496,152)(573,152)])
}
Add(Memory,6847025,483,112)
{
Default=String()
link(onData,13767125:doConvert,[])
}
Add(Edit,9518005,525,56)
{
Left=170
Top=25
Color=12639424
Font=[MS Sans Serif,8,1,0,1]
Ctl3D=1
WinStyle=1
Text="41"
Alignment=2
}
Add(Button,14820405,392,112)
{
Left=10
Top=55
link(onClick,13129069:doConvert,[])
}
Add(StreamConvertor,13767125,525,112)
{
Mode=3
link(onResult,5136792:doValue,[])
link(Data,4308024:Var2,[])
}
Add(Memory,5136792,567,112)
{
Default=String()
link(onData,3527994:doString,[(606,118)(606,160)(473,160)(473,181)])
}
Add(Edit,3548627,714,175)
{
Left=230
Top=50
Width=140
Height=30
Color=12639424
Font=[MS Sans Serif,14,1,0,1]
Ctl3D=1
WinStyle=1
Text=""
Alignment=2
}
Add(StreamConvertor,6466559,665,175)
{
Mode=3
link(onResult,3548627:doText,[])
}
Add(FormatStr,11701964,616,175)
{
Mask="%1%2"
link(onFString,6466559:doConvert,[])
link(Str1,2236560:Var3,[(622,103)])
link(Str2,4308024:Var3,[(629,96)])
}
Add(GetDataEx,2236560,441,98)
{
link(Data,13864584:Text,[])
}
Add(GetDataEx,4308024,525,91)
{
link(Data,9518005:Text,[])
}

карма: 19

0
Ответов: 91
Рейтинг: 6
#7: 2021-06-01 23:19:49 ЛС | профиль | цитата
Леонид, спасибо.
Понятно про Н....
Я совсем перестал понимать....

Даже в вашей схеме не работают такие адреса как 00 и 01.
Так же не работает адрес 0А....
И в СОМ порт они не идут, любые другие идут а эти нет....
карма: 0

0
Ответов: 8888
Рейтинг: 823
#8: 2021-06-02 09:27:31 ЛС | профиль | цитата
ibegen писал(а):
И в СОМ порт они не идут
А посмотреть идут или нет:
Посмотреть

Add(Edit,13864584,301,91)
{
Left=80
Top=10
Width=70
Text="FF"
ClearAfterEnter=1
}
Add(Edit,5648323,504,210)
{
Left=80
Top=35
Width=140
Height=30
Color=12639424
Font=[MS Sans Serif,14,1,0,1]
Ctl3D=1
WinStyle=1
Text=""
Alignment=2
link(onChange,11701964:doString,[])
}
Add(StreamConvertor,13129069,301,147)
{
Mode=3
link(onResult,6847025:doValue,[])
link(Data,2236560:Var2,[])
}
Add(FormatStr,3527994,343,210)
{
Mask="%1%2"
link(onFString,5648323:doText,[])
link(Str1,6847025:Value,[])
link(Str2,5136792:Value,[(356,194)(538,194)])
}
Add(Memory,6847025,343,147)
{
Default=String()
link(onData,5351154:doConvert,[])
}
Add(Edit,9518005,490,91)
{
Left=170
Top=10
Width=80
Color=12639424
Font=[MS Sans Serif,8,1,0,1]
Ctl3D=1
WinStyle=1
Text="41"
Alignment=2
}
Add(Button,14820405,252,147)
{
Left=10
Top=40
link(onClick,13129069:doConvert,[])
}
Add(StreamConvertor,13767125,490,147)
{
Mode=3
link(onResult,5136792:doValue,[])
link(Data,16299482:Var2,[])
}
Add(Memory,5136792,532,147)
{
Default=String()
link(onData,9455118:doConvert,[])
}
Add(Edit,3548627,770,210)
{
Left=230
Top=35
Width=140
Height=30
Color=12639424
Font=[MS Sans Serif,14,1,0,1]
Ctl3D=1
WinStyle=1
Text=""
Alignment=2
}
Add(StreamConvertor,6466559,721,210)
{
Mode=3
link(onResult,3548627:doText,[])
}
Add(FormatStr,11701964,672,210)
{
Mask="%1%2"
link(onFString,6466559:doConvert,[])
link(Str1,2236560:Var3,[(678,138)])
link(Str2,16299482:Var3,[(685,131)])
}
Add(GetDataEx,2236560,301,133)
{
link(Data,13864584:Text,[])
}
Add(Convertor,5351154,385,147)
{
Mode=3
link(onResult,1070420:doText,[])
}
Add(GetDataEx,16299482,490,126)
{
link(Data,9518005:Text,[])
}
Add(Edit,1070420,434,147)
{
Left=85
Top=75
link(onChange,13767125:doConvert,[])
}
Add(Edit,1698682,616,147)
{
Left=175
Top=75
link(onChange,3527994:doString,[(655,153)(655,188)(333,188)(333,216)])
}
Add(Convertor,9455118,574,147)
{
Mode=3
link(onResult,1698682:doText,[])
}

Сколько ни пытал, всё передаётся и принимается
Пытка

Add(MainForm,10299557,518,259)
{
Width=423
Point(onClose)
link(onCreate,15408655:doOpen,[])
link(onClose,15408655:doClose,[])
}
Add(COM,15408655,595,273)
{
link(onRead,305461:doConvert,[])
}
Add(Hub,15691808,469,294)
{
link(onEvent1,15408655:doWrite,[])
link(onEvent2,9165036:doStart,[])
}
Add(DoData,5999622,546,301)
{
Data=Integer(16)
link(onEventData,15408655:doRead,[])
}
Add(InfoTip,11578524,581,224)
{
Info=#21:Замкнуть 2 и 3 выводы|
Width=57
Height=46
}
Add(Button,4422917,91,182)
{
Left=10
Top=35
Caption="<"
link(onClick,1235403:doPrev,[(130,188)(130,174)])
}
Add(Button,7287450,91,147)
{
Left=10
Top=5
Caption=">"
link(onClick,1235403:doNext,[(137,153)(137,167)])
}
Add(Counter,1235403,147,161)
{
Max=255
Default=-1
link(onNext,6729799:doText,[])
}
Add(Edit,6729799,189,163)
{
Left=75
Top=20
Text="00"
DataType=2
link(onChange,16252809:doConvert,[])
}
Add(Edit,506095,273,247)
{
Left=135
Top=75
Text="00"
link(onChange,12479769:doWork3,[(314,253)])
}
Add(Thread,9165036,504,301)
{
Delay=10
FastStop=0
link(onExec,5999622:doData,[])
}
Add(StreamConvertor,4287928,420,294)
{
Mode=3
Symbol=""
link(onResult,15691808:doEvent1,[])
link(Data,16261038:Text,[])
}
Add(Convertor,16252809,231,161)
{
Mode=6
link(onResult,6821105:doText,[])
}
Add(Edit,13114593,182,247)
{
Left=75
Top=75
Text="00"
DataType=2
link(onChange,2972017:doConvert,[])
}
Add(Edit,6821105,273,163)
{
Left=135
Top=20
Text="00"
link(onChange,12479769:doWork1,[(314,169)])
}
Add(Convertor,2972017,224,245)
{
Mode=6
link(onResult,506095:doText,[])
}
Add(Edit,16261038,420,217)
{
Left=200
Top=45
Width=85
Height=25
Color=12639424
Font=[MS Sans Serif,10,1,0,1]
Text="0001"
ClearAfterEnter=1
link(onEnter,9905397:doWork3,[(459,230)(459,258)])
}
Add(FormatStr,14252358,343,217)
{
Mask="%2%1"
link(onFString,15824965:doEvent1,[])
link(Str1,506095:Text,[(349,208)(335,208)(335,285)(279,285)])
link(Str2,6821105:Text,[(356,200)(279,200)])
}
Add(Button,8059561,91,259)
{
Left=10
Top=95
Caption="<"
link(onClick,1386146:doPrev,[(130,265)(130,258)])
}
Add(Button,5857093,91,224)
{
Left=10
Top=65
Caption=">"
link(onClick,1386146:doNext,[(130,230)(130,251)])
}
Add(Counter,1386146,140,245)
{
Max=255
Default=-1
link(onNext,13114593:doText,[])
}
Add(HubEx,12479769,310,217)
{
link(onEvent,14252358:doString,[])
}
Add(Edit,8209821,693,280)
{
Left=310
Top=45
Width=90
Height=25
Color=65535
Font=[MS Sans Serif,10,1,255,1]
}
Add(StreamConvertor,305461,644,280)
{
Mode=2
link(onResult,8209821:doText,[])
}
Add(Hub,15824965,385,217)
{
link(onEvent1,16261038:doText,[])
link(onEvent2,9905397:doWork1,[(410,230)])
}
Add(HubEx,9905397,406,252)
{
Angle=1
link(onEvent,4287928:doConvert,[(410,300)])
}
Add(Label,4668249,690,231)
{
Left=210
Top=25
Width=188
Height=17
Caption="В СОМ порт Из СОМ порта "
}


Редактировалось 1 раз(а), последний 2021-06-02 17:16:14
карма: 19

0
Ответов: 91
Рейтинг: 6
#9: 2021-06-04 22:29:18 ЛС | профиль | цитата
Леонид, спасибо вам за помощь.

Да в вашей схеме все работает.

В моей схеме где то ошибка.
Я сдаюсь. Не понимаю что не так. Именно 01 не выдает в порт.


Может глянете?
Надеюсь там все понятно...

Add(TabControl,6531256,119,147)
{
Left=10
Top=55
Width=500
Height=797
Font=[MS Sans Serif,12,1,0,1]
Tabs=#6:Банк 1|6:Банк 2|6:Банк 3|6:Банк 4|6:Банк 5|6:Банк 6|6:Банк 7|0:|
Bitmaps=[]
Buttons=0
Point(PageTab)
Point(doFont)
link(onChange,16462072:doSet,[])
}
Add(MainForm,4253353,196,21)
{
Width=1154
Height=894
Color=-16777216
BorderStyle=5
Icon=[ZIP16C9000078DAED5D09601445D67E3393CC2493C91D72700676415C4189BFB05E4844DC5F145822BAAE82288722EB41E281827279A1AC8B44DDD5F53E51775D042FF45F8F008AE0AA1844161504564014858012C261FA7F6FFAEB4CCF304767CE9EEC14BC547775BDEAF77AAADE55D5D54416725179791EE769B4DD4AB49C88F2F2D4F39E16A20536A23E7D88CF33E8B91CA2B569C4F5719E4134BD50EAABE797A513F5E848545929E7E5D47320D1DCAE1A7E393DD79DE8B571443D7BAAE797B5271A7DA7D61E5FE776963F45545AAA9EDF914974D52B444545EAF9EB76A2C6B7B4FB313ED3B2E05D6E8F69E626886FEBA65BD24C2BB5A43CD2A799EEFF3473A69AC93F29E23F7575755CA2B8FF93A2A899FC9322F9E34E0EA26A7D7B8E6A47D0F36A374AF0A4AB50ED504187EE7DFD7A4775D0EBD53EE787B5EFE0265A713F87CFFD1C541D823E4EC1DA3B9C3EEFF6E51F859D7CEFE7BE5D75500C879126A52F1CDCA828FB1F53A1215751363914A5CEA6285F7EA9C2EA918AB2F1A0A27C92151AA49E86F7F9436A3B7A90B60F0D50A179861B7AA22F97EBFA791DC5AA9FBBD3F5D7FBEDF32D4F547B762DBFB8CF93067E0BDAF5D5D53EFDBEDA7700B849A24303889ABAA8C7CD33D4735F906B524703A92765F29C58E4D0C5A4CA25F7D370EA6E60F11CA6A7A793D3E9A4ECEC6CCACFCF67595344656565D4A95327964BE5D4BD7B773AF2C823A977EFDE2CC7FA50BF7EFDE884134EA0934F3E99060E1C4883070FA6214386505555159D7FFEF974E18517D2D8B16369FCF8F13471E244BAF2CA2B79BC54D3E4C99369EAD4A9346DDA34AADFA1789E73AF6388CE1A4E74193F88DBE7113DB39068D92AA2CD0D94BF4BA18ADD0A55FDA850CD5E856AF729B468BF42F50775F8C7B0801DFE6B7E8E4388E6B1705D388568D5DD440DF3295F79852A94B7A94A594135CAA754ABACA745CA56AA571A74F82CD487B3C0ADEEC6F8BD18BF1FE3B3246D3893F147327E0DE3CF66FC4718FF25C65FC9F81B5BF0AD4C7E1A936F67F233987C27939FC5E4E734703F550AA8BF524123952A9AC2ED3CA0D4D2ABCA225AA3D4B7E017317E37C6EFC3F8FD197F08E39FCFF81318FF06259FE630FEC38CBF80F1EB187F35E36FD1E1F760FC4AC6BF80F1AF65FCB98CFF3CE32F65FC7AC65FC7F85F31FED78CFF2DE3EF62FC461DFE313D98FD5399FD91CCFEB5CCFE5C66FF79667F19F7A5D5F9A4ACAB20654315295B6A48F9AE96948645A434EAF059370DE74757CD1D6EDE298C3F94F1B9AD86898C3F85F1E730FE238CFF22E32F61FCD58CBF5587CFFA75380FE56AD66DF358DF2DE47EBACAC5F8FCB328E505A49CC2F8A3187F2AE3DFCFF8AF31FE1A1D3EE5D0702AE161D495E6D151B490FAD12AD6840D349894FC0B48A9A826A5EA76526A1E26A5F6255216AD20A57EA30EBF9CF1FB31FE10C61FCBF83730FE5CC67F9AF15F66FCB719FF7DC6E77BD6AE67FCAD8CEFE93FBDB885B3B88589DCC26C6EE1196EE15D6E6133B7D090AFD09E0A857EAA52A8B146A17DB50AED5FA4D0C17A4FFFEDC0F8BD197F00E39FCDF8E3187F32E3DFC1F87F65FCF98CFF0AE32F65FC558CBF9EF177E8F033F004DA317E07C6EFCAF83D18BF17E39FC2F8BF67FC1AC6BF8BF1E733FE3B8CFF850EDF37E5F33FFE5F6054DD64F13F36A15C46EBBBA47E96F1FA59ADAC9FD191E55D46A74C4395DB3B6D164E56B292CDD93E64F56C8BFECC9213A27A896F416988E6335CAE2C5B7A567ABA2BDD96E5726584B841B6FCE1E1525C224F482B08519F87596919F48D81FA452EB5BE4B6837408F3D97A8804DE2DC4C43ED772A2E2E2D2D29612836D67EF082C32EE7D8D26C483946DA77EA3B9E81F69D36AB25CD6249239BD558FD76455656B7646DD72ECB083D5965A536CA7291B5B4D458FB76BB25D36ACDB4D8EDC6EA7BF16BE0F938EC16A7D566BCFDF6A0BFACD458FB5ECFC740FB561EB9168B8DACD6AC58FCBE39692D292716FDB3535171893B15B7EB64787C493238BEDCE3D72D764B8DCB87167BD4A0FC51C57AE8F65D196C68DAD29D594E67BACDE9CCCA70855215A10AE25B3F27648177EA60F13EB7740CA1300ABDF54B61680596976177FBF9567B469E4105992F7F0CAB77EE41F2A79DF1FA656CD0D9CA5AE1B072DDF614CB949111E082A2EC7D51F5F902E5BBEF56F3991635073413CDF0CA1B2779E7DB2678E7750E3557149CDBFCE74B4FF3CE23ADE77BBF6FBEF1CEF7EDF2CE7DF90A91B78038EC923775F19F8B132FB938F29EDC3B6E053F352DB09F9A9999E9F6530B0B0BBDFCD46EDDBA518F1E3D5AFCD48A8A0AEADBB72F1D7FFCF1D4BF7F7FAAACACA4418306D119679C4143870EA5112346D0B9E79EEBF657478F1E4D63C68C71FBAB93264DA2ABAFBEDAEDAB4E993285A64F9F9EF253537E6ACA4F35939FDAB1E58FFF54CA8654A720FAA7A4033313D8132BB6DB33321CF6E200976D871D78A5DC4C67BA9D53BAD399EBB775E8D362F77FBF2E631EF47389FFEB9D7258EC89E55112C2E50C703D278D25A958B301AEB3476CB55A6C5981AEE7966517166697E505BAEECAB63B9DF66C57A0EB99167772066CBF382B3F3FAB383720FD05993939990501E987E31FB0FDD27C772A0DEFF995C2C80DF2FCDDA6556100679FCB0BA47F16BA0F0F4F4E4B4BCAF27BDDEFA1975313D4986DDFA2512D1DFC76E0CE2EBB45CC4957E760667050C3B7C862096E2E3A42CC37E4FA0E1D73CD3BA8764AA525B09DC2FE5C8B5D72C41147B8ED12B1498E3BEE382F9BE4F4D34F77C7CF870D1B4623478EA451A346B9E3E5D75D775D8BFD41E358514E66457907DB190FB09D319FED8C9759562E613B6315DB191B94543C3D65A7A4EC1493C6D359E06767EB657D9ECD6AB50575D68B8ABC657A5A9A972E70391C5E8116A7CFF54C9BCD2BFA5D909F1F2C9290EBCAC971E9246EBA2E0AE4A646E29B5E143902FBD391CF5B56AA33B7EEF50DEE34901295C4C49BCCF01EC3D10C4F323C87309768C0BF313CCAD01B75AE11F1456D2709FFB3193633F4657803D3EDB950874B195E65380E756E49F19FE23FC57F9B491289BB83E13F0C2732FC93610982C1E2BDB245438B194E409D5B03BAC5C993AC98A63D8B6116C3C70C3F81CF6D0CDB21F705BE65D88A6B52E743A8AE33E13D265B5F102B6214C3BB0C7B187E26AC906A05FC0C5CE91B1704F2524D98844EB6426857183C070269EBA6247806E2BD8E60D81945DE35F88161B8B7876CBA9409BB4E89113CE3762BCC9B4497BD8FFE2A32EC031DAC66D8CFD0806B1F31EC067C8432B9B68FA1DE07F743B4F91E74A659533EE87D0DB23F5F0755E0EF09E8BCCEB001DEC17131AE7DCFF0BF3EB865B0195690EFD25473F2BFC8A79F8AFEBF8BA189E1124FF08FDE64F83FF244012FC1EF7F938FCE93B65E4962FE3BA34F8BCEFF9F20FCCBB56FA0F38ADA08FF22AF7FCFB017E3B73008FF05E05DC6FA696D807FB161BB31BCC0D00CF9DD036547E3792CC3B19475476C406C9FFBD06F6C49CC7F1178DF0ED9B789E113C06AF4F56F70AC956FC4EFBF85E179F49764E55F825FC732F40F132A10454B56FE657AE62486C161C249682359F92F813DF45398F01EEC8264E5BF14633A5C7BF7633CC314FFC9CDFFCFF0DF9AC057237CC466C04E9429A8F30370DA0AFFDFEAE221C2E33F182E63F811318E090C0B714DE26217327CD786F8175DDE0F7E91F0F820C320D8049AADF708AEBDC4F06BC4C3DAD2EF7F11E4B9F0B880E10FBADF7F2270B4DFFFA236F6FBFF0C3FFF806E8CEFD18DFF3D3AD9700075DBD2F84FE93FF577D6F3D61CE0587FDE56F81739F72786CFC0976C0DF067E8BC46F87A2B70ED53D46D48C9FF36C3BFCCF70C44AC43787C9CE1B79073F20C86313C856B8BF13CBE6943FC3781971FC0E336C4C30E02EAC1AF82F8E7C78815A7E47F8AFF14FFC9CBBFAC6FBA8AD4B50FE1C095A4AE3E4E56FEAD885F96840985682359F92F403C5BCAFEC5B012B64F305889BA1F404F162431FF02672206A8D936E7903A47EE0FCE01AED8BFB21EE8F4248F7F12FAEF24F8758B29F8ABBD2EF02D7345E79167AE3FD9E7FF7A913AF721D03308FE110C5FC107E8A22B4F76FE3361DF8AAF736E10FC73F0DBDF4B583D9CC4FC67A2FF6A20FDF927F876693ED72C28D3FCBEB37CAE652619FFEB196A19E6EAE049C4BBE4DA3D3ED7E6A26C3DF87FCCCFB5AF9288FF58ADFF49F19FE23FC57F8A7FB326B1DFDE8C21FFB2062ECBC4FCCB5A9D698869459B77B19FA792F9D7827765789BC25BF31D6C2DF89B3E36B1599305F6FE3F60EF3447C07733DAF83BC35164EEB5CFBE49FC7659F7F72CC31A52E3F9DB61DF07E2772FEA6C850F349FE177D4AA4D864CD717C477915D897E45EA5AB0A783F0FF04EAFC0A381949F69B874A56D8F381F8FF23B5ADF79E52FC1FCEFF7452E77FF43AF220CA6E6AE3FC4B2A415C6FB38E7F59F37A1A05D809A40DA672862F75FC7F4EEA5A674AF1FF5F9164D3A53AF2C444DFA158EFDC172029EA867C8AF1FC10D100C99BD81A95BC8128577266C3112CDF7C6BD7D95E799A9A87C24B967CB36393CAD7ECCD5E79B4DAD79EB3966BBF837B0341774587E2376FC855F3A62E7E72EFFDEDCBDD7D6266F798773B59D72F6B61E43DAFC5B0F77AA1EC3788F51E63E2F17B3CA96B36CE26F5DD8D3EB05BA54CDED15C45EA7A9F14FD29FAF5291D3EFC7852E3F9B7C2F6B982D4B97E29BB99D47980B1D089E926F1E34454C89CC6BFC9F34EFB7EE44D007DD91ED4BD9BD479BD44FA71BD113B0CF73DFCE5904F8948F20ED5835188A3DC4F5E9B11C5350EF201FAB9FEDD3789EB7C8731BB03508FB2DD74F83B71F2FBE52780FE22D03F1AC7459037D2B76F84CF226B371FC6F14DE0E3285D7D51AFB2AEA33041F4AF845CD492CCC5CA7AC353488DD9CA5ADCFB702C655F933A07ABA5B3F1FCCD407F26626AD22FCAFCD05F0AF9FF179DEC340BFDB296E51CC4F7E45D986178CE2F93BA36468E8792FA4EACF84743806316FA65EF8199A4CE4F3F0C99723F8E7DCF1F45AC23C764CF5FEC824A83D01732D32CF497E178B741781F32C92CF48B8FFB592BF4D6A718CF66A35FD6B1EC855E95F5FB0700BB50A6BDBF6A56FA1F27350E2F345E075DB696D43DFA842F89C33F091D6C46FA657DD403B021C642DF8A3E18079EEE834E302BFDDBA07F0F41CEEF05DD5FA24CDB17C0ACFD27D9C7EF16E86079D6EBF0EC7F441CF210AE6D3531FDF740CF0ACD6374FD7F2C78B91763C0ACFD5F64CB7CD07A03E48FC0148C85A7209FCC4ABFD0D808592F7A567B8F6737CAB4F7DA52E337BAF497C2A6D96910B4FD23CC42BFD892B2C791D1FD4F8E3599FD296BAF6EC1D8141BE2A100F038C6F02C13DAFF5590FFE263C91E2B837C40CA9642179C61B2E72F49D6443C0399EFEFE31C65D00522FFD34CE8BF4BFA1DEC9B4A3FF50720FE30D844F10789FF5C0459528C71F96FF8B725BAF21294D523E6A8958F4970FC47E22132DFBE06B016BA7787AE4C83EF11BBFD4C57267BD27E9440FA23798750FF2E618AFEFF3EFAB53D3923A53F517B6F8A0CBF137E49B8B48B6D7ABB4E1FC43BC99CD78BA4CE0DB59676995792B5A49D28B14964BBCCD1BD45EA7C84E8AF7D7EE86DC43599CB9335BB5750802F54252059608FC91A65995F7FCD0FFD32F77E34EAE49079D75F4A6CFF593FF43F9DC07EDEDA712D365A838EF606F8F6C940BF05FE64AD8EFEB9284B9635BB42E7341DFD5329B9D61B0BADB2BFC026C0E5B1A25F5D4E142CC7775D7DBF6BEA5EA6E42FBFD8AEE695D60141EB253A3F6DA99A8F5B1E513B877DE755FB0EAE2CCFF2977B7FF755165FF4246D03F872F76F52199B1583B2179FCC6BFF19FED9A98827CAD8186F823E2F7314F29EF0DFE123CA9CA9EC932BFB6B5F93A22F60B2C216163B50E6665F2775BFF109B0031E456C278FE2BF06BD18CF66A9CEFF6C24CFBA904694C9B1EC0F5843ADFA907644A900B1ACD6D8AE5257E6D0E2B15E65187CF9661D283EE7FECA0467481CE8937D1EDF861D7C396C9E0DA4C6FAC5D67C19C7B2E66D1EEA48DD3AF4CD58A7CB715F0BFABD7CBB44F6ECCE442C671A8EA5EC5AF2EC492032F1B238D3570C5FF63A9C6BF45940DB9B18BF89A02F0B637807ECC031F0DB5EC0B1C8C46DE80F5909A26F0474D858C03880763E1EB1C644D027726636E44630980DB9126FFA3A226E184AF649DCB04382E8937B6BF3713F92675DEA4FE4999F5B9340FA3E81FEDD047DBB1472EE71C40B6623569B28FAEAE17F4AFC5DBEE3B302F2E679C480EF050F1D12D8FFB4F5C50710133B84636DED71A2FBDF4E5D5FD3E681B5BD7F779AA0FFDD8CF8D543E87BA29B1F814EBEC504FD4FD6F56C85EED0F6415B803EF95713F4BF03B09F0EEAFADF41941D3041FF6B0E0189EA7F39D0AF378400A9939D20FA2496F2478C91193E2065731003CE49007D32772DDF01DC0E7BD977ADC014C8686D9E3B11F6691E6CD0993E71280B9EE142D856F1B64F6B61DB5BE13BBE8A3EA6D9F2D9F04526E8EAC5933E917BDADAE997F01B3FA12B93639953785157B63A8EF485F3EE49738ABE16FF375CFAE2E1FF8ABCD81B067D8233340EF4C99CF1B3E4F97682D1BD829EA1F8ED9B520ADD25EF896D460CCB777FFFEF716D396284F1DEEBC08AE7D11D3EAF7EEEB2113E7A77D449F41E14837CFAA4F86F03C93CE997A4CE331E445F93F5ACBF2073A533F0BBCA73FC0D992FC97B66DA7B072747AB5145714FAF1C9E1F724FC390D2445DDC7903E526475E1A19BEC6AFC6BF324BF1CE9779E532C7544EEAC44FCB7E00D1D9714F62A87742F69DCF3012314BF92E7A3CBEE9EB849F2B31964BA1FB6F831F9C1987FBE7424E486C7412ECD0BB10FBC98931DFE720862336E416F8FA1B70BC0DB19E1131780E36C484771BD0D952A79AA2FBDD7BB11D649DEF3AF8C63B105BD80690E3EF704DEA2C89B2CD207681BCE770048695CC099E87677235A9FBC3899DD219436F7E94ED8252F2CC43C9FBEBEF808E4BE067CB1A9F37A0CF0A503716F7EF88B1B602FD5E7B5FBA06F6D074D489D5FD25DE21EBBE2F0A00C3512756F797FD4D56C206F407F25C8E8CE1FD7B41CFFE8818A91697DC8F32E9FF47C5F8FE4B206B25A6B708F021627A7571B8FF87B8F7163C8BB538D6BEAF1EEBFBAFD3C5AC0FEAE287076007C5FAFECBE04749ACE19FA47E8B6935E4CFB238DC7F0564CD17180B722EEF3BCA3A84F7E370FFCFE9F07970ED785D8CEF2F7ED56378EEFEE051C8E058CA5F99DFBC9ED4B9753D883D7631A9EB6B6375FF12D85B32FE649FBF7E80D3D00F46A34EACEE9F0FF92E7DBEB7EEBA1CCBFA83E218EABF45B07745C72C861E1C0AB81DD77F8B3A0B6370FF3590F3FB75B2473BD7649076FE690CEEDF9AF70DD744F9FEED20EF8CDE5FE6BE8AA2787F3B62E346625752E74F14FD3D7AA46FCF026F62EF3691F7DAFAADB8369362B7A6CA063A8E21CF771EB5EF401E8D6B368A7D125FE8059DFEFD5B9C7C3F7D0C4EE4DED78805F6A5F8AF37EE007D2FF658D82B48DDCB5435A8B3A9CB59238559B3FC974BFBB2CC5896C20A1C1AE0DEB750844B1F5D9CE2E2F07F49D1CF33C8B326681ACAA295C4B6B8173E9FF87EB5F009A231AE4E2475AFA335185B2B712CEB774F88705C9D44EA5A157FF31752B611F70F374D807CBC0D3EC0138887C89A845B70ED9208DA1F8731266B706F849E95F592537476C8D808DB9750D9CD8863CD04CC461F3A350AEDCB1E9973103BD2C31CC478236DBF0AFD651F62C57B712CB6C0D9516A5FE62DDF83ADFF3A8E1744B17D591322EB837701F640A745ABFD37F03C56023E4559B4DAAF433CEE33C0069445A3FD61F0AFB6FBC0728C8748DB973EFE07F816350039966FBA0F8C42FB27A2BD5B61AFF7C678BB0AF22992F645B6C8F70907413E7706D4625C9F4591BDF350033D2FBFE74EF8BE5FE0783DAE4D8AA0FD6B0CD8953511B43FD2C75EF4857D8861869BF2212B2516F383CE2FFF1EE3E0368A7C0D7D3A6C9E1A9DDD570DDB279A7BAB1E8BDF56E20C1531B0DB1CD08D8FE2D8989D364B7143339B37D10245FE2D53A1271CA69E3A3B6C5EEB3D183B7E934B61135C19811F64811F7337FAD61DF0ABDA85696BCBDCE45B18B39A7E91E337C3B07DE4BDCEB98839AC41ECF103E81329BB8B5AF7EEA71DF243E69E656E6D047486C8CAAEB896DECAF6AE82CD7137ECA429A07910AE85D3DEE53ADDA9C1C408DA9B469EB9632DBF3182F6A6431EEBE1C608E95BABD3E7025323A4EF2BE8112DBF2982F62E459FD6C3B808DA3B1D3A7314601E747F38EDD5C0F792FE5C06397D1BFA784D18ED3D067F770379BEB1BC1E658F84D1DE8220FAF08556B667C5EFD848FEF71108E77B67B9D0C90F9267FD87CCB1C8BC6324F3CCBFC458FB8CA2B3D6C5067937C7888FDAEC68A04336159A2CE181E02AB92A88BE92650DE53ABD55D9BAB7EE07A23F5693FF7D8C82E927797EB2CE58DEBB7C157DBD9B41FD24643F05DB51B3E537C12734B23F4907D87535D00F0257A0ACBD41FCF320E3347F772ACA8CE28F47FC495B87F00ECA8CE24F80FFF5316031CA5A83BF4C27EB9784812F3ED57F00CB5B893F1276C93D80DB5BF9FC87A3DF9D02B89C3CFBFB854A3217246BD764DE499B877D03651D0CE0CB3DD6F991576BC9FF7E64BE2903B19D0DE4D937770362D48E56C86199D3933DA9FE85F89A3D0CF93315F64D40F973680051436EEBA1A98B8AFBFF555C7E88]
Point(doLeft)
Point(doTop)
Point(Left)
Point(Top)
Point(onClose)
link(onCreate,713062:doEvent1,[(237,41)(237,83)(7,83)(7,97)])
link(onClose,8295385:doEvent1,[])
}
Add(Hub,7833892,280,14)
{
InCount=2
OutCount=4
link(onEvent4,9938011:doEnumDevice,[(312,41)(312,20)])
}
Add(Edit,6129557,757,84)
{
Left=45
Top=30
Width=55
Height=21
Font=[MS Sans Serif,9,0,0,1]
Text="9600"
link(onChange,2389927:doEvent2,[(797,90)(797,70)(641,70)(641,146)])
}
Add(DeviceInfo,9938011,329,14)
{
Point(DeviceIdx)
Point(onDeviceOnOff)
Point(onBreak)
Point(doDeviceOnOff)
Point(doStop)
link(onEnumDevice,10515647:doSeparateMT,[])
}
Add(MT_MultiData,10515647,392,14)
{
Count=4
Point(Data)
Point(RemaindData)
link(onData4,1980674:doCompare,[(457,41)(457,20)])
}
Add(BlockFind,13037768,686,21)
{
IncludeBlock=1
StartBlock="(COM"
EndBlock=")"
Point(onNotFind)
link(onSearch,11124581:doConvert,[])
link(Replace,12544851:String,[(699,9)(576,9)(576,182)(405,182)])
}
Add(Convertor,11124581,735,21)
{
Mode=1
link(onResult,3774362:doValue,[])
}
Add(Memory,3774362,784,21)
{
link(onData,13148397:doEvent2,[(829,27)(829,64)(660,64)(660,97)])
}
Add(BitBtn,14456427,217,91)
{
Left=115
Top=30
Height=21
Caption="опросить"
Point(onKeyUp)
Point(onKeyDown)
link(onClick,10926447:doEvent1,[])
}
Add(COMEX,9633750,735,140)
{
DataBits=1
link(onRead,13487093:doEvent1,[])
link(Port,3359484:Text,[(741,128)(713,128)])
link(BaudRate,6129557:Text,[(748,130)(763,130)])
}
Add(Hub,13148397,672,84)
{
InCount=2
link(onEvent1,3359484:doText,[])
}
Add(Ini,11689371,98,35)
{
FileName="common.ini"
Section="form_first_pos"
Key="Y"
link(onResult,4253353:doLeft,[(170,41)(170,55)])
link(Value,4253353:Left,[(125,23)(163,23)(163,78)(202,78)])
}
Add(Ini,11188307,98,98)
{
@Hint=#14:местоположение|18:формы при открытии|
FileName="common.ini"
Section="form_first_pos"
Key="X"
link(onResult,4253353:doTop,[(183,104)(183,62)])
link(Value,4253353:Top,[(125,87)(209,87)])
}
Add(Hub,8295385,245,42)
{
link(onEvent1,11689371:doWrite,[(267,48)(267,12)(86,12)(86,48)])
link(onEvent2,11188307:doWrite,[(266,55)(266,73)(86,73)(86,111)])
}
Add(Hub,4612708,56,35)
{
link(onEvent1,11689371:doRead,[])
link(onEvent2,11188307:doRead,[(80,48)(80,104)])
}
Add(Hub,713062,14,91)
{
OutCount=9
link(onEvent1,13990767:doData,[(48,97)(48,160)])
link(onEvent3,4612708:doEvent1,[(36,111)(36,41)])
link(onEvent4,7833892:doEvent2,[(41,118)(41,5)(258,5)(258,27)])
link(onEvent5,2510107:doData,[(44,125)(44,244)])
link(onEvent7,321952:doText,[(145,139)(145,125)])
}
Add(Hub,13487093,812,147)
{
OutCount=5
}
Add(VisualStrings,321952,168,119)
{
Lines=#39:OL _RGISTRY_DATASENDER_RS232_to_I2C&SPI|
Point(doText)
Point(onText)
link(onText,4253353:doCaption,[(210,125)(210,94)(177,94)(177,27)])
}
Add(Hub,4636619,693,154)
{
InCount=5
link(onEvent1,9633750:doWrite,[])
link(onEvent2,322325:doConvert,[(725,167)(725,216)])
}
Add(Edit,3359484,707,84)
{
Left=10
Top=30
Width=20
Text="9"
link(onChange,2389927:doEvent1,[(748,90)(748,74)(646,74)(646,139)])
link(Str,3774362:Value,[(713,58)(788,58)(788,60)])
}
Add(Hub,2389927,693,133)
{
InCount=2
OutCount=1
link(onEvent1,9633750:doOpen,[(721,139)(721,146)])
}
Add(ComboBox,12544851,392,126)
{
Left=10
Top=5
Width=160
Height=21
Text="Выберите СОМ порт"
DataType=1
link(onClick,13037768:doSearch,[(584,139)(584,27)])
}
Add(StrMask,1980674,490,14)
{
Mask="*COM#*"
link(onTrue,7779069:doEvent1,[(534,27)(534,59)(373,59)(373,76)])
}
Add(ChildPanel,2659570,357,231)
{
FirstUsage=0
link(onEvent1,4636619:doEvent1,[(608,237)(608,160)])
}
BEGIN_SDK
Add(EditMulti,5306784,7,0)
{
EventCount=1
WorkCount=2
VarCount=2
Width=1014
Height=1166
link(doWork1,15837109:doVisible,[(245,6)(245,20)])
link(doWork2,16636575:doEvent1,[(39,13)(39,223)])
}
Add(Panel,15837109,336,7)
{
Left=10
Top=75
Width=1124
Height=773
Color=-16777216
Point(doVisible)
Point(doEnabled)
}
Add(Hub,16636575,56,217)
{
OutCount=14
link(onEvent1,4312529:doWork1,[(166,223)(166,260)])
link(onEvent12,4649252:In,[(138,300)(138,349)(51,349)(51,377)])
link(onEvent14,14023562:In,[])
}
Add(Hub,786338,819,378)
{
OutCount=11
link(onEvent1,11377126:In,[])
}
Add(Button,7710814,385,224)
{
Left=550
Top=55
Caption="Send"
link(onClick,4312529:doWork3,[(427,230)(427,274)])
}
Add(Hub,10311428,690,116)
{
OutCount=3
link(onEvent1,2534719:doData,[(804,122)(804,111)])
link(onEvent2,16041190:doWork3,[(753,129)(753,148)])
link(onEvent3,15451827:doString,[(740,136)(740,265)])
}
Add(EventFromData,2534719,903,105)
{
}
Add(ChildGroupBox,15174492,112,21)
{
}
BEGIN_SDK
Add(EditMulti,4699895,21,21)
{
}
Add(GroupBox,15010636,35,105)
{
Left=610
Top=5
Width=5
Height=760
Caption=""
}
END_SDK
Add(FormatStr,15451827,777,259)
{
Mask="%1%2"
Point(FString)
link(onFString,5306784:onEvent1,[(954,265)(954,6)])
link(Str1,16041190:Var1,[(783,209)(836,209)])
link(Str2,2534719:GetData,[(790,248)(909,248)])
}
Add(ChildGroupBox,4312529,452,254)
{
link(onEvent1,10311428:doEvent1,[(587,260)(587,122)])
}
BEGIN_SDK
Add(EditMulti,346433,21,21)
{
EventCount=2
WorkCount=3
VarCount=4
Width=1028
Height=1089
link(doWork1,14128314:doEvent1,[(35,27)(35,62)])
link(doWork2,10258308:In,[])
link(doWork3,16763989:doString,[(29,41)(29,1000)])
link(Var1,16763989:FString,[(27,1068)(573,1068)])
}
Add(GroupBox,5914688,854,28)
{
Left=5
Top=5
Width=543
Height=75
WinStyle=1
Caption=""
Flat=0
}
Add(CheckBox,7106105,56,462)
{
Left=490
Top=50
Width=40
Caption="Bit0"
Point(doCaption)
link(onCheck,10314952:doEvent1,[])
}
Add(CheckBox,759303,140,462)
{
Left=435
Top=50
Width=40
Caption="Bit1"
link(onCheck,6119465:doEvent1,[])
}
Add(CheckBox,6607152,238,462)
{
Left=380
Top=50
Width=40
Caption="Bit2"
link(onCheck,7831283:doEvent1,[])
}
Add(CheckBox,5819828,343,462)
{
Left=325
Top=50
Width=40
Caption="Bit3"
link(onCheck,5192183:doEvent1,[])
}
Add(CheckBox,7779275,427,462)
{
Left=270
Top=50
Width=40
Caption="Bit4"
link(onCheck,14538352:doEvent1,[])
}
Add(CheckBox,9312209,518,462)
{
Left=215
Top=50
Width=40
Caption="Bit5"
link(onCheck,409537:doEvent1,[])
}
Add(CheckBox,9230290,630,462)
{
Left=160
Top=50
Width=40
Caption="Bit6"
link(onCheck,3335453:doEvent1,[])
}
Add(CheckBox,7938892,735,462)
{
Left=105
Top=50
Width=40
Caption="Bit7"
Point(doCaption)
link(onCheck,14426556:doEvent1,[])
}
Add(Hub,5973491,364,742)
{
InCount=9
OutCount=3
link(onEvent1,14596245:doNumber,[(399,748)(399,580)])
link(onEvent2,8075239:doNumber,[(405,755)(405,682)])
}
Add(Ini,192906,252,203)
{
FileName="ChipRegisterMap1.ini"
Section="BITSA"
Key="Bit0"
Type=1
Point(doSectionNames)
Point(doSectionData)
link(onResult,8559796:doText2,[(290,209)(290,250)(240,250)(240,272)])
}
Add(Ini,4322080,308,210)
{
FileName="ChipRegisterMap1.ini"
Section="BITSA"
Key="Bit1"
Type=1
Point(doSectionNames)
Point(doSectionData)
link(onResult,10203721:doText2,[(345,216)(345,250)(293,250)(293,269)])
}
Add(Ini,6664514,371,210)
{
FileName="ChipRegisterMap1.ini"
Section="BITSA"
Key="Bit2"
Type=1
Point(doSectionNames)
Point(doSectionData)
link(onResult,12080363:doText2,[(407,216)(407,250)(360,250)(360,269)])
}
Add(Ini,3589870,427,210)
{
FileName="ChipRegisterMap1.ini"
Section="BITSA"
Key="Bit3"
Type=1
Point(doSectionNames)
Point(doSectionData)
link(onResult,1765513:doText2,[(470,216)(470,248)(415,248)(415,269)])
}
Add(Ini,138846,490,210)
{
FileName="ChipRegisterMap1.ini"
Section="BITSA"
Key="Bit4"
Type=1
Point(doSectionNames)
Point(doSectionData)
link(onResult,12382947:doText2,[(525,216)(525,246)(475,246)(475,269)])
}
Add(Ini,6208246,546,210)
{
FileName="ChipRegisterMap1.ini"
Section="BITSA"
Key="Bit5"
Type=1
Point(doSectionNames)
Point(doSectionData)
link(onResult,9627639:doText2,[(583,216)(583,249)(538,249)(538,269)])
}
Add(Ini,9494240,609,210)
{
FileName="ChipRegisterMap1.ini"
Section="BITSA"
Key="Bit6"
Type=1
Point(doSectionNames)
Point(doSectionData)
link(onResult,757762:doText2,[(647,216)(647,245)(601,245)(601,269)])
}
Add(Ini,15256374,672,210)
{
FileName="ChipRegisterMap1.ini"
Section="BITSA"
Key="Bit7"
Type=1
Point(doSectionNames)
Point(doSectionData)
link(onResult,13222251:doText2,[(717,216)(717,248)(652,248)(652,269)])
}
Add(Hub,14128314,42,56)
{
OutCount=20
link(onEvent1,15256374:doRead,[(660,62)(660,216)])
link(onEvent2,9494240:doRead,[(600,69)(600,216)])
link(onEvent3,6208246:doRead,[(541,76)(541,216)])
link(onEvent4,138846:doRead,[(482,83)(482,216)])
link(onEvent5,3589870:doRead,[(420,90)(420,216)])
link(onEvent6,6664514:doRead,[(361,97)(361,216)])
link(onEvent7,4322080:doRead,[(301,104)(301,216)])
link(onEvent8,192906:doRead,[(246,111)(246,209)])
link(onEvent9,13545328:doRead,[(666,118)(666,160)])
link(onEvent10,8431089:doRead,[(619,125)(619,76)])
link(onEvent11,13705908:doRead,[(68,132)(68,275)(40,275)(40,419)])
link(onEvent12,5153964:doRead,[(108,139)(108,419)])
link(onEvent13,1886258:In,[])
link(onEvent14,14345086:In,[(114,153)(114,167)])
link(onEvent15,1134162:In,[(104,160)(104,195)])
link(onEvent16,10386801:In,[(100,167)(100,223)])
link(onEvent17,888839:In,[(96,174)(96,251)])
link(onEvent18,6622251:In,[(91,181)(91,279)])
}
Add(Ini,13545328,728,154)
{
FileName="ChipRegisterMap1.ini"
Section="ADRESSES"
Key="AddressA"
Type=1
Point(doSectionNames)
Point(doSectionData)
link(onResult,5117566:doText,[(778,160)(778,206)])
}
Add(Edit,8559796,252,259)
{
Left=95
Top=30
Height=18
Color=12639424
Font=[MS Sans Serif,7,0,0,1]
Ctl3D=1
WinStyle=1
Alignment=2
link(onChange,192906:doWrite,[(296,265)(296,244)(240,244)(240,216)])
}
Add(Edit,8459657,805,70)
{
Left=8
Top=10
Width=525
Color=-16777214
Font=[MS Sans Serif,8,1,0,1]
Alignment=2
link(onChange,8431089:doWrite,[(849,76)(849,115)(716,115)(716,83)])
}
Add(Edit,10203721,305,256)
{
Left=150
Top=30
Height=18
Color=12639424
Font=[MS Sans Serif,7,0,0,1]
Ctl3D=1
WinStyle=1
Alignment=2
link(onChange,4322080:doWrite,[(350,262)(350,195)(296,195)(296,223)])
}
Add(Edit,12080363,368,256)
{
Left=205
Top=30
Height=18
Color=12639424
Font=[MS Sans Serif,7,0,0,1]
Ctl3D=1
WinStyle=1
Alignment=2
link(onChange,6664514:doWrite,[(411,262)(411,197)(357,197)(357,223)])
}
Add(Edit,1765513,424,256)
{
Left=260
Top=30
Height=18
Color=12639424
Font=[MS Sans Serif,7,0,0,1]
Ctl3D=1
WinStyle=1
Alignment=2
link(onChange,3589870:doWrite,[(465,262)(465,197)(415,197)(415,223)])
}
Add(Edit,12382947,487,256)
{
Left=315
Top=30
Height=18
Color=12639424
Font=[MS Sans Serif,7,0,0,1]
Ctl3D=1
WinStyle=1
Alignment=2
link(onChange,138846:doWrite,[(530,262)(530,195)(478,195)(478,223)])
}
Add(Edit,9627639,550,256)
{
Left=370
Top=30
Height=18
Color=12639424
Font=[MS Sans Serif,7,0,0,1]
Ctl3D=1
WinStyle=1
Alignment=2
link(onChange,6208246:doWrite,[(590,262)(590,197)(534,197)(534,223)])
}
Add(Edit,757762,613,256)
{
Left=425
Top=30
Height=18
Color=12639424
Font=[MS Sans Serif,7,0,0,1]
Ctl3D=1
WinStyle=1
Alignment=2
link(onChange,9494240:doWrite,[(656,262)(656,185)(597,185)(597,223)])
}
Add(Edit,13222251,662,256)
{
Left=480
Top=30
Height=18
Color=12639424
Font=[MS Sans Serif,7,0,0,1]
Ctl3D=1
WinStyle=1
Alignment=2
link(onChange,15256374:doWrite,[(709,262)(709,196)(653,196)(653,223)])
}
Add(Edit,5117566,823,200)
{
Left=10
Top=30
Height=18
Color=65535
Font=[MS Sans Serif,8,1,0,1]
Ctl3D=1
WinStyle=1
Alignment=2
link(onChange,6675163:doEvent1,[(872,206)(872,188)])
}
Add(Ini,8431089,728,70)
{
FileName="ChipRegisterMap1.ini"
Section="RegistersName"
Key="RegisterA"
Type=1
Point(doSectionNames)
Point(doSectionData)
link(onResult,8459657:doText,[])
}
Add(Ini,13705908,56,413)
{
FileName="ChipRegisterMap1.ini"
Section="BITSA"
Key="ChAxBit0"
Point(doSectionNames)
Point(doSectionData)
link(onResult,7106105:doCheck,[(96,419)(96,453)(48,453)(48,468)])
}
Add(Hub,10314952,98,462)
{
link(onEvent1,13705908:doWrite,[(121,468)(121,401)(44,401)(44,426)])
link(onEvent2,5973491:doEvent8,[(121,475)(121,797)])
}
Add(Ini,5153964,140,413)
{
FileName="ChipRegisterMap1.ini"
Section="BITSA"
Key="ChAxBit1"
Point(doSectionNames)
Point(doSectionData)
link(onResult,759303:doCheck,[(198,419)(198,451)(128,451)(128,468)])
}
Add(Ini,49077,245,413)
{
FileName="ChipRegisterMap1.ini"
Section="BITSA"
Key="ChAxBit2"
Point(doSectionNames)
Point(doSectionData)
link(onResult,6607152:doCheck,[(281,419)(281,452)(226,452)(226,468)])
}
Add(Ini,8315080,343,413)
{
FileName="ChipRegisterMap1.ini"
Section="BITSA"
Key="ChAxBit3"
Point(doSectionNames)
Point(doSectionData)
link(onResult,5819828:doCheck,[(385,419)(385,452)(331,452)(331,468)])
}
Add(Ini,8460186,427,413)
{
FileName="ChipRegisterMap1.ini"
Section="BITSA"
Key="ChAxBit4"
Point(doSectionNames)
Point(doSectionData)
link(onResult,7779275:doCheck,[(480,419)(480,448)(415,448)(415,468)])
}
Add(Ini,15061238,518,406)
{
FileName="ChipRegisterMap1.ini"
Section="BITSA"
Key="ChAxBit5"
Point(doSectionNames)
Point(doSectionData)
link(onResult,9312209:doCheck,[(562,412)(562,444)(506,444)(506,468)])
}
Add(Ini,16565272,630,406)
{
FileName="ChipRegisterMap1.ini"
Section="BITSA"
Key="ChAxBit6"
Point(doSectionNames)
Point(doSectionData)
link(onResult,9230290:doCheck,[(673,412)(673,450)(618,450)(618,468)])
}
Add(Ini,2586984,756,406)
{
FileName="ChipRegisterMap1.ini"
Section="BITSA"
Key="ChAxBit7"
Point(doSectionNames)
Point(doSectionData)
link(onResult,7938892:doCheck,[(802,412)(802,449)(723,449)(723,468)])
}
Add(Hub,6119465,182,462)
{
link(onEvent1,5153964:doWrite,[(206,468)(206,402)(133,402)(133,426)])
link(onEvent2,5973491:doEvent7,[(208,475)(208,790)])
}
Add(Hub,7831283,280,462)
{
link(onEvent1,49077:doWrite,[(304,468)(304,398)(226,398)(226,426)])
link(onEvent2,5973491:doEvent6,[(304,475)(304,783)])
}
Add(Hub,5192183,385,462)
{
link(onEvent1,8315080:doWrite,[(409,468)(409,396)(331,396)(331,426)])
link(onEvent2,5973491:doEvent5,[(417,475)(417,509)(340,509)(340,776)])
}
Add(Hub,14538352,469,462)
{
link(onEvent1,8460186:doWrite,[(494,468)(494,397)(415,397)(415,426)])
link(onEvent2,5973491:doEvent4,[(493,475)(493,514)(314,514)(314,769)])
}
Add(Hub,409537,560,462)
{
link(onEvent1,15061238:doWrite,[(584,468)(584,397)(506,397)(506,419)])
link(onEvent2,5973491:doEvent3,[(586,475)(586,520)(329,520)(329,762)])
}
Add(Hub,3335453,672,462)
{
link(onEvent1,16565272:doWrite,[(695,468)(695,398)(618,398)(618,419)])
link(onEvent2,5973491:doEvent2,[(699,475)(699,527)(334,527)(334,755)])
}
Add(Hub,14426556,777,462)
{
link(onEvent1,2586984:doWrite,[(821,468)(821,393)(749,393)(749,419)])
link(onEvent2,5973491:doEvent1,[(799,475)(799,558)(345,558)(345,748)])
}
Add(LineBreak,4969166,161,385)
{
link(Out,49077:doRead,[(221,391)(221,419)])
Primary=[1886258,-35,-245]
}
Add(LineBreak,9448514,273,357)
{
link(Out,8315080:doRead,[(323,363)(323,419)])
Primary=[14345086,-147,-196]
}
Add(LineBreak,6757606,378,350)
{
link(Out,8460186:doRead,[(419,356)(419,419)])
Primary=[1134162,-252,-161]
}
Add(LineBreak,12015374,455,378)
{
link(Out,15061238:doRead,[(501,384)(501,412)])
Primary=[10386801,-329,-161]
}
Add(LineBreak,1174685,560,378)
{
link(Out,16565272:doRead,[(610,384)(610,412)])
Primary=[888839,-434,-133]
}
Add(LineBreak,1254971,651,350)
{
link(Out,2586984:doRead,[(739,356)(739,412)])
Primary=[6622251,-525,-77]
}
Add(GetIndexData,1854588,581,756)
{
link(onIndex,2006332:doEvent3,[])
link(Data1,14596245:Number,[(587,613)(426,613)])
link(Data2,8075239:Number,[(594,735)(425,735)])
}
Add(LineBreak,531318,483,756)
{
link(Out,1854588:doIndex,[])
Primary=[10258308,-427,-728]
}
Add(BitsToInt,14596245,420,574)
{
Count=8
link(onNumber,2006332:doEvent1,[(617,580)(617,748)])
link(Bit1,8900943:Var3,[(426,565)])
link(Bit2,9109516:Var3,[(433,552)])
link(Bit3,11053124:Var3,[(440,546)])
link(Bit4,14531053:Var3,[(447,541)])
link(Bit5,10871705:Var2,[(454,536)(433,536)])
link(Bit6,4994101:Var1,[(461,534)])
link(Bit7,10598548:Var1,[(468,541)])
link(Bit8,13260048:Var1,[(475,547)])
}
Add(BitsToInt,8075239,419,676)
{
Count=8
link(onNumber,2006332:doEvent2,[(627,682)(627,755)])
link(Bit1,13260048:Var2,[(425,619)(496,619)])
link(Bit2,10598548:Var2,[(432,625)(503,625)])
link(Bit3,4994101:Var2,[(439,632)(517,632)])
link(Bit4,10871705:Var3,[(446,637)(547,637)(547,502)])
link(Bit5,14531053:Var2,[(453,644)(356,644)])
link(Bit6,11053124:Var2,[(460,651)(258,651)])
link(Bit7,9109516:Var2,[(467,657)(153,657)])
link(Bit8,8900943:Var2,[(474,663)(69,663)])
}
Add(GetDataEx,8900943,63,560)
{
Angle=3
link(Dat
карма: 0

0
Ответов: 8888
Рейтинг: 823
#10: 2021-06-05 12:06:06 ЛС | профиль | цитата
ibegen писал(а):
Может глянете?
Надеюсь там все понятно...

Схема рваная, многих линков нет. Да и ваших "ini" записей у меня на компьютере естественно нет
Выделите только то, что касается СОМ порта и формирования данных для передачи/приёма.
карма: 19

0
Ответов: 91
Рейтинг: 6
#11: 2021-06-05 16:40:50 ЛС | профиль | цитата
Как смог.
Что то вообще не работает.



Add(MainForm,4253353,196,21)
{
Width=699
Height=422
Color=-16777216
BorderStyle=5
Icon=[ZIP16C9000078DAED5D09601445D67E3393CC2493C91D72700676415C4189BFB05E4844DC5F145822BAAE82288722EB41E281827279A1AC8B44DDD5F53E51775D042FF45F8F008AE0AA1844161504564014858012C261FA7F6FFAEB4CCF304767CE9EEC14BC547775BDEAF77AAADE55D5D54416725179791EE769B4DD4AB49C88F2F2D4F39E16A20536A23E7D88CF33E8B91CA2B569C4F5719E4134BD50EAABE797A513F5E848545929E7E5D47320D1DCAE1A7E393DD79DE8B571443D7BAAE797B5271A7DA7D61E5FE776963F45545AAA9EDF914974D52B444545EAF9EB76A2C6B7B4FB313ED3B2E05D6E8F69E626886FEBA65BD24C2BB5A43CD2A799EEFF3473A69AC93F29E23F7575755CA2B8FF93A2A899FC9322F9E34E0EA26A7D7B8E6A47D0F36A374AF0A4AB50ED504187EE7DFD7A4775D0EBD53EE787B5EFE0265A713F87CFFD1C541D823E4EC1DA3B9C3EEFF6E51F859D7CEFE7BE5D75500C879126A52F1CDCA828FB1F53A1215751363914A5CEA6285F7EA9C2EA918AB2F1A0A27C92151AA49E86F7F9436A3B7A90B60F0D50A179861B7AA22F97EBFA791DC5AA9FBBD3F5D7FBEDF32D4F547B762DBFB8CF93067E0BDAF5D5D53EFDBEDA7700B849A24303889ABAA8C7CD33D4735F906B524703A92765F29C58E4D0C5A4CA25F7D370EA6E60F11CA6A7A793D3E9A4ECEC6CCACFCF67595344656565D4A95327964BE5D4BD7B773AF2C823A977EFDE2CC7FA50BF7EFDE884134EA0934F3E99060E1C4883070FA6214386505555159D7FFEF974E18517D2D8B16369FCF8F13471E244BAF2CA2B79BC54D3E4C99369EAD4A9346DDA34AADFA1789E73AF6388CE1A4E74193F88DBE7113DB39068D92AA2CD0D94BF4BA18ADD0A55FDA850CD5E856AF729B468BF42F50775F8C7B0801DFE6B7E8E4388E6B1705D388568D5DD440DF3295F79852A94B7A94A594135CAA754ABACA745CA56AA571A74F82CD487B3C0ADEEC6F8BD18BF1FE3B3246D3893F147327E0DE3CF66FC4718FF25C65FC9F81B5BF0AD4C7E1A936F67F233987C27939FC5E4E734703F550AA8BF524123952A9AC2ED3CA0D4D2ABCA225AA3D4B7E017317E37C6EFC3F8FD197F08E39FCFF81318FF06259FE630FEC38CBF80F1EB187F35E36FD1E1F760FC4AC6BF80F1AF65FCB98CFF3CE32F65FC7AC65FC7F85F31FED78CFF2DE3EF62FC461DFE313D98FD5399FD91CCFEB5CCFE5C66FF79667F19F7A5D5F9A4ACAB20654315295B6A48F9AE96948645A434EAF059370DE74757CD1D6EDE298C3F94F1B9AD86898C3F85F1E730FE238CFF22E32F61FCD58CBF5587CFFA75380FE56AD66DF358DF2DE47EBACAC5F8FCB328E505A49CC2F8A3187F2AE3DFCFF8AF31FE1A1D3EE5D0702AE161D495E6D151B490FAD12AD6840D349894FC0B48A9A826A5EA76526A1E26A5F6255216AD20A57EA30EBF9CF1FB31FE10C61FCBF83730FE5CC67F9AF15F66FCB719FF7DC6E77BD6AE67FCAD8CEFE93FBDB885B3B88589DCC26C6EE1196EE15D6E6133B7D090AFD09E0A857EAA52A8B146A17DB50AED5FA4D0C17A4FFFEDC0F8BD197F00E39FCDF8E3187F32E3DFC1F87F65FCF98CFF0AE32F65FC558CBF9EF177E8F033F004DA317E07C6EFCAF83D18BF17E39FC2F8BF67FC1AC6BF8BF1E733FE3B8CFF850EDF37E5F33FFE5F6054DD64F13F36A15C46EBBBA47E96F1FA59ADAC9FD191E55D46A74C4395DB3B6D164E56B292CDD93E64F56C8BFECC9213A27A896F416988E6335CAE2C5B7A567ABA2BDD96E5726584B841B6FCE1E1525C224F482B08519F87596919F48D81FA452EB5BE4B6837408F3D97A8804DE2DC4C43ED772A2E2E2D2D29612836D67EF082C32EE7D8D26C483946DA77EA3B9E81F69D36AB25CD6249239BD558FD76455656B7646DD72ECB083D5965A536CA7291B5B4D458FB76BB25D36ACDB4D8EDC6EA7BF16BE0F938EC16A7D566BCFDF6A0BFACD458FB5ECFC740FB561EB9168B8DACD6AC58FCBE39692D292716FDB3535171893B15B7EB64787C493238BEDCE3D72D764B8DCB87167BD4A0FC51C57AE8F65D196C68DAD29D594E67BACDE9CCCA70855215A10AE25B3F27648177EA60F13EB7740CA1300ABDF54B61680596976177FBF9567B469E4105992F7F0CAB77EE41F2A79DF1FA656CD0D9CA5AE1B072DDF614CB949111E082A2EC7D51F5F902E5BBEF56F3991635073413CDF0CA1B2779E7DB2678E7750E3557149CDBFCE74B4FF3CE23ADE77BBF6FBEF1CEF7EDF2CE7DF90A91B78038EC923775F19F8B132FB938F29EDC3B6E053F352DB09F9A9999E9F6530B0B0BBDFCD46EDDBA518F1E3D5AFCD48A8A0AEADBB72F1D7FFCF1D4BF7F7FAAACACA4418306D119679C4143870EA5112346D0B9E79EEBF657478F1E4D63C68C71FBAB93264DA2ABAFBEDAEDAB4E993285A64F9F9EF253537E6ACA4F35939FDAB1E58FFF54CA8654A720FAA7A4033313D8132BB6DB33321CF6E200976D871D78A5DC4C67BA9D53BAD399EBB775E8D362F77FBF2E631EF47389FFEB9D7258EC89E55112C2E50C703D278D25A958B301AEB3476CB55A6C5981AEE7966517166697E505BAEECAB63B9DF66C57A0EB99167772066CBF382B3F3FAB383720FD05993939990501E987E31FB0FDD27C772A0DEFF995C2C80DF2FCDDA6556100679FCB0BA47F16BA0F0F4F4E4B4BCAF27BDDEFA1975313D4986DDFA2512D1DFC76E0CE2EBB45CC4957E760667050C3B7C862096E2E3A42CC37E4FA0E1D73CD3BA8764AA525B09DC2FE5C8B5D72C41147B8ED12B1498E3BEE382F9BE4F4D34F77C7CF870D1B4623478EA451A346B9E3E5D75D775D8BFD41E358514E66457907DB190FB09D319FED8C9759562E613B6315DB191B94543C3D65A7A4EC1493C6D359E06767EB657D9ECD6AB50575D68B8ABC657A5A9A972E70391C5E8116A7CFF54C9BCD2BFA5D909F1F2C9290EBCAC971E9246EBA2E0AE4A646E29B5E143902FBD391CF5B56AA33B7EEF50DEE34901295C4C49BCCF01EC3D10C4F323C87309768C0BF313CCAD01B75AE11F1456D2709FFB3193633F4657803D3EDB950874B195E65380E756E49F19FE23FC57F9B491289BB83E13F0C2732FC93610982C1E2BDB245438B194E409D5B03BAC5C993AC98A63D8B6116C3C70C3F81CF6D0CDB21F705BE65D88A6B52E743A8AE33E13D265B5F102B6214C3BB0C7B187E26AC906A05FC0C5CE91B1704F2524D98844EB6426857183C070269EBA6247806E2BD8E60D81945DE35F88161B8B7876CBA9409BB4E89113CE3762BCC9B4497BD8FFE2A32EC031DAC66D8CFD0806B1F31EC067C8432B9B68FA1DE07F743B4F91E74A659533EE87D0DB23F5F0755E0EF09E8BCCEB001DEC17131AE7DCFF0BF3EB865B0195690EFD25473F2BFC8A79F8AFEBF8BA189E1124FF08FDE64F83FF244012FC1EF7F938FCE93B65E4962FE3BA34F8BCEFF9F20FCCBB56FA0F38ADA08FF22AF7FCFB017E3B73008FF05E05DC6FA696D807FB161BB31BCC0D00CF9DD036547E3792CC3B19475476C406C9FFBD06F6C49CC7F1178DF0ED9B789E113C06AF4F56F70AC956FC4EFBF85E179F49764E55F825FC732F40F132A10454B56FE657AE62486C161C249682359F92F813DF45398F01EEC8264E5BF14633A5C7BF7633CC314FFC9CDFFCFF0DF9AC057237CC466C04E9429A8F30370DA0AFFDFEAE221C2E33F182E63F811318E090C0B714DE26217327CD786F8175DDE0F7E91F0F820C320D8049AADF708AEBDC4F06BC4C3DAD2EF7F11E4B9F0B880E10FBADF7F2270B4DFFFA236F6FBFF0C3FFF806E8CEFD18DFF3D3AD9700075DBD2F84FE93FF577D6F3D61CE0587FDE56F81739F72786CFC0976C0DF067E8BC46F87A2B70ED53D46D48C9FF36C3BFCCF70C44AC43787C9CE1B79073F20C86313C856B8BF13CBE6943FC3781971FC0E336C4C30E02EAC1AF82F8E7C78815A7E47F8AFF14FFC9CBBFAC6FBA8AD4B50FE1C095A4AE3E4E56FEAD885F96840985682359F92F403C5BCAFEC5B012B64F305889BA1F404F162431FF02672206A8D936E7903A47EE0FCE01AED8BFB21EE8F4248F7F12FAEF24F8758B29F8ABBD2EF02D7345E79167AE3FD9E7FF7A913AF721D03308FE110C5FC107E8A22B4F76FE3361DF8AAF736E10FC73F0DBDF4B583D9CC4FC67A2FF6A20FDF927F876693ED72C28D3FCBEB37CAE652619FFEB196A19E6EAE049C4BBE4DA3D3ED7E6A26C3DF87FCCCFB5AF9288FF58ADFF49F19FE23FC57F8A7FB326B1DFDE8C21FFB2062ECBC4FCCB5A9D698869459B77B19FA792F9D7827765789BC25BF31D6C2DF89B3E36B1599305F6FE3F60EF3447C07733DAF83BC35164EEB5CFBE49FC7659F7F72CC31A52E3F9DB61DF07E2772FEA6C850F349FE177D4AA4D864CD717C477915D897E45EA5AB0A783F0FF04EAFC0A381949F69B874A56D8F381F8FF23B5ADF79E52FC1FCEFF7452E77FF43AF220CA6E6AE3FC4B2A415C6FB38E7F59F37A1A05D809A40DA672862F75FC7F4EEA5A674AF1FF5F9164D3A53AF2C444DFA158EFDC172029EA867C8AF1FC10D100C99BD81A95BC8128577266C3112CDF7C6BD7D95E799A9A87C24B967CB36393CAD7ECCD5E79B4DAD79EB3966BBF837B0341774587E2376FC855F3A62E7E72EFFDEDCBDD7D6266F798773B59D72F6B61E43DAFC5B0F77AA1EC3788F51E63E2F17B3CA96B36CE26F5DD8D3EB05BA54CDED15C45EA7A9F14FD29FAF5291D3EFC7852E3F9B7C2F6B982D4B97E29BB99D47980B1D089E926F1E34454C89CC6BFC9F34EFB7EE44D007DD91ED4BD9BD479BD44FA71BD113B0CF73DFCE5904F8948F20ED5835188A3DC4F5E9B11C5350EF201FAB9FEDD3789EB7C8731BB03508FB2DD74F83B71F2FBE52780FE22D03F1AC7459037D2B76F84CF226B371FC6F14DE0E3285D7D51AFB2AEA33041F4AF845CD492CCC5CA7AC353488DD9CA5ADCFB702C655F933A07ABA5B3F1FCCD407F26626AD22FCAFCD05F0AF9FF179DEC340BFDB296E51CC4F7E45D986178CE2F93BA36468E8792FA4EACF84743806316FA65EF8199A4CE4F3F0C99723F8E7DCF1F45AC23C764CF5FEC824A83D01732D32CF497E178B741781F32C92CF48B8FFB592BF4D6A718CF66A35FD6B1EC855E95F5FB0700BB50A6BDBF6A56FA1F27350E2F345E075DB696D43DFA842F89C33F091D6C46FA657DD403B021C642DF8A3E18079EEE834E302BFDDBA07F0F41CEEF05DD5FA24CDB17C0ACFD27D9C7EF16E86079D6EBF0EC7F441CF210AE6D3531FDF740CF0ACD6374FD7F2C78B91763C0ACFD5F64CB7CD07A03E48FC0148C85A7209FCC4ABFD0D808592F7A567B8F6737CAB4F7DA52E337BAF497C2A6D96910B4FD23CC42BFD892B2C791D1FD4F8E3599FD296BAF6EC1D8141BE2A100F038C6F02C13DAFF5590FFE263C91E2B837C40CA9642179C61B2E72F49D6443C0399EFEFE31C65D00522FFD34CE8BF4BFA1DEC9B4A3FF50720FE30D844F10789FF5C0459528C71F96FF8B725BAF21294D523E6A8958F4970FC47E22132DFBE06B016BA7787AE4C83EF11BBFD4C57267BD27E9440FA23798750FF2E618AFEFF3EFAB53D3923A53F517B6F8A0CBF137E49B8B48B6D7ABB4E1FC43BC99CD78BA4CE0DB59676995792B5A49D28B14964BBCCD1BD45EA7C84E8AF7D7EE86DC43599CB9335BB5750802F54252059608FC91A65995F7FCD0FFD32F77E34EAE49079D75F4A6CFF593FF43F9DC07EDEDA712D365A838EF606F8F6C940BF05FE64AD8EFEB9284B9635BB42E7341DFD5329B9D61B0BADB2BFC026C0E5B1A25F5D4E142CC7775D7DBF6BEA5EA6E42FBFD8AEE695D60141EB253A3F6DA99A8F5B1E513B877DE755FB0EAE2CCFF2977B7FF755165FF4246D03F872F76F52199B1583B2179FCC6BFF19FED9A98827CAD8186F823E2F7314F29EF0DFE123CA9CA9EC932BFB6B5F93A22F60B2C216163B50E6665F2775BFF109B0031E456C278FE2BF06BD18CF66A9CEFF6C24CFBA904694C9B1EC0F5843ADFA907644A900B1ACD6D8AE5257E6D0E2B15E65187CF9661D283EE7FECA0467481CE8937D1EDF861D7C396C9E0DA4C6FAC5D67C19C7B2E66D1EEA48DD3AF4CD58A7CB715F0BFABD7CBB44F6ECCE442C671A8EA5EC5AF2EC492032F1B238D3570C5FF63A9C6BF45940DB9B18BF89A02F0B637807ECC031F0DB5EC0B1C8C46DE80F5909A26F0474D858C03880763E1EB1C644D027726636E44630980DB9126FFA3A226E184AF649DCB04382E8937B6BF3713F92675DEA4FE4999F5B9340FA3E81FEDD047DBB1472EE71C40B6623569B28FAEAE17F4AFC5DBEE3B302F2E679C480EF050F1D12D8FFB4F5C50710133B84636DED71A2FBDF4E5D5FD3E681B5BD7F779AA0FFDD8CF8D543E87BA29B1F814EBEC504FD4FD6F56C85EED0F6415B803EF95713F4BF03B09F0EEAFADF41941D3041FF6B0E0189EA7F39D0AF378400A9939D20FA2496F2478C91193E2065731003CE49007D32772DDF01DC0E7BD977ADC014C8686D9E3B11F6691E6CD0993E71280B9EE142D856F1B64F6B61DB5BE13BBE8A3EA6D9F2D9F04526E8EAC5933E917BDADAE997F01B3FA12B93639953785157B63A8EF485F3EE49738ABE16FF375CFAE2E1FF8ABCD81B067D8233340EF4C99CF1B3E4F97682D1BD829EA1F8ED9B520ADD25EF896D460CCB777FFFEF716D396284F1DEEBC08AE7D11D3EAF7EEEB2113E7A77D449F41E14837CFAA4F86F03C93CE997A4CE331E445F93F5ACBF2073A533F0BBCA73FC0D992FC97B66DA7B072747AB5145714FAF1C9E1F724FC390D2445DDC7903E526475E1A19BEC6AFC6BF324BF1CE9779E532C7544EEAC44FCB7E00D1D9714F62A87742F69DCF3012314BF92E7A3CBEE9EB849F2B31964BA1FB6F831F9C1987FBE7424E486C7412ECD0BB10FBC98931DFE720862336E416F8FA1B70BC0DB19E1131780E36C484771BD0D952A79AA2FBDD7BB11D649DEF3AF8C63B105BD80690E3EF704DEA2C89B2CD207681BCE770048695CC099E87677235A9FBC3899DD219436F7E94ED8252F2CC43C9FBEBEF808E4BE067CB1A9F37A0CF0A503716F7EF88B1B602FD5E7B5FBA06F6D074D489D5FD25DE21EBBE2F0A00C3512756F797FD4D56C206F407F25C8E8CE1FD7B41CFFE8818A91697DC8F32E9FF47C5F8FE4B206B25A6B708F021627A7571B8FF87B8F7163C8BB538D6BEAF1EEBFBAFD3C5AC0FEAE287076007C5FAFECBE04749ACE19FA47E8B6935E4CFB238DC7F0564CD17180B722EEF3BCA3A84F7E370FFCFE9F07970ED785D8CEF2F7ED56378EEFEE051C8E058CA5F99DFBC9ED4B9753D883D7631A9EB6B6375FF12D85B32FE649FBF7E80D3D00F46A34EACEE9F0FF92E7DBEB7EEBA1CCBFA83E218EABF45B07745C72C861E1C0AB81DD77F8B3A0B6370FF3590F3FB75B2473BD7649076FE690CEEDF9AF70DD744F9FEED20EF8CDE5FE6BE8AA2787F3B62E346625752E74F14FD3D7AA46FCF026F62EF3691F7DAFAADB8369362B7A6CA063A8E21CF771EB5EF401E8D6B368A7D125FE8059DFEFD5B9C7C3F7D0C4EE4DED78805F6A5F8AF37EE007D2FF658D82B48DDCB5435A8B3A9CB59238559B3FC974BFBB2CC5896C20A1C1AE0DEB750844B1F5D9CE2E2F07F49D1CF33C8B326681ACAA295C4B6B8173E9FF87EB5F009A231AE4E2475AFA335185B2B712CEB774F88705C9D44EA5A157FF31752B611F70F374D807CBC0D3EC0138887C89A845B70ED9208DA1F8731266B706F849E95F592537476C8D808DB9750D9CD8863CD04CC461F3A350AEDCB1E9973103BD2C31CC478236DBF0AFD651F62C57B712CB6C0D9516A5FE62DDF83ADFF3A8E1744B17D591322EB837701F640A745ABFD37F03C56023E4559B4DAAF433CEE33C0069445A3FD61F0AFB6FBC0728C8748DB973EFE07F816350039966FBA0F8C42FB27A2BD5B61AFF7C678BB0AF22992F645B6C8F70907413E7706D4625C9F4591BDF350033D2FBFE74EF8BE5FE0783DAE4D8AA0FD6B0CD8953511B43FD2C75EF4857D8861869BF2212B2516F383CE2FFF1EE3E0368A7C0D7D3A6C9E1A9DDD570DDB279A7BAB1E8BDF56E20C1531B0DB1CD08D8FE2D8989D364B7143339B37D10245FE2D53A1271CA69E3A3B6C5EEB3D183B7E934B61135C19811F64811F7337FAD61DF0ABDA85696BCBDCE45B18B39A7E91E337C3B07DE4BDCEB98839AC41ECF103E81329BB8B5AF7EEA71DF243E69E656E6D047486C8CAAEB896DECAF6AE82CD7137ECA429A07910AE85D3DEE53ADDA9C1C408DA9B469EB9632DBF3182F6A6431EEBE1C608E95BABD3E7025323A4EF2BE8112DBF2982F62E459FD6C3B808DA3B1D3A7314601E747F38EDD5C0F792FE5C06397D1BFA784D18ED3D067F770379BEB1BC1E658F84D1DE8220FAF08556B667C5EFD848FEF71108E77B67B9D0C90F9267FD87CCB1C8BC6324F3CCBFC458FB8CA2B3D6C5067937C7888FDAEC68A04336159A2CE181E02AB92A88BE92650DE53ABD55D9BAB7EE07A23F5693FF7D8C82E927797EB2CE58DEBB7C157DBD9B41FD24643F05DB51B3E537C12734B23F4907D87535D00F0257A0ACBD41FCF320E3347F772ACA8CE28F47FC495B87F00ECA8CE24F80FFF5316031CA5A83BF4C27EB9784812F3ED57F00CB5B893F1276C93D80DB5BF9FC87A3DF9D02B89C3CFBFB854A3217246BD764DE499B877D03651D0CE0CB3DD6F991576BC9FF7E64BE2903B19D0DE4D937770362D48E56C86199D3933DA9FE85F89A3D0CF93315F64D40F973680051436EEBA1A98B8AFBFF555C7E88]
Point(doLeft)
Point(doTop)
Point(Left)
Point(Top)
Point(onClose)
link(onCreate,713062:doEvent1,[(237,41)(237,83)(7,83)(7,97)])
link(onClose,8295385:doEvent1,[])
}
Add(Hub,7833892,280,14)
{
InCount=2
OutCount=4
link(onEvent4,9938011:doEnumDevice,[(312,41)(312,20)])
}
Add(Edit,6129557,757,84)
{
Left=45
Top=30
Width=55
Height=21
Font=[MS Sans Serif,9,0,0,1]
Text="9600"
link(onChange,2389927:doEvent2,[(797,90)(797,70)(641,70)(641,146)])
}
Add(DeviceInfo,9938011,329,14)
{
Point(DeviceIdx)
Point(onDeviceOnOff)
Point(onBreak)
Point(doDeviceOnOff)
Point(doStop)
link(onEnumDevice,10515647:doSeparateMT,[])
}
Add(MT_MultiData,10515647,392,14)
{
Count=4
Point(Data)
Point(RemaindData)
link(onData4,1980674:doCompare,[(457,41)(457,20)])
}
Add(BlockFind,13037768,686,21)
{
IncludeBlock=1
StartBlock="(COM"
EndBlock=")"
Point(onNotFind)
link(onSearch,11124581:doConvert,[])
link(Replace,12544851:String,[(699,9)(576,9)(576,182)(405,182)])
}
Add(Convertor,11124581,735,21)
{
Mode=1
link(onResult,3774362:doValue,[])
}
Add(Memory,3774362,784,21)
{
link(onData,13148397:doEvent2,[(829,27)(829,64)(660,64)(660,97)])
}
Add(BitBtn,14456427,217,91)
{
Left=115
Top=30
Height=21
Caption="опросить"
Point(onKeyUp)
Point(onKeyDown)
link(onClick,10926447:doEvent1,[])
}
Add(COMEX,9633750,735,140)
{
DataBits=1
link(onRead,13487093:doEvent1,[])
link(Port,3359484:Text,[(741,128)(713,128)])
link(BaudRate,6129557:Text,[(748,130)(763,130)])
}
Add(Hub,13148397,672,84)
{
InCount=2
link(onEvent1,3359484:doText,[])
}
Add(Ini,11689371,98,35)
{
FileName="common.ini"
Section="form_first_pos"
Key="Y"
link(onResult,4253353:doLeft,[(170,41)(170,55)])
link(Value,4253353:Left,[(125,23)(163,23)(163,78)(202,78)])
}
Add(Ini,11188307,98,98)
{
@Hint=#14:местоположение|18:формы при открытии|
FileName="common.ini"
Section="form_first_pos"
Key="X"
link(onResult,4253353:doTop,[(183,104)(183,62)])
link(Value,4253353:Top,[(125,87)(209,87)])
}
Add(Hub,8295385,245,42)
{
link(onEvent1,11689371:doWrite,[(267,48)(267,12)(86,12)(86,48)])
link(onEvent2,11188307:doWrite,[(266,55)(266,73)(86,73)(86,111)])
}
Add(Hub,4612708,56,35)
{
link(onEvent1,11689371:doRead,[])
link(onEvent2,11188307:doRead,[(80,48)(80,104)])
}
Add(Hub,713062,14,91)
{
OutCount=9
link(onEvent3,4612708:doEvent1,[(36,111)(36,41)])
link(onEvent4,7833892:doEvent2,[(41,118)(41,5)(258,5)(258,27)])
link(onEvent5,7205294:doEvent9,[(81,125)(81,902)])
link(onEvent7,321952:doText,[(145,139)(145,125)])
link(onEvent8,6126245:doWork2,[(202,146)(202,454)])
}
Add(Hub,13487093,812,147)
{
OutCount=5
}
Add(VisualStrings,321952,168,119)
{
Lines=#39:OL _RGISTRY_DATASENDER_RS232_to_I2C&SPI|
Point(doText)
Point(onText)
link(onText,4253353:doCaption,[(210,125)(210,94)(177,94)(177,27)])
}
Add(Hub,4636619,693,154)
{
InCount=5
link(onEvent1,9633750:doWrite,[])
link(onEvent2,15300191:doText2,[(724,167)(724,223)])
}
Add(Edit,3359484,707,84)
{
Left=10
Top=30
Width=20
Text="9"
link(onChange,2389927:doEvent1,[(748,90)(748,74)(646,74)(646,139)])
link(Str,3774362:Value,[(713,58)(788,58)(788,60)])
}
Add(Hub,2389927,693,133)
{
InCount=2
OutCount=1
link(onEvent1,9633750:doOpen,[(721,139)(721,146)])
}
Add(ComboBox,12544851,392,126)
{
Left=10
Top=5
Width=160
Height=21
Text="Выберите СОМ порт"
DataType=1
link(onClick,13037768:doSearch,[(584,139)(584,27)])
}
Add(StrMask,1980674,490,14)
{
Mask="*COM#*"
link(onTrue,7779069:doEvent1,[(534,27)(534,59)(373,59)(373,76)])
}
Add(Hub,10926447,294,91)
{
InCount=2
OutCount=4
link(onEvent1,12544851:doClear,[(350,97)(350,139)])
link(onEvent4,7833892:doEvent1,[(320,118)(320,68)(272,68)(272,20)])
}
Add(Hub,7779069,385,70)
{
InCount=2
OutCount=4
link(onEvent1,12544851:doAdd,[(413,76)(413,113)(371,113)(371,132)])
}
Add(Edit,15300191,868,210)
{
Left=260
Top=30
Width=360
Color=-16777192
Font=[MS Sans Serif,8,1,0,1]
Ctl3D=1
WinStyle=1
Alignment=2
}
Add(Edit,5752321,872,109)
{
Left=260
Top=5
Width=360
Color=-16777192
Font=[MS Sans Serif,8,1,0,1]
Ctl3D=1
WinStyle=1
Alignment=2
}
Add(Label,12834109,462,77)
{
Left=226
Top=32
Width=33
Height=17
Color=-16777216
Font=[MS Sans Serif,8,1,0,1]
Caption="SENT"
}
Add(Label,6616782,518,77)
{
Left=197
Top=7
Width=58
Height=17
Color=-16777216
Font=[MS Sans Serif,8,1,0,1]
Caption="RECEIVED"
}
Add(RadioButton,3868795,392,406)
{
Left=400
Top=190
Width=80
Color=-16777216
Selected=0
Caption="Обратный"
link(onSelect,1948480:doWork1,[(438,412)])
}
Add(RadioButton,4391195,469,406)
{
Left=480
Top=190
Width=75
Color=-16777216
Caption="Прямой"
link(onSelect,1948480:doWork2,[(514,412)(514,449)])
}
Add(Label,4661136,539,413)
{
Left=400
Top=170
Width=140
Height=17
Color=-16777216
Font=[MS Sans Serif,8,1,0,1]
Caption="Порядок выдачи байта"
}
Add(DoData,843818,413,462)
{
Data=Integer(0)
link(onEventData,1854588:doIndex,[(573,468)(573,860)])
link(Data,3868795:Selected,[(419,453)(398,453)])
}
Add(HubEx,1948480,434,443)
{
Angle=2
link(onEvent,6126245:doWork1,[(380,449)])
}
Add(CheckBox,12072739,119,560)
{
Left=605
Top=115
Width=40
Color=-16777216
Caption="Bit0"
Point(doCaption)
link(onCheck,6145713:doEvent1,[])
}
Add(CheckBox,11814331,203,560)
{
Left=565
Top=115
Width=40
Color=-16777216
Caption="Bit1"
link(onCheck,4974391:doEvent1,[])
}
Add(CheckBox,5480298,301,560)
{
Left=525
Top=115
Width=40
Color=-16777216
Caption="Bit2"
link(onCheck,8033884:doEvent1,[])
}
Add(CheckBox,2917208,406,560)
{
Left=485
Top=115
Width=40
Color=-16777216
Caption="Bit3"
link(onCheck,2458555:doEvent1,[])
}
Add(CheckBox,8763537,490,560)
{
Left=440
Top=115
Width=40
Color=-16777216
Caption="Bit4"
link(onCheck,3948231:doEvent1,[])
}
Add(CheckBox,4446865,581,560)
{
Left=395
Top=115
Width=40
Color=-16777216
Caption="Bit5"
link(onCheck,8990471:doEvent1,[])
}
Add(CheckBox,7113734,693,560)
{
Left=350
Top=115
Width=40
Color=-16777216
Caption="Bit6"
link(onCheck,1596767:doEvent1,[])
}
Add(CheckBox,15333524,798,560)
{
Left=300
Top=115
Width=40
Color=-16777216
Caption="Bit7"
Point(doCaption)
link(onCheck,4916855:doEvent1,[])
}
Add(Hub,7205294,427,840)
{
InCount=9
OutCount=3
link(onEvent1,326861:doNumber,[(462,846)(462,678)])
link(onEvent2,11994673:doNumber,[(468,853)(468,780)])
}
Add(Hub,6145713,161,560)
{
link(onEvent2,7205294:doEvent8,[(184,573)(184,895)])
}
Add(Hub,4974391,245,560)
{
link(onEvent2,7205294:doEvent7,[(271,573)(271,888)])
}
Add(Hub,8033884,343,560)
{
link(onEvent2,7205294:doEvent6,[(367,573)(367,881)])
}
Add(Hub,2458555,448,560)
{
link(onEvent2,7205294:doEvent5,[(480,573)(480,607)(403,607)(403,874)])
}
Add(Hub,3948231,532,560)
{
link(onEvent2,7205294:doEvent4,[(556,573)(556,612)(377,612)(377,867)])
}
Add(Hub,8990471,623,560)
{
link(onEvent2,7205294:doEvent3,[(649,573)(649,618)(392,618)(392,860)])
}
Add(Hub,1596767,735,560)
{
link(onEvent2,7205294:doEvent2,[(762,573)(762,625)(397,625)(397,853)])
}
Add(Hub,4916855,861,560)
{
OutCount=3
link(onEvent2,7205294:doEvent1,[(886,573)(886,656)(408,656)(408,846)])
}
Add(BitsToInt,326861,483,672)
{
Count=8
link(onNumber,2006332:doEvent1,[(666,678)(666,846)])
link(Bit1,11691626:Var3,[(489,663)])
link(Bit2,11029978:Var3,[(496,650)])
link(Bit3,10109618:Var3,[(503,644)])
link(Bit4,12241182:Var3,[(510,639)])
link(Bit5,1175612:Var2,[(517,634)(496,634)])
link(Bit6,681703:Var1,[(524,632)])
link(Bit7,3311521:Var1,[(531,639)])
link(Bit8,9422901:Var1,[(538,645)])
}
Add(BitsToInt,11994673,482,774)
{
Count=8
link(onNumber,2006332:doEvent2,[(659,780)(659,853)])
link(Bit1,9422901:Var2,[(488,717)(559,717)])
link(Bit2,3311521:Var2,[(495,723)(566,723)])
link(Bit3,681703:Var2,[(502,730)(580,730)])
link(Bit4,1175612:Var3,[(509,735)(610,735)(610,600)])
link(Bit5,12241182:Var2,[(516,742)(419,742)])
link(Bit6,10109618:Var2,[(523,749)(321,749)])
link(Bit7,11029978:Var2,[(530,755)(216,755)])
link(Bit8,11691626:Var2,[(537,761)(132,761)])
}
Add(GetDataEx,11691626,126,658)
{
Angle=3
link(Data,12072739:Checked,[(125,663)])
}
Add(GetDataEx,11029978,210,645)
{
Angle=3
link(Data,11814331:Checked,[(209,650)])
}
Add(GetDataEx,10109618,315,639)
{
Angle=3
link(Data,5480298:Checked,[(307,644)])
}
Add(GetDataEx,12241182,413,634)
{
Angle=3
link(Data,2917208:Checked,[(412,639)])
}
Add(GetDataEx,1175612,490,595)
{
link(Data,8763537:Checked,[])
}
Add(GetDataEx,681703,574,627)
{
Angle=1
link(Data,4446865:Checked,[(587,632)])
}
Add(GetDataEx,3311521,560,634)
{
Angle=1
link(Data,7113734:Checked,[(699,639)])
}
Add(GetDataEx,9422901,553,640)
{
Angle=1
link(Data,15333524:Checked,[(804,645)])
}
Add(Button,7710814,441,1036)
{
Left=230
Top=285
Caption="Send"
link(onClick,9499536:doString,[])
}
Add(GetIndexData,1854588,616,854)
{
link(onIndex,2006332:doEvent3,[])
link(Data1,11994673:Number,[(622,841)(488,841)])
link(Data2,326861:Number,[(629,710)(489,710)])
}
Add(ConvertorEx,16119209,616,917)
{
Mode=6
Digits=1
link(onResult,1641391:doConvert,[(658,923)(658,959)(604,959)(604,979)])
link(Data,1854588:Var,[])
}
Add(Hub,2006332,679,840)
{
InCount=4
link(onEvent1,16119209:doConvert,[(705,846)(705,902)(604,902)(604,923)])
}
Add(FormatStr,9499536,616,1036)
{
Mask="%1%2"
link(onFString,4636619:doEvent1,[(926,1042)(926,373)(647,373)(647,160)])
link(Str1,9037971:GetData,[(622,1025)(825,1025)])
link(Str2,349618:GetData,[(629,1020)(671,1020)])
}
Add(Label,6292940,131,175)
{
Left=375
Top=135
Width=227
Height=17
Font=[MS Sans Serif,8,1,0,1]
Caption="Побитовая установка переменной "
}
Add(Edit,10385775,938,420)
{
Left=135
Top=110
Color=12639424
Font=[MS Sans Serif,8,1,0,1]
Ctl3D=1
WinStyle=1
Text="01"
Alignment=2
link(onChange,13646675:doConvert,[(983,426)(983,774)(807,774)(807,860)])
}
Add(Label,1181151,882,420)
{
Left=45
Top=115
Width=84
Height=17
Font=[MS Sans Serif,8,1,0,1]
Caption="Адрес в НЕХ"
}
Add(StreamConvertor,13646675,819,854)
{
Mode=3
link(onResult,9037971:doData,[(863,860)(863,906)(807,906)(807,979)])
link(Data,10385775:Text,[(825,676)(944,676)])
}
Add(EventFromData,9037971,819,973)
{
}
Add(Label,15157092,133,217)
{
Left=65
Top=75
Width=118
Height=17
Font=[MS Sans Serif,8,1,0,1]
Caption="первая часть посылки"
}
Add(Label,4878241,434,70)
{
Left=415
Top=80
Width=118
Height=17
Font=[MS Sans Serif,8,1,0,1]
Caption="Вторая часть посылки"
}
Add(ChildPanel,11698211,14,315)
{
}
BEGIN_SDK
Add(EditMulti,4926471,21,21)
{
}
Add(Panel,11168264,35,105)
{
Left=255
Top=75
Width=5
Height=165
}
END_SDK
Add(ChildPanel,7875375,7,259)
{
}
BEGIN_SDK
Add(EditMulti,16393232,21,21)
{
}
Add(Panel,4915002,35,105)
{
Left=35
Top=235
Width=580
Height=5
}
END_SDK
Add(StreamConvertor,1641391,616,973)
{
Mode=3
link(onResult,349618:doData,[])
}
Add(EventFromData,349618,665,973)
{
}
Add(HubEx,6126245,376,448)
{
Angle=1
link(onEvent,843818:doData,[(380,468)])
}


карма: 0

0
Ответов: 8888
Рейтинг: 823
#12: 2021-06-06 15:48:51 ЛС | профиль | цитата
ibegen, ох, блин!
Пытка №2


Add(MainForm,4253353,350,63)
{
Width=699
Height=422
Color=-16777216
BorderStyle=5
Icon=[ZIP16C9000078DAED5D09601445D67E3393CC2493C91D72700676415C4189BFB05E4844DC5F145822BAAE82288722EB41E281827279A1AC8B44DDD5F53E51775D042FF45F8F008AE0AA1844161504564014858012C261FA7F6FFAEB4CCF304767CE9EEC14BC547775BDEAF77AAADE55D5D54416725179791EE769B4DD4AB49C88F2F2D4F39E16A20536A23E7D88CF33E8B91CA2B569C4F5719E4134BD50EAABE797A513F5E848545929E7E5D47320D1DCAE1A7E393DD79DE8B571443D7BAAE797B5271A7DA7D61E5FE776963F45545AAA9EDF914974D52B444545EAF9EB76A2C6B7B4FB313ED3B2E05D6E8F69E626886FEBA65BD24C2BB5A43CD2A799EEFF3473A69AC93F29E23F7575755CA2B8FF93A2A899FC9322F9E34E0EA26A7D7B8E6A47D0F36A374AF0A4AB50ED504187EE7DFD7A4775D0EBD53EE787B5EFE0265A713F87CFFD1C541D823E4EC1DA3B9C3EEFF6E51F859D7CEFE7BE5D75500C879126A52F1CDCA828FB1F53A1215751363914A5CEA6285F7EA9C2EA918AB2F1A0A27C92151AA49E86F7F9436A3B7A90B60F0D50A179861B7AA22F97EBFA791DC5AA9FBBD3F5D7FBEDF32D4F547B762DBFB8CF93067E0BDAF5D5D53EFDBEDA7700B849A24303889ABAA8C7CD33D4735F906B524703A92765F29C58E4D0C5A4CA25F7D370EA6E60F11CA6A7A793D3E9A4ECEC6CCACFCF67595344656565D4A95327964BE5D4BD7B773AF2C823A977EFDE2CC7FA50BF7EFDE884134EA0934F3E99060E1C4883070FA6214386505555159D7FFEF974E18517D2D8B16369FCF8F13471E244BAF2CA2B79BC54D3E4C99369EAD4A9346DDA34AADFA1789E73AF6388CE1A4E74193F88DBE7113DB39068D92AA2CD0D94BF4BA18ADD0A55FDA850CD5E856AF729B468BF42F50775F8C7B0801DFE6B7E8E4388E6B1705D388568D5DD440DF3295F79852A94B7A94A594135CAA754ABACA745CA56AA571A74F82CD487B3C0ADEEC6F8BD18BF1FE3B3246D3893F147327E0DE3CF66FC4718FF25C65FC9F81B5BF0AD4C7E1A936F67F233987C27939FC5E4E734703F550AA8BF524123952A9AC2ED3CA0D4D2ABCA225AA3D4B7E017317E37C6EFC3F8FD197F08E39FCFF81318FF06259FE630FEC38CBF80F1EB187F35E36FD1E1F760FC4AC6BF80F1AF65FCB98CFF3CE32F65FC7AC65FC7F85F31FED78CFF2DE3EF62FC461DFE313D98FD5399FD91CCFEB5CCFE5C66FF79667F19F7A5D5F9A4ACAB20654315295B6A48F9AE96948645A434EAF059370DE74757CD1D6EDE298C3F94F1B9AD86898C3F85F1E730FE238CFF22E32F61FCD58CBF5587CFFA75380FE56AD66DF358DF2DE47EBACAC5F8FCB328E505A49CC2F8A3187F2AE3DFCFF8AF31FE1A1D3EE5D0702AE161D495E6D151B490FAD12AD6840D349894FC0B48A9A826A5EA76526A1E26A5F6255216AD20A57EA30EBF9CF1FB31FE10C61FCBF83730FE5CC67F9AF15F66FCB719FF7DC6E77BD6AE67FCAD8CEFE93FBDB885B3B88589DCC26C6EE1196EE15D6E6133B7D090AFD09E0A857EAA52A8B146A17DB50AED5FA4D0C17A4FFFEDC0F8BD197F00E39FCDF8E3187F32E3DFC1F87F65FCF98CFF0AE32F65FC558CBF9EF177E8F033F004DA317E07C6EFCAF83D18BF17E39FC2F8BF67FC1AC6BF8BF1E733FE3B8CFF850EDF37E5F33FFE5F6054DD64F13F36A15C46EBBBA47E96F1FA59ADAC9FD191E55D46A74C4395DB3B6D164E56B292CDD93E64F56C8BFECC9213A27A896F416988E6335CAE2C5B7A567ABA2BDD96E5726584B841B6FCE1E1525C224F482B08519F87596919F48D81FA452EB5BE4B6837408F3D97A8804DE2DC4C43ED772A2E2E2D2D29612836D67EF082C32EE7D8D26C483946DA77EA3B9E81F69D36AB25CD6249239BD558FD76455656B7646DD72ECB083D5965A536CA7291B5B4D458FB76BB25D36ACDB4D8EDC6EA7BF16BE0F938EC16A7D566BCFDF6A0BFACD458FB5ECFC740FB561EB9168B8DACD6AC58FCBE39692D292716FDB3535171893B15B7EB64787C493238BEDCE3D72D764B8DCB87167BD4A0FC51C57AE8F65D196C68DAD29D594E67BACDE9CCCA70855215A10AE25B3F27648177EA60F13EB7740CA1300ABDF54B61680596976177FBF9567B469E4105992F7F0CAB77EE41F2A79DF1FA656CD0D9CA5AE1B072DDF614CB949111E082A2EC7D51F5F902E5BBEF56F3991635073413CDF0CA1B2779E7DB2678E7750E3557149CDBFCE74B4FF3CE23ADE77BBF6FBEF1CEF7EDF2CE7DF90A91B78038EC923775F19F8B132FB938F29EDC3B6E053F352DB09F9A9999E9F6530B0B0BBDFCD46EDDBA518F1E3D5AFCD48A8A0AEADBB72F1D7FFCF1D4BF7F7FAAACACA4418306D119679C4143870EA5112346D0B9E79EEBF657478F1E4D63C68C71FBAB93264DA2ABAFBEDAEDAB4E993285A64F9F9EF253537E6ACA4F35939FDAB1E58FFF54CA8654A720FAA7A4033313D8132BB6DB33321CF6E200976D871D78A5DC4C67BA9D53BAD399EBB775E8D362F77FBF2E631EF47389FFEB9D7258EC89E55112C2E50C703D278D25A958B301AEB3476CB55A6C5981AEE7966517166697E505BAEECAB63B9DF66C57A0EB99167772066CBF382B3F3FAB383720FD05993939990501E987E31FB0FDD27C772A0DEFF995C2C80DF2FCDDA6556100679FCB0BA47F16BA0F0F4F4E4B4BCAF27BDDEFA1975313D4986DDFA2512D1DFC76E0CE2EBB45CC4957E760667050C3B7C862096E2E3A42CC37E4FA0E1D73CD3BA8764AA525B09DC2FE5C8B5D72C41147B8ED12B1498E3BEE382F9BE4F4D34F77C7CF870D1B4623478EA451A346B9E3E5D75D775D8BFD41E358514E66457907DB190FB09D319FED8C9759562E613B6315DB191B94543C3D65A7A4EC1493C6D359E06767EB657D9ECD6AB50575D68B8ABC657A5A9A972E70391C5E8116A7CFF54C9BCD2BFA5D909F1F2C9290EBCAC971E9246EBA2E0AE4A646E29B5E143902FBD391CF5B56AA33B7EEF50DEE34901295C4C49BCCF01EC3D10C4F323C87309768C0BF313CCAD01B75AE11F1456D2709FFB3193633F4657803D3EDB950874B195E65380E756E49F19FE23FC57F9B491289BB83E13F0C2732FC93610982C1E2BDB245438B194E409D5B03BAC5C993AC98A63D8B6116C3C70C3F81CF6D0CDB21F705BE65D88A6B52E743A8AE33E13D265B5F102B6214C3BB0C7B187E26AC906A05FC0C5CE91B1704F2524D98844EB6426857183C070269EBA6247806E2BD8E60D81945DE35F88161B8B7876CBA9409BB4E89113CE3762BCC9B4497BD8FFE2A32EC031DAC66D8CFD0806B1F31EC067C8432B9B68FA1DE07F743B4F91E74A659533EE87D0DB23F5F0755E0EF09E8BCCEB001DEC17131AE7DCFF0BF3EB865B0195690EFD25473F2BFC8A79F8AFEBF8BA189E1124FF08FDE64F83FF244012FC1EF7F938FCE93B65E4962FE3BA34F8BCEFF9F20FCCBB56FA0F38ADA08FF22AF7FCFB017E3B73008FF05E05DC6FA696D807FB161BB31BCC0D00CF9DD036547E3792CC3B19475476C406C9FFBD06F6C49CC7F1178DF0ED9B789E113C06AF4F56F70AC956FC4EFBF85E179F49764E55F825FC732F40F132A10454B56FE657AE62486C161C249682359F92F813DF45398F01EEC8264E5BF14633A5C7BF7633CC314FFC9CDFFCFF0DF9AC057237CC466C04E9429A8F30370DA0AFFDFEAE221C2E33F182E63F811318E090C0B714DE26217327CD786F8175DDE0F7E91F0F820C320D8049AADF708AEBDC4F06BC4C3DAD2EF7F11E4B9F0B880E10FBADF7F2270B4DFFFA236F6FBFF0C3FFF806E8CEFD18DFF3D3AD9700075DBD2F84FE93FF577D6F3D61CE0587FDE56F81739F72786CFC0976C0DF067E8BC46F87A2B70ED53D46D48C9FF36C3BFCCF70C44AC43787C9CE1B79073F20C86313C856B8BF13CBE6943FC3781971FC0E336C4C30E02EAC1AF82F8E7C78815A7E47F8AFF14FFC9CBBFAC6FBA8AD4B50FE1C095A4AE3E4E56FEAD885F96840985682359F92F403C5BCAFEC5B012B64F305889BA1F404F162431FF02672206A8D936E7903A47EE0FCE01AED8BFB21EE8F4248F7F12FAEF24F8758B29F8ABBD2EF02D7345E79167AE3FD9E7FF7A913AF721D03308FE110C5FC107E8A22B4F76FE3361DF8AAF736E10FC73F0DBDF4B583D9CC4FC67A2FF6A20FDF927F876693ED72C28D3FCBEB37CAE652619FFEB196A19E6EAE049C4BBE4DA3D3ED7E6A26C3DF87FCCCFB5AF9288FF58ADFF49F19FE23FC57F8A7FB326B1DFDE8C21FFB2062ECBC4FCCB5A9D698869459B77B19FA792F9D7827765789BC25BF31D6C2DF89B3E36B1599305F6FE3F60EF3447C07733DAF83BC35164EEB5CFBE49FC7659F7F72CC31A52E3F9DB61DF07E2772FEA6C850F349FE177D4AA4D864CD717C477915D897E45EA5AB0A783F0FF04EAFC0A381949F69B874A56D8F381F8FF23B5ADF79E52FC1FCEFF7452E77FF43AF220CA6E6AE3FC4B2A415C6FB38E7F59F37A1A05D809A40DA672862F75FC7F4EEA5A674AF1FF5F9164D3A53AF2C444DFA158EFDC172029EA867C8AF1FC10D100C99BD81A95BC8128577266C3112CDF7C6BD7D95E799A9A87C24B967CB36393CAD7ECCD5E79B4DAD79EB3966BBF837B0341774587E2376FC855F3A62E7E72EFFDEDCBDD7D6266F798773B59D72F6B61E43DAFC5B0F77AA1EC3788F51E63E2F17B3CA96B36CE26F5DD8D3EB05BA54CDED15C45EA7A9F14FD29FAF5291D3EFC7852E3F9B7C2F6B982D4B97E29BB99D47980B1D089E926F1E34454C89CC6BFC9F34EFB7EE44D007DD91ED4BD9BD479BD44FA71BD113B0CF73DFCE5904F8948F20ED5835188A3DC4F5E9B11C5350EF201FAB9FEDD3789EB7C8731BB03508FB2DD74F83B71F2FBE52780FE22D03F1AC7459037D2B76F84CF226B371FC6F14DE0E3285D7D51AFB2AEA33041F4AF845CD492CCC5CA7AC353488DD9CA5ADCFB702C655F933A07ABA5B3F1FCCD407F26626AD22FCAFCD05F0AF9FF179DEC340BFDB296E51CC4F7E45D986178CE2F93BA36468E8792FA4EACF84743806316FA65EF8199A4CE4F3F0C99723F8E7DCF1F45AC23C764CF5FEC824A83D01732D32CF497E178B741781F32C92CF48B8FFB592BF4D6A718CF66A35FD6B1EC855E95F5FB0700BB50A6BDBF6A56FA1F27350E2F345E075DB696D43DFA842F89C33F091D6C46FA657DD403B021C642DF8A3E18079EEE834E302BFDDBA07F0F41CEEF05DD5FA24CDB17C0ACFD27D9C7EF16E86079D6EBF0EC7F441CF210AE6D3531FDF740CF0ACD6374FD7F2C78B91763C0ACFD5F64CB7CD07A03E48FC0148C85A7209FCC4ABFD0D808592F7A567B8F6737CAB4F7DA52E337BAF497C2A6D96910B4FD23CC42BFD892B2C791D1FD4F8E3599FD296BAF6EC1D8141BE2A100F038C6F02C13DAFF5590FFE263C91E2B837C40CA9642179C61B2E72F49D6443C0399EFEFE31C65D00522FFD34CE8BF4BFA1DEC9B4A3FF50720FE30D844F10789FF5C0459528C71F96FF8B725BAF21294D523E6A8958F4970FC47E22132DFBE06B016BA7787AE4C83EF11BBFD4C57267BD27E9440FA23798750FF2E618AFEFF3EFAB53D3923A53F517B6F8A0CBF137E49B8B48B6D7ABB4E1FC43BC99CD78BA4CE0DB59676995792B5A49D28B14964BBCCD1BD45EA7C84E8AF7D7EE86DC43599CB9335BB5750802F54252059608FC91A65995F7FCD0FFD32F77E34EAE49079D75F4A6CFF593FF43F9DC07EDEDA712D365A838EF606F8F6C940BF05FE64AD8EFEB9284B9635BB42E7341DFD5329B9D61B0BADB2BFC026C0E5B1A25F5D4E142CC7775D7DBF6BEA5EA6E42FBFD8AEE695D60141EB253A3F6DA99A8F5B1E513B877DE755FB0EAE2CCFF2977B7FF755165FF4246D03F872F76F52199B1583B2179FCC6BFF19FED9A98827CAD8186F823E2F7314F29EF0DFE123CA9CA9EC932BFB6B5F93A22F60B2C216163B50E6665F2775BFF109B0031E456C278FE2BF06BD18CF66A9CEFF6C24CFBA904694C9B1EC0F5843ADFA907644A900B1ACD6D8AE5257E6D0E2B15E65187CF9661D283EE7FECA0467481CE8937D1EDF861D7C396C9E0DA4C6FAC5D67C19C7B2E66D1EEA48DD3AF4CD58A7CB715F0BFABD7CBB44F6ECCE442C671A8EA5EC5AF2EC492032F1B238D3570C5FF63A9C6BF45940DB9B18BF89A02F0B637807ECC031F0DB5EC0B1C8C46DE80F5909A26F0474D858C03880763E1EB1C644D027726636E44630980DB9126FFA3A226E184AF649DCB04382E8937B6BF3713F92675DEA4FE4999F5B9340FA3E81FEDD047DBB1472EE71C40B6623569B28FAEAE17F4AFC5DBEE3B302F2E679C480EF050F1D12D8FFB4F5C50710133B84636DED71A2FBDF4E5D5FD3E681B5BD7F779AA0FFDD8CF8D543E87BA29B1F814EBEC504FD4FD6F56C85EED0F6415B803EF95713F4BF03B09F0EEAFADF41941D3041FF6B0E0189EA7F39D0AF378400A9939D20FA2496F2478C91193E2065731003CE49007D32772DDF01DC0E7BD977ADC014C8686D9E3B11F6691E6CD0993E71280B9EE142D856F1B64F6B61DB5BE13BBE8A3EA6D9F2D9F04526E8EAC5933E917BDADAE997F01B3FA12B93639953785157B63A8EF485F3EE49738ABE16FF375CFAE2E1FF8ABCD81B067D8233340EF4C99CF1B3E4F97682D1BD829EA1F8ED9B520ADD25EF896D460CCB777FFFEF716D396284F1DEEBC08AE7D11D3EAF7EEEB2113E7A77D449F41E14837CFAA4F86F03C93CE997A4CE331E445F93F5ACBF2073A533F0BBCA73FC0D992FC97B66DA7B072747AB5145714FAF1C9E1F724FC390D2445DDC7903E526475E1A19BEC6AFC6BF324BF1CE9779E532C7544EEAC44FCB7E00D1D9714F62A87742F69DCF3012314BF92E7A3CBEE9EB849F2B31964BA1FB6F831F9C1987FBE7424E486C7412ECD0BB10FBC98931DFE720862336E416F8FA1B70BC0DB19E1131780E36C484771BD0D952A79AA2FBDD7BB11D649DEF3AF8C63B105BD80690E3EF704DEA2C89B2CD207681BCE770048695CC099E87677235A9FBC3899DD219436F7E94ED8252F2CC43C9FBEBEF808E4BE067CB1A9F37A0CF0A503716F7EF88B1B602FD5E7B5FBA06F6D074D489D5FD25DE21EBBE2F0A00C3512756F797FD4D56C206F407F25C8E8CE1FD7B41CFFE8818A91697DC8F32E9FF47C5F8FE4B206B25A6B708F021627A7571B8FF87B8F7163C8BB538D6BEAF1EEBFBAFD3C5AC0FEAE287076007C5FAFECBE04749ACE19FA47E8B6935E4CFB238DC7F0564CD17180B722EEF3BCA3A84F7E370FFCFE9F07970ED785D8CEF2F7ED56378EEFEE051C8E058CA5F99DFBC9ED4B9753D883D7631A9EB6B6375FF12D85B32FE649FBF7E80D3D00F46A34EACEE9F0FF92E7DBEB7EEBA1CCBFA83E218EABF45B07745C72C861E1C0AB81DD77F8B3A0B6370FF3590F3FB75B2473BD7649076FE690CEEDF9AF70DD744F9FEED20EF8CDE5FE6BE8AA2787F3B62E346625752E74F14FD3D7AA46FCF026F62EF3691F7DAFAADB8369362B7A6CA063A8E21CF771EB5EF401E8D6B368A7D125FE8059DFEFD5B9C7C3F7D0C4EE4DED78805F6A5F8AF37EE007D2FF658D82B48DDCB5435A8B3A9CB59238559B3FC974BFBB2CC5896C20A1C1AE0DEB750844B1F5D9CE2E2F07F49D1CF33C8B326681ACAA295C4B6B8173E9FF87EB5F009A231AE4E2475AFA335185B2B712CEB774F88705C9D44EA5A157FF31752B611F70F374D807CBC0D3EC0138887C89A845B70ED9208DA1F8731266B706F849E95F592537476C8D808DB9750D9CD8863CD04CC461F3A350AEDCB1E9973103BD2C31CC478236DBF0AFD651F62C57B712CB6C0D9516A5FE62DDF83ADFF3A8E1744B17D591322EB837701F640A745ABFD37F03C56023E4559B4DAAF433CEE33C0069445A3FD61F0AFB6FBC0728C8748DB973EFE07F816350039966FBA0F8C42FB27A2BD5B61AFF7C678BB0AF22992F645B6C8F70907413E7706D4625C9F4591BDF350033D2FBFE74EF8BE5FE0783DAE4D8AA0FD6B0CD8953511B43FD2C75EF4857D8861869BF2212B2516F383CE2FFF1EE3E0368A7C0D7D3A6C9E1A9DDD570DDB279A7BAB1E8BDF56E20C1531B0DB1CD08D8FE2D8989D364B7143339B37D10245FE2D53A1271CA69E3A3B6C5EEB3D183B7E934B61135C19811F64811F7337FAD61DF0ABDA85696BCBDCE45B18B39A7E91E337C3B07DE4BDCEB98839AC41ECF103E81329BB8B5AF7EEA71DF243E69E656E6D047486C8CAAEB896DECAF6AE82CD7137ECA429A07910AE85D3DEE53ADDA9C1C408DA9B469EB9632DBF3182F6A6431EEBE1C608E95BABD3E7025323A4EF2BE8112DBF2982F62E459FD6C3B808DA3B1D3A7314601E747F38EDD5C0F792FE5C06397D1BFA784D18ED3D067F770379BEB1BC1E658F84D1DE8220FAF08556B667C5EFD848FEF71108E77B67B9D0C90F9267FD87CCB1C8BC6324F3CCBFC458FB8CA2B3D6C5067937C7888FDAEC68A04336159A2CE181E02AB92A88BE92650DE53ABD55D9BAB7EE07A23F5693FF7D8C82E927797EB2CE58DEBB7C157DBD9B41FD24643F05DB51B3E537C12734B23F4907D87535D00F0257A0ACBD41FCF320E3347F772ACA8CE28F47FC495B87F00ECA8CE24F80FFF5316031CA5A83BF4C27EB9784812F3ED57F00CB5B893F1276C93D80DB5BF9FC87A3DF9D02B89C3CFBFB854A3217246BD764DE499B877D03651D0CE0CB3DD6F991576BC9FF7E64BE2903B19D0DE4D937770362D48E56C86199D3933DA9FE85F89A3D0CF93315F64D40F973680051436EEBA1A98B8AFBFF555C7E88]
Point(doLeft)
Point(doTop)
Point(Left)
Point(Top)
Point(onClose)
link(onCreate,6563364:doEvent1,[(389,83)(389,69)])
link(onClose,8295385:doEvent1,[])
}
Add(Edit,6129557,756,63)
{
Left=45
Top=30
Width=55
Height=21
Font=[MS Sans Serif,9,0,0,1]
Text="9600"
ClearAfterEnter=1
}
Add(BitBtn,14456427,462,56)
{
Left=115
Top=30
Height=21
Caption="опросить"
Point(doCaption)
Point(onKeyUp)
Point(onKeyDown)
link(onClick,4621497:doWork2,[])
}
Add(COMEX,9633750,735,119)
{
StopBits=1
link(onRead,1654829:doConvert,[])
link(Port,3359484:Text,[(741,110)(713,110)])
link(BaudRate,6129557:Text,[(748,110)(762,110)])
}
Add(Ini,11689371,252,77)
{
FileName="common.ini"
Section="form_first_pos"
Key="Y"
link(onResult,4253353:doLeft,[(324,83)(324,97)])
link(Value,4253353:Left,[(279,65)(317,65)(317,120)(356,120)])
}
Add(Ini,11188307,252,140)
{
@Hint=#14:местоположение|18:формы при открытии|
FileName="common.ini"
Section="form_first_pos"
Key="X"
link(onResult,4253353:doTop,[(337,146)(337,104)])
link(Value,4253353:Top,[(279,129)(363,129)])
}
Add(Hub,8295385,399,84)
{
OutCount=3
link(onEvent1,11689371:doWrite,[(429,90)(429,48)(242,48)(242,90)])
link(onEvent2,11188307:doWrite,[(435,97)(435,41)(235,41)(235,153)])
link(onEvent3,9633750:doClose,[(515,104)(515,132)])
}
Add(Hub,4612708,196,77)
{
link(onEvent1,11689371:doRead,[])
link(onEvent2,11188307:doRead,[(225,90)(225,146)])
}
Add(Hub,713062,168,133)
{
OutCount=4
link(onEvent1,4612708:doEvent1,[(193,139)(193,83)])
link(onEvent2,6270975:doWork2,[(206,146)(206,272)])
link(onEvent3,321952:doText,[(213,153)(213,167)])
link(onEvent4,2258711:doWork2,[(200,160)(200,321)])
}
Add(VisualStrings,321952,322,161)
{
Lines=#39:OL _RGISTRY_DATASENDER_RS232_to_I2C&SPI|
Point(doText)
Point(onText)
link(onText,4253353:doCaption,[(364,167)(364,136)(331,136)(331,69)])
}
Add(Hub,4636619,700,133)
{
link(onEvent1,9633750:doWrite,[])
link(onEvent2,7173929:doConvert,[(725,146)(725,181)])
}
Add(Edit,3359484,707,63)
{
Left=10
Top=30
Width=20
Text="9"
DataType=2
ClearAfterEnter=1
link(onChange,9633750:doOpen,[(746,69)(746,104)(725,104)(725,125)])
}
Add(ComboBox,12544851,602,63)
{
Left=10
Top=5
Width=160
Height=21
Text="Выберите СОМ порт"
DataType=1
link(onClick,9782296:doTest,[(641,76)(641,69)])
}
Add(Hub,10926447,518,56)
{
link(onEvent1,12544851:doClear,[(587,62)(587,76)])
link(onEvent2,11701061:doEnumPorts,[])
}
Add(Edit,15300191,868,175)
{
Left=260
Top=30
Width=360
Color=-16777192
Font=[MS Sans Serif,8,1,0,1]
Ctl3D=1
WinStyle=1
Alignment=2
}
Add(Edit,5752321,868,126)
{
Left=260
Top=5
Width=360
Color=-16777192
Font=[MS Sans Serif,8,1,0,1]
Ctl3D=1
WinStyle=1
Alignment=2
}
Add(Label,12834109,98,259)
{
Left=226
Top=32
Width=33
Height=17
Color=-16777216
Font=[MS Sans Serif,8,1,0,1]
Caption="SENT"
}
Add(Label,6616782,91,266)
{
Left=197
Top=7
Width=58
Height=17
Color=-16777216
Font=[MS Sans Serif,8,1,0,1]
Caption="RECEIVED"
}
Add(RadioButton,3868795,280,329)
{
Left=400
Top=190
Width=80
Color=-16777216
Caption="Обратный"
link(onSelect,3124423:doWork3,[(319,335)])
}
Add(RadioButton,4391195,231,329)
{
Left=480
Top=190
Width=75
Color=-16777216
Selected=0
Caption="Прямой"
link(onSelect,2258711:doWork3,[(270,335)])
}
Add(Label,4661136,84,273)
{
Left=400
Top=170
Width=140
Height=17
Color=-16777216
Font=[MS Sans Serif,8,1,0,1]
Caption="Порядок выдачи байта"
}
Add(DoData,843818,336,315)
{
Data=Integer(0)
link(onEventData,1854588:doIndex,[])
link(Data,4391195:Selected,[(342,306)(328,306)(328,369)(237,369)])
}
Add(CheckBox,12072739,539,140)
{
Left=605
Top=115
Width=40
Color=-16777216
Caption="Bit0"
Point(doCaption)
link(onCheck,4696990:doWork3,[(578,146)])
}
Add(CheckBox,11814331,546,147)
{
Left=565
Top=115
Width=40
Color=-16777216
Caption="Bit1"
link(onCheck,14389340:doWork3,[(585,153)])
}
Add(CheckBox,5480298,553,154)
{
Left=525
Top=115
Width=40
Color=-16777216
Caption="Bit2"
link(onCheck,13044133:doWork3,[(592,160)])
}
Add(CheckBox,2917208,560,161)
{
Left=485
Top=115
Width=40
Color=-16777216
Caption="Bit3"
link(onCheck,16302069:doWork3,[(599,167)])
}
Add(CheckBox,8763537,567,168)
{
Left=440
Top=115
Width=40
Color=-16777216
Caption="Bit4"
link(onCheck,6067962:doWork3,[(606,174)])
}
Add(CheckBox,4446865,574,175)
{
Left=395
Top=115
Width=40
Color=-16777216
Caption="Bit5"
link(onCheck,14679896:doWork3,[(613,181)])
}
Add(CheckBox,7113734,581,182)
{
Left=350
Top=115
Width=40
Color=-16777216
Caption="Bit6"
link(onCheck,14230402:doWork3,[(620,188)])
}
Add(CheckBox,15333524,588,189)
{
Left=300
Top=115
Width=40
Color=-16777216
Caption="Bit7"
Point(doCaption)
link(onCheck,14230402:doWork2,[(627,195)(627,139)])
}
Add(Hub,7205294,427,266)
{
link(onEvent1,11994673:doNumber,[])
link(onEvent2,326861:doNumber,[(529,279)(529,272)])
}
Add(BitsToInt,326861,539,266)
{
Count=8
link(onNumber,15903735:doWork2,[(606,272)(606,356)])
link(Bit1,11130974:Var2,[])
link(Bit2,7242541:Var2,[])
link(Bit3,7344618:Var2,[])
link(Bit4,1930286:Var2,[])
link(Bit5,8872431:Var2,[])
link(Bit6,12513850:Var2,[])
link(Bit7,11976835:Var2,[])
link(Bit8,15199062:Var2,[])
}
Add(BitsToInt,11994673,455,266)
{
Count=8
link(onNumber,14551155:doWork1,[(522,272)])
link(Bit1,15199062:Var1,[(461,236)])
link(Bit2,11976835:Var1,[(468,243)])
link(Bit3,12513850:Var1,[(475,250)])
link(Bit4,8872431:Var1,[(482,257)])
link(Bit5,1930286:Var1,[(489,229)])
link(Bit6,7344618:Var1,[(496,222)])
link(Bit7,7242541:Var1,[(503,215)])
link(Bit8,11130974:Var1,[(510,208)])
}
Add(Button,7710814,469,427)
{
Left=230
Top=285
Caption="Send"
link(onClick,9499536:doString,[])
}
Add(GetIndexData,1854588,532,315)
{
link(onIndex,15903735:doWork1,[(571,321)])
link(Data1,11994673:Number,[(538,306)(461,306)])
link(Data2,326861:Number,[])
}
Add(ConvertorEx,16119209,532,371)
{
Mode=6
link(Data,1854588:Var,[])
}
Add(FormatStr,9499536,525,427)
{
Mask="%1%2"
link(onFString,13646675:doConvert,[])
link(Str1,10385775:Text,[(531,418)(475,418)])
link(Str2,16119209:Var,[])
}
Add(Label,6292940,77,280)
{
Left=375
Top=135
Width=227
Height=17
Font=[MS Sans Serif,8,1,0,1]
Caption="Побитовая установка переменной "
}
Add(Edit,10385775,469,371)
{
Left=135
Top=110
Color=12639424
Font=[MS Sans Serif,8,1,0,1]
Ctl3D=1
WinStyle=1
Text="01"
Alignment=2
}
Add(Label,1181151,70,287)
{
Left=45
Top=115
Width=84
Height=17
Font=[MS Sans Serif,8,1,0,1]
Caption="Адрес в НЕХ"
}
Add(StreamConvertor,13646675,581,427)
{
Mode=3
Symbol=""
link(onResult,4636619:doEvent1,[(634,433)(634,139)])
}
Add(Label,15157092,63,294)
{
Left=65
Top=75
Width=118
Height=17
Font=[MS Sans Serif,8,1,0,1]
Caption="первая часть посылки"
}
Add(Label,4878241,56,301)
{
Left=415
Top=80
Width=118
Height=17
Font=[MS Sans Serif,8,1,0,1]
Caption="Вторая часть посылки"
}
Add(ChildPanel,11698211,77,203)
{
}
BEGIN_SDK
Add(EditMulti,4926471,21,21)
{
}
Add(Panel,11168264,35,105)
{
Left=255
Top=75
Width=5
Height=165
}
END_SDK
Add(ChildPanel,7875375,77,154)
{
}
BEGIN_SDK
Add(EditMulti,16393232,21,21)
{
}
Add(Panel,4915002,35,105)
{
Left=35
Top=235
Width=580
Height=5
}
END_SDK
Add(EnumCOM,11701061,546,63)
{
link(onEnumPorts,12544851:doAdd,[])
}
Add(InlineCode,9782296,651,63)
{
WorkPoints=#6:doTest|
EventPoints=#5:onRes|
Code=#15:unit HiAsmUnit;|13:// Author Tad|0:|9:interface|0:|21:uses kol,Share,Debug;|0:|4:type|28: THiAsmClass = class(TDebug)|10: private|0:|9: public|4: |24: onRes : THI_Event;|51: PROCEDURE doTest(var _Data:TData; Index:Word);|0:|5: end;|0:|14:implementation|0:|29:PROCEDURE THiAsmClass.doTest;|16:var s,ss:string;|14: i:integer;|5:BEGIN|9: ss:='';|21: s:=toString(_Data);|2: |26: for i:=1 to Length(s) do|41: if s[i] in ['0'..'9'] then ss:=ss+s[i];|24: _hi_onEvent(onRes,ss);|4:END;|0:|0:|4:end.|
link(onRes,3359484:doText,[])
}
Add(HubEx,4696990,574,133)
{
Angle=2
link(onEvent,6270975:doWork1,[(410,139)])
}
Add(HubEx,14389340,581,133)
{
Angle=2
link(onEvent,4696990:doWork2,[])
}
Add(HubEx,13044133,588,133)
{
Angle=2
link(onEvent,14389340:doWork2,[])
}
Add(HubEx,16302069,595,133)
{
Angle=2
link(onEvent,13044133:doWork2,[])
}
Add(HubEx,6067962,602,133)
{
Angle=2
link(onEvent,16302069:doWork2,[])
}
Add(HubEx,14679896,609,133)
{
Angle=2
link(onEvent,6067962:doWork2,[])
}
Add(HubEx,14230402,616,133)
{
Angle=2
link(onEvent,14679896:doWork2,[])
}
Add(HubEx,15903735,567,350)
{
Angle=2
link(onEvent,14551155:doWork3,[])
}
Add(HubEx,14551155,518,350)
{
Angle=1
link(onEvent,16119209:doConvert,[(522,377)])
}
Add(GetDataEx,15199062,588,231)
{
link(Data,15333524:Checked,[])
}
Add(GetDataEx,11976835,581,238)
{
link(Data,7113734:Checked,[])
}
Add(GetDataEx,12513850,574,245)
{
link(Data,4446865:Checked,[])
}
Add(GetDataEx,8872431,567,252)
{
link(Data,8763537:Checked,[])
}
Add(GetDataEx,1930286,560,224)
{
link(Data,2917208:Checked,[])
}
Add(GetDataEx,7344618,553,217)
{
link(Data,5480298:Checked,[])
}
Add(GetDataEx,7242541,546,210)
{
link(Data,11814331:Checked,[])
}
Add(GetDataEx,11130974,539,203)
{
link(Data,12072739:Checked,[])
}
Add(HubEx,3124423,315,315)
{
link(onEvent,843818:doData,[])
}
Add(HubEx,2258711,266,315)
{
link(onEvent,3124423:doWork2,[])
}
Add(HubEx,6270975,406,266)
{
link(onEvent,7205294:doEvent1,[])
}
Add(StreamConvertor,7173929,784,175)
{
Mode=2
link(onResult,15292330:doStrCat,[])
}
Add(StreamConvertor,1654829,784,126)
{
Mode=2
Symbol=""
link(onResult,2833952:doStrCat,[])
}
Add(StrCat,15292330,826,175)
{
Str1="Из СОМ -- "
link(onStrCat,15300191:doText,[])
}
Add(StrCat,2833952,826,126)
{
Str1="В СОМ -- "
link(onStrCat,5752321:doText,[])
}
Add(Hub,6563364,399,63)
{
link(onEvent1,713062:doEvent1,[(424,69)(424,55)(158,55)(158,139)])
link(onEvent2,4621497:doWork1,[(445,76)(445,48)(508,48)])
}
Add(HubEx,4621497,504,56)
{
link(onEvent,10926447:doEvent1,[])
}
Add(EventFromData,4955705,749,322)
{
}
Add(InfoTip,5222555,658,280)
{
Info=#63:Никогда не используйте этот компонент не по прямому назначению!|
Font=[MS Sans Serif,8,1,16711935,1]
Width=225
Height=95
}

карма: 19

0
Ответов: 91
Рейтинг: 6
#13: 2021-06-06 22:40:33 ЛС | профиль | цитата
Леонид, спасибо что не бросили...
Раз в пятилетку требуется нечто такое ....
А понимания все меньше и меньше с каждым годом.
карма: 0

0
13
Сообщение
...
Прикрепленные файлы
(файлы не залиты)