Двоичный код
- ROOT
- Рядовой
- Сообщения: 6
- Зарегистрирован: 21 сен 2015, 06:53
- Откуда: Bishkek
- Контактная информация:
Двоичный код
Доброго времени суток.
Подскажите пожалуйста как в программе flprog передавать и считывать двоичные данные и выполнить какие то действия например если приняли (0x68,0x00,0x00,0x68) включить пин 13 или перевести в строку и отправить в ком порт 1?
Подскажите пожалуйста как в программе flprog передавать и считывать двоичные данные и выполнить какие то действия например если приняли (0x68,0x00,0x00,0x68) включить пин 13 или перевести в строку и отправить в ком порт 1?
Shadow
- Alex54
- Сержант
- Сообщения: 281
- Зарегистрирован: 06 сен 2015, 09:06
- Откуда: Москва
- Поблагодарили: 1 раз
Двоичный код
ROOT
Мне в одном проекте, надо было подстраивать цифровые потенциометры. Сначала я все делаю в программе
Протеус. Так вот этот потенциометр имеет 8 входов Цап 255 состояний. Я установил 8 счетчиков в
программе FLProg ( в ардуинке ). Каждому установил сброс. Первому 2,второму 4 и т.д. До 8 разряда.
Получился многоразрядный счетчик с параллельными выходами. Что то наподобие реального CD4040.
Где мне надо он останавливал счет и выводил заданный параметр сопротивления. Правда общий сброс я
не мог сделать. И счет был всегда в обратную сторону. Вот так я выводил двоичные данные.
Мне в одном проекте, надо было подстраивать цифровые потенциометры. Сначала я все делаю в программе
Протеус. Так вот этот потенциометр имеет 8 входов Цап 255 состояний. Я установил 8 счетчиков в
программе FLProg ( в ардуинке ). Каждому установил сброс. Первому 2,второму 4 и т.д. До 8 разряда.
Получился многоразрядный счетчик с параллельными выходами. Что то наподобие реального CD4040.
Где мне надо он останавливал счет и выводил заданный параметр сопротивления. Правда общий сброс я
не мог сделать. И счет был всегда в обратную сторону. Вот так я выводил двоичные данные.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Последний раз редактировалось Alex54 02 окт 2015, 08:09, всего редактировалось 1 раз.
С Уважением Alex
- scadapack
- Рядовой
- Сообщения: 83
- Зарегистрирован: 07 сен 2015, 05:18
- Откуда: Степногорск
- Имя: Вячеслав
- Благодарил (а): 1 раз
Двоичный код
Для этого можно использовать операции с битами (чтение и запись бита). С ними можно разбирать байт по битам или наоборот, а так же работать с битами логическими командами. В общем недостаточно данных для дельного совета. Надо бы подробнее описать, что вы хотите сделать.
- Alex54
- Сержант
- Сообщения: 281
- Зарегистрирован: 06 сен 2015, 09:06
- Откуда: Москва
- Поблагодарили: 1 раз
Двоичный код
Вы по осциллографу смотрели какие импульсы выдают эти блоки чтение и запись бита, по длительности.scadapack писал(а):Для этого можно использовать операции с битами (чтение и запись бита). С ними можно разбирать байт по битам или наоборот, а так же работать с битами логическими командами. В общем недостаточно данных для дельного совета. Надо бы подробнее описать, что вы хотите сделать.
И как можно с ними работать. Обязательно надо по выходу счетчика ставить дешифратор.Дешифратор ставит эти импульсы в ряд, каждый имп. равен периоду тактовой частоты генератора. Выходов у дешифратора может быть любое количество. Диаграмма примерно как на реальном 564ИЕ8.9 Так как сам счетчик не
имеет выхода на цифру напрямую. И еще этот импульс делать меандром с помощью т-триггера.
Вот посмотрите маленькая прога подсчета оборотов мотора с энкондером. Там я применял этот блок только
для сброса внешнего счетчика. Импульсы очень узкие. Только и разве для сброса.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Последний раз редактировалось Alex54 02 окт 2015, 13:58, всего редактировалось 1 раз.
С Уважением Alex
- ROOT
- Рядовой
- Сообщения: 6
- Зарегистрирован: 21 сен 2015, 06:53
- Откуда: Bishkek
- Контактная информация:
Двоичный код
Рахмат!!! Наша задача с делать связь между ардуино и с электросчетчиком псч 4тм 05м и Энергомера СЕ303.
Есть описание протокола ПСЧ 4тм
А на
Энергомера СЕ303 только снифером
У обоих rs485
Считать показание
Нужна хотя бы приблизительная направления именно в FLProg
Есть описание протокола ПСЧ 4тм
А на
Энергомера СЕ303 только снифером
У обоих rs485
Считать показание
Нужна хотя бы приблизительная направления именно в FLProg
Shadow
- scadapack
- Рядовой
- Сообщения: 83
- Зарегистрирован: 07 сен 2015, 05:18
- Откуда: Степногорск
- Имя: Вячеслав
- Благодарил (а): 1 раз
Двоичный код
Гораздо проще использовать импульсный выход счётчиков "оптрон", частота импульсов которого обычно пишется на лицевой панели. За тем подсчитывать эти импульсы, умножая их на коэффициент импульсного выхода и трансформаторов тока. А вы, видимо, хотите использовать протокол передачи данных. Это на порядок сложнее задача!
- Сергей
- Лейтенант
- Сообщения: 578
- Зарегистрирован: 31 авг 2015, 15:06
- Имя: Сергей
- Контактная информация:
Двоичный код
ROOT, не могли бы Вы описать подробней че и как там считывать по протоколу. Тоже занимаюсь аналогичным проектом. Пока принято решение использовать импульсный выход счетчика. Но для этого надо еще дисплей и менюшку соображать для ввода текущих показаний. А надо один девайс на два-четыре счетчика.
- ROOT
- Рядовой
- Сообщения: 6
- Зарегистрирован: 21 сен 2015, 06:53
- Откуда: Bishkek
- Контактная информация:
Двоичный код
все получилось
связь с счётчиком ПСЧ и Энергомера вот не большой пример

У вас нет необходимых прав для просмотра вложений в этом сообщении.
Shadow
- ROOT
- Рядовой
- Сообщения: 6
- Зарегистрирован: 21 сен 2015, 06:53
- Откуда: Bishkek
- Контактная информация:
Двоичный код
Это 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 и.т.д
Добавлено (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 и.т.д
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Shadow
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 4 гостя