melted, знаете, может у вас просто принятые данные отображаются как строка, хотя в типа byte все будет нормально? Сам натыкался на подобное, попробуйте поиграться с преобразованием(правильным отображением?) типов.
melted, знаете, может у вас просто принятые данные отображаются как строка, хотя в типа byte все будет нормально? Сам натыкался на подобное, попробуйте поиграться с преобразованием(правильным отображением?) типов.
все что я считываю из 485 я загоняю в :
buffer: ARRAY[1..256] OF BYTE;
________________
вот что в буфере было, 23 символа(должно быть 26), они меняются при каждом считывании.
138 146 37 117 178 26 221 26 5 209 138 154 10 217 130 146 138 162 146 50 229 106.
и вот на днях я подрубал расширитель I-7065D ICP DAS, тажа фигня была. По 232 (через AC3) все отлично, отсылаю команду, получаю правильный ответ. Как только перехожу на 485 , такая же ерунда начинается. В буфере появляются непонятные значения. Т.е. дело не в датчике и не в линии.
А виден ли ПЛК как slave и компьютера.
ИМХО, дело в настройках порта, выложите проект
проект запрашивал у вас мой начальник, он должен быть у ваших программистов. Вы его написали , но при отсутвиии датчика не проверили просто ))) называется ivtm.pro , если не найдете, вылажу здесь
Выложите, пожалуйста!
не могли бы вы прислать запрос и ответ как он виден перехватчиком на 485 и как он биден изнутри coDeSys (но только в бинарном виде!)
все данные я отправляю строковой переменной. в проекте указанно что я отправляю.
snd_buf:STRING(40):='$$0001RR000008B1$0D';
получить должен, типа такого:
'!0001RR7A14BE41AA6E3F422B$R'
принимает:
'‚Љ’I2$N$RўЉВєІ’љєў’2е$R'
буффер приемника у меня:
buffer: ARRAY[1..256] OF BYTE;
как я писал выше вот что в буфере получается:
138 146 37 117 178 26 221 26 5 209 138 154 10 217 130 146 138 162 146 50 229 106. (эти цифры меняются в произвольном порядке каком то постоянно).
должно быть 26 цифр, но как вы можете видеть их 23 иногда выдает 22 или 21 цуфру.
На самом деле это вся информация, которой я обладаю, и более свежей не имею возможности дать, нету контроллера пока что . Это проблемма исчезает при подключении датчика через RS 232 и буфере приемника появляются правильные цифры(цифры можно узнать если строку, которую я должен получить перевести в ASCII код).
У меня была похожая ситуация, рвал волосы, оказалось 2 прибора стоят и одновременно на запрос отвечают.
На снифере тоже мусор в ответе?
С программной точки зрения порты одинаковые. Но
DBGU (верхний) может работать только 8 бит. 1 стоп.
Жду, когда доберетесь до прибора