Для низкоуровневой работы с COM-портом из 1С можно использовать как встроенные процедуры ЧтениеТекста, так и компоненту MSComm.ocx. Рассмотрим пример с компонентой.
Ниже приведен пример подключения через компоненту MSComm.ocx:
НомерПорта = 5; Скорость = 2400; Компонента = Новый COMОбъект("MSCOMMLib.MSComm.1"); Компонента.CommPort = НомерПорта; Компонента.Settings = Формат(Скорость, "ЧГ=0") + ",n,8,1"; Компонента.InBufferSize = 4096; Компонента.PortOpen = Истина; Компонента.RTSEnable = Истина;
Данный код открываем соединение с COM-портом, данные, приходящие с COM-порта находятся в Компонента.Input. При чтении данных они сразу же затираются, поэтому если необходимо сначала проверить заполненность, а потом использовать, то необходимо данные поместить в переменную:
Строка = Компонента.Input; Если ЗначениеЗаполнено(Строка) Тогда ФайлОтвета = Новый ЗаписьТекста("d:\1221.txt",,,Истина); ФайлОтвета.ЗаписатьСтроку(Строка); ФайлОтвета.Закрыть(); КонецЕсли;
Данный код был установлен на обработчик ожидания с интервалом 1 секунда.