|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » AutoIt » помогите с управлением COM-портом |
|
помогите с управлением COM-портом
|
Новый участник Сообщения: 6 |
Очень хотелось попробовать работу Autoit c виртуальным или физическими COM портами.
Я взял CommMG.au3 и commg.dll указанных на страничке http://www.autoitscript.com/forum/in...howtopic=45842 ссылка (http://www.mosaiccgl.co.uk/AutoItDow...et=COMMGv2.zip) Пишу утилиту обращения PC к ECU автомобиля по протоколу ISO 9141-2 с подключенным преобразователем USB-K-Line После подключения к разъему диагностики автомобиля и хост-компьютеру происходит инициализации, в виде специальной посылки. Это является простым методом для определения факта подключения. Иначе называется ('Send 0x33 (00110011) at rate of 5 baud (LSB) with a Start Bit and a Stop bit) после отправки 0x33 на скорости 5 baut, затем требуется переключить скорость работы порта на 10400 baud?, после чего начинается обмен данными с ECU автомашины Вопрос. в CommMG.au3 имеется функция _CommSendBreak(), вот описание: ;================================================================================================ ; Function Name: SendBreak($iDowTime,$iUpTime) ; NB Simulates the break signal used by some equipment to indicate the start of a sequence ; Not tested so might Not work. Any feedback welcome - PM martin on Autoit forum ; Description: sets the TX line low for $iDowTime, then sets it high for $iUpTime ; Parameters: $iDowTime - integer: the number of ms to hold the TX line down ; $iUpTime - integer: the number of ms to hold the line up for before returning ; if $iDowTime or $iUpTime is zero then does nothing and returns ; Returns: on success returns 1 ; on failure returns 0 and sets @error to ; = 1 if one of params is zero ; = 2 1 unable to use the DLL file, ; = 3 unknown "return type" from dll ; = 4 "function" not found in the DLL file. ; Notes : Not tested! ;================================================================================================ функция позволяет задавать длительность перевода линии Tx в состояние (0) или (1)....подскажите как мне эмулировать передачу данных (0x33) на скорости 5 baud.. длительность импульсов нашел в инернете..порядка 200 ms. , если я все правильно понял, то эмуляция означает следующее... 'Send 0x33 (00110011) at rate of 5 baud (LSB) with a Start Bit and a Stop bit 'Send Startbit Set K line low (0) Pause 200ms 'Now to send out 0x33 'Send out bit0 Set K line high (1) pause 200ms 'Send out bit1 Set K line low (1) pause 200ms 'Send out bit2 Set K line low (0) pause 200ms 'Send out bit3 Set K line low (0) pause 200ms 'Send out bit4 Set K line low (1) pause 200ms 'Send out bit5 Set K line low (1) pause 200ms 'Send out bit6 Set K line low (0) pause 200ms 'Send out bit7 Set K line low (0) pause 200ms 'Send Stopbit Set K line high (1) Pause 200ms можно ли это программно организовать? как вариант может поставить перемычку на DTR и использовать функцию _CommSetDTR() очень жду ваших решений.. привожу лог работы порта из другой рабочей программы COM port is opened In/out queue size 1024/512 Purge the serial port: RXABORT, RXCLEAR, TXABORT, TXCLEAR Set timeouts: ReadInterval=-1, ReadTotalTimeoutMultiplier=0, ReadTotalTimeoutConstant=0, WriteTotalTimeoutMultiplier=0, WriteTotalTimeoutConstant=5000 Baud rate 19200 RTS off DTR on Data bits=8, Stop bits=1, Parity=None Set chars: Eof=0x1A, Error=0x00, Break=0x00, Event=0x00, Xon=0x11, Xoff=0x13 Handflow: ControlHandShake=(DTR_CONTROL), FlowReplace=(), XonLimit=256, XoffLimit=256 Baud rate 10400 RTS off DTR on Data bits=8, Stop bits=1, Parity=None Set chars: Eof=0x1A, Error=0x00, Break=0x00, Event=0x00, Xon=0x11, Xoff=0x13 Handflow: ControlHandShake=(DTR_CONTROL), FlowReplace=(), XonLimit=256, XoffLimit=256 Purge the serial port: RXABORT, RXCLEAR Break on Break off Break off Break on Break on Break off Break off Break on Break on Break off U (0x55) ў (0xA2) ў¦ (0xA2A6) Baud rate 10400 RTS off DTR on Data bits=8, Stop bits=1, Parity=None Set chars: Eof=0x1A, Error=0x00, Break=0x00, Event=0x00, Xon=0x11, Xoff=0x13 Handflow: ControlHandShake=(DTR_CONTROL), FlowReplace=(), XonLimit=256, XoffLimit=256 жирным шрифтом выделил интересующий вопрос |
|
Отправлено: 10:49, 09-09-2010 |
Must AutoIt Сообщения: 3054
|
Профиль | Сайт | Отправить PM | Цитировать Код заключайте в соответствующие теги.
|
------- Отправлено: 21:31, 09-09-2010 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Новый участник Сообщения: 6
|
Профиль | Отправить PM | Цитировать Вы безусловно правы в части оформления, только код я не отправлял, представил только логическую схему и лог порта, а основной вопрос был по функциям CommMG.au3 и организации отправки значения 0x33 на скорости 5 baut.
|
Отправлено: 09:32, 10-09-2010 | #3 |
Must AutoIt Сообщения: 3054
|
Профиль | Сайт | Отправить PM | Цитировать Цитата Demka_DV:
Цитата:
Не важно код AutoIt'а это или нет, длинный текст, например тот же лог нужно заключать в тег кода. Также можно помещать в цитату, либо в тег more. Иначе пропадает желаение читать ваш пост, всё перемешано на первый взгляд, и разбирать ну никак не хочется (это же для вас не в пользу, те кто захотят помочь только из за этого могу выйти из темы и пойти дальше по своим делам ![]() |
||
------- Отправлено: 10:11, 10-09-2010 | #4 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Система - Помогите найти программу управлением включения и выкл. монитора | severagent007 | Программное обеспечение Windows | 3 | 18-03-2011 19:09 | |
Route/Bridge - [решено] Помогите!Подскажите! Существует ли свитч или хаб с USB портом(для подключения 3G) | bishopik | Сетевое оборудование | 2 | 12-11-2009 20:35 | |
Профи - помогите разобраться с удаленным управлением. | SaDen | Сетевые технологии | 3 | 17-03-2006 10:10 | |
работа с com-портом | spartan | Железо во FreeBSD | 11 | 24-02-2005 23:25 | |
Проблемы с ИК-портом | SNV | Мобильные ОС, смартфоны и планшеты | 10 | 06-11-2004 16:51 |
|