Страница 1 из 1

Двоичный код

Добавлено: 01.10.2015{, 07:44}
ROOT
Доброго времени суток.

Подскажите пожалуйста как в программе flprog передавать и считывать двоичные данные и выполнить какие то действия например если приняли (0x68,0x00,0x00,0x68) включить пин 13 или перевести в строку и отправить в ком порт 1?

Двоичный код

Добавлено: 02.10.2015{, 07:13}
Alex54
ROOT

Мне в одном проекте, надо было подстраивать цифровые потенциометры. Сначала я все делаю в программе

Протеус. Так вот этот потенциометр имеет 8 входов Цап 255 состояний. Я установил 8 счетчиков в

программе FLProg ( в ардуинке ). Каждому установил сброс. Первому 2,второму 4 и т.д. До 8 разряда.

Получился многоразрядный счетчик с параллельными выходами. Что то наподобие реального CD4040.

Где мне надо он останавливал счет и выводил заданный параметр сопротивления. Правда общий сброс я

не мог сделать. И счет был всегда в обратную сторону. Вот так я выводил двоичные данные.

Двоичный код

Добавлено: 02.10.2015{, 11:42}
scadapack
Для этого можно использовать операции с битами (чтение и запись бита).  С ними можно разбирать байт по битам или наоборот, а так же работать с битами логическими командами. В общем недостаточно данных для дельного совета. Надо бы подробнее описать, что вы хотите сделать.

Двоичный код

Добавлено: 02.10.2015{, 13:17}
Alex54
scadapack писал(а):Для этого можно использовать операции с битами (чтение и запись бита).  С ними можно разбирать байт по битам или наоборот, а так же работать с битами логическими командами. В общем недостаточно данных для дельного совета. Надо бы подробнее описать, что вы хотите сделать.
Вы по осциллографу смотрели какие импульсы выдают эти блоки чтение и запись бита, по длительности.
И как можно с ними работать. Обязательно надо по выходу счетчика ставить дешифратор.Дешифратор ставит эти импульсы в ряд, каждый имп. равен периоду тактовой частоты генератора. Выходов у дешифратора может быть любое количество. Диаграмма примерно как на реальном 564ИЕ8.9 Так как сам счетчик не
имеет выхода на цифру напрямую. И еще этот импульс делать меандром с помощью т-триггера.

Вот посмотрите маленькая прога подсчета оборотов мотора с энкондером. Там я применял этот блок только
для сброса внешнего счетчика. Импульсы очень узкие. Только и разве для сброса.

Двоичный код

Добавлено: 06.10.2015{, 09:02}
ROOT
Рахмат!!! Наша задача с делать связь между ардуино и с электросчетчиком псч 4тм 05м и Энергомера СЕ303.
Есть описание протокола ПСЧ 4тм 
                    А на
Энергомера СЕ303  только снифером 
У обоих rs485 
Считать показание 
Нужна хотя бы приблизительная направления именно в FLProg

Двоичный код

Добавлено: 06.10.2015{, 09:55}
scadapack
Гораздо проще использовать импульсный выход счётчиков "оптрон", частота импульсов которого обычно пишется на лицевой панели. За тем подсчитывать эти импульсы, умножая их на коэффициент импульсного выхода и трансформаторов тока. А вы, видимо, хотите использовать протокол передачи данных. Это на порядок сложнее задача!

Двоичный код

Добавлено: 06.10.2015{, 10:38}
ROOT
До но  это не выход нам нужен полный функционал этих УМНЫХ Изображение счётчиков.

Двоичный код

Добавлено: 06.10.2015{, 17:12}
Сергей
ROOT, не могли бы Вы описать подробней че и как там считывать по протоколу. Тоже занимаюсь аналогичным проектом. Пока принято решение использовать импульсный выход счетчика. Но для этого надо еще дисплей и менюшку соображать для ввода текущих показаний. А надо один девайс на два-четыре счетчика.

Двоичный код

Добавлено: 20.10.2015{, 08:55}
ROOT
все получилось Изображение связь с счётчиком ПСЧ и Энергомера  вот  не большой пример

Двоичный код

Добавлено: 20.10.2015{, 10:35}
ROOT
Это TX

Добавлено (20.10.2015, 10:35)
---------------------------------------------
Как ведите с помощью снифера капируем данные TX  из ПК и TX из счётчика
можно даже увидеть на самом конфигураторе эти данные 

05 01  30 30 30 30 30 30 CE 1B  это из ПК hex формате
05 это id счётчика 01 это команда на открытия порта  а  шесть 30 это  заводской пароль
а по человечески ASC . 5 счётчик  1 команда для порта и шесть нулей заводской пароль
В FLprog это реализован decimal формате (bayte)
например hex 30=asc0, decimal 48=asc0
создав  несколько переменные тип (bayte) 5 1 48 48 48 48 48 48 206  27  отправляя на uart  получаем ответ  Изображение

если конечно настроен bod 9600, 19200 и.т.д