Имя: Пароль:
1C
1С v8
MSCOMMLib
0 zerat
 
04.05.16
08:15
Всем привет! Кто подключал данную компоненту к 1С подскажите пожалуйста, почему данные по com порту приходят не так ровно и четко как через HyperTerminal?

Вот мой пример

    Попытка
        Com= Новый COMОбъект("MSCOMMLib.MSComm.1");
    Исключение
        Сообщить("Компонента не зарегистрирована!");
        Возврат Ложь;
    КонецПопытки;    
    
    Попытка
        Com.CommPort     = ПараметрыСоединения.НомерПорта_1; // COM №
        СтрокаСоединения    = "&9600,N,8,1";
        СтрокаСоединения    = СтрЗаменить(СтрокаСоединения,"&9600",ПараметрыСоединения.Скорость_1);
        Com.Settings     = СтрокаСоединения;
        Com.InBufferSize = 100;
        Com.NullDiscard  = Истина;
        Com.SThreshold     = 25;//Задает или возвращает минимальное число символов, которые можно держать в буфере передачи до тех пор, пока элемент управления Communications не установит для свойства CommEvent значение Send и не сгенерирует событие OnComm.    
        Com.RThreshold   = 22;//Задает или возвращает число символов, которые следует получить до того, как элемент управления Communications установит для свойства CommEvent значение Receive и сгенерирует событие OnComm.    
        Com.InputLen     = 0; //очищаю буфер
        Com.InputMode    = 0;
    Исключение
        Сообщить("Не удалось установить соединение");
        Возврат Ложь;
    КонецПопытки;
1 zerat
 
04.05.16
08:17
В HyperTerminal данные приходят и отображаются, строка за строкой без разбиения строки. У меня в 1С данные приходят иногда ровно иногда строка разбита...
2 Лефмихалыч
 
04.05.16
08:39
код внутри попытки не рабочий
3 zerat
 
04.05.16
08:41
(2) Всё рабочее, код не до конца скопировал

    Попытка
        Весы_1.PortOpen = Истина;
        Возврат Истина;
    Исключение
        Сообщить("Не удалось установить соединение");
        Возврат Ложь;
    КонецПопытки;
4 Лефмихалыч
 
04.05.16
08:43
(3) не рабочий. Компилятор должен на синтаксис ругаться "Ожидается символ ';'"
5 zerat
 
04.05.16
08:49
(4) просто скопировал так, а код рабочий))
6 Serginio1
 
04.05.16
09:44
Вообще работа с ком портами основана на событиях
Посмотри
http://catalog.mista.ru/public/417830/
Использование классов .Net в 1С для новичков
Есть два вида языков, одни постоянно ругают, а вторыми никто не пользуется.