День добрый!
Есть функция инициализации портов:
При этом на порт 0 ничего не отсылается:Код:FUNCTION XferPortCheck : BOOL VAR_INPUT isadc: BOOL:=FALSE; END_VAR VAR END_VAR IF isadc THEN IF adc_com.Ready = FALSE THEN adc_p.settings.Port := 1; adc_p.settings.dwBaudRate := 57600; adc_p.settings.byParity := 0; adc_p.settings.dwTimeout := 0; adc_p.settings.byStopBits := 0; adc_p.settings.dwBufferSize := 0; adc_p.settings.dwScan := 0; adc_com(Enable:=TRUE, Settings:=adc_p.settings, Task:=OPEN_TSK); aport := 0; ELSE aport := 1; adc_com.Enable := FALSE; END_IF XferPortCheck := aport = 1; ELSE IF host_com.Ready = FALSE THEN host_p.settings.Port := 0; host_p.settings.dwBaudRate := 115200; host_p.settings.byParity := 0; host_p.settings.dwTimeout := 0; host_p.settings.byStopBits := 0; host_p.settings.dwBufferSize := 0; host_p.settings.dwScan := 0; host_com(Enable:=TRUE, Settings:=host_p.settings, Task:=OPEN_TSK); hport := 0; ELSE hport := 1; host_com.Enable := FALSE; END_IF XferPortCheck := hport = 1; END_IF
c := DWORD_TO_INT(SysComWrite(adc_com.Settings.Port, ADR(adc_p.txbuf), 4, 0));
в отладчике с всегда = 4, все ок, но в линии тишина. Порт 1 нормально работает и на прием и на передачу.
Проверялось на трех контроллерах.
Что можете посоветовать?


Ответить с цитированием

