|
0 / 0 / 1
Регистрация: 10.06.2014
Сообщений: 59
|
||||||
Не могу достучаться до считывателя24.03.2017, 10:13. Показов 1879. Ответов 9
Метки нет (Все метки)
Купил считыватель, нужно его запрограммировать, никогда этого не делал и толком не знаю с чего начать, но кое что нашел в нете. Считыватель UART подключается при помощи usb. В диспетчере устройств его видно подключен как COM4.
0
|
||||||
| 24.03.2017, 10:13 | |
|
Ответы с готовыми решениями:
9
Не могу достучаться в сеть за микротиком |
|
0 / 0 / 0
Регистрация: 24.03.2017
Сообщений: 2
|
|
| 24.03.2017, 11:54 | |
|
Что за считыватель? Какая марка, модель. Их очень много всяких разных. Лучше сфоткай и покажи что за "зверь".
0
|
|
|
0 / 0 / 1
Регистрация: 10.06.2014
Сообщений: 59
|
|
| 24.03.2017, 13:24 [ТС] | |
|
Код выполняется на моем компьютере, устройство подключено к usb порту. Использую считыватель BRAVO
Протокол Кликните здесь для просмотра всего текста
6. Протокол обмена
Обмен между считывателем и компьютером осуществляется с помощью пере-дачи специальных команд и приема ответов. Считыватель поддерживает два режима чтения карт (режимы программируются командой 0xC1, описание которой приведено ниже): – выдача кода карты по запросу; – выдача кода карты по факту поднесения карты. Если установлен режим работы 0, то для считывания карты могут использовать-ся команды 0xC3, 0xC4 и 0xCE. Если установлен режим работы 1, то идентификатор карты выдается при ее поднесении в формате ответа на команду 0xC3. Переключение между режимами осуществляется посредством команд. Опи-сание всего набора команд и их формата приведено ниже. Скорость передачи по RS-232 программируется и может принимать значения 1200, 2400, 4800, 9600, 19200, 38400, 115200 бит/с. По умолчанию установлена ско-рость 9600 бит/с. Формат слова: 1 старт-бит, 8 бит, контроль по четности,1стоп-бит. Формат команды представлен в таблице 3. Таблица 3 – Формат команды № п/п Значение Описание 1 0x10 маркер начала сообщения 2 0xXX адрес устройства 3 0xXX код команды 4 0xXX длина параметров команды 5 [0xXX, … 0xXX] параметры команды 6 0x11 маркер конца сообщения 7 0xXX контрольная сумма сообщения Формат ответа приведен в таблице 4. Таблица 4 – Формат ответа № п/п Значение Описание 1 0x10 маркер начала сообщения 2 0xXX адрес устройства 3 0xXX код команды 4 0xXX длина результата выполнения команды 5 [0xXX, … 0xXX] код ошибки + результат выполнения команды (для команд, которые возвращают значение) 6 0x11 маркер конца сообщения 7 0xXX контрольная сумма сообщения Контрольная сумма рассчитывается как арифметическая сумма байт от маркера начала до маркера конца включительно. В случае возникновения ошибок для любых команд ответ выглядит, как показано в таблице 5. Таблица 5 – Формат ошибки № п/п Значение Описание 1 0x10 маркер начала сообщения 2 0xXX адрес устройства 3 0xXX код команды, в результате получения кото-рой возникла ошибка 4 0x01 длина ошибки 5 1, 21, 22 код ошибки 6 0x11 маркер конца сообщения 7 0xXX контрольная сумма сообщения Могут возникать следующие ошибки (в десятичном формате): 01 – неправильный код команды, неправильная длина параметров, 21 – ошибка контрольной суммы, 22 – ошибка данных (неправильный параметр, например месяц = 13). Используются следующие команды: 0xC0 – Прочитать/записать идентификатор устройства Вид запроса команды приведен в таблице 6. Если в запросе длина параметров равна 0, то производится чтение идентификатора считывателя. Вид ответа приведен в таблице 7. Если длина параметров отличная от приведенной, то выдается ошибка с кодом 1. В случае возникновения ошибки, генерируется ошибка, приведенная в табли-це 8. Будут записаны все параметры, которые соответствуют длине параметров (на-пример, при длине параметров = 3, будут записаны тип устройства и версия прошив-ки). Таблица 6 – Запрос команды 0xC0 № п/п Значение Описание 1 0x10 маркер начала сообщения 2 0xXX адрес устройства 3 0xC0 код команды 4 0, 1, 3, 6, 12, 14 длина параметров 5 0xXX тип устройства (описание приведено ниже) 6 0xXXXX версия прошивки (2 байта, начиная со старшего) 7 0-99 дата выпуска прошивки (год) 8 1-12 дата выпуска прошивки (месяц) 9 1-31 дата выпуска прошивки (день) 10 0xXXXXXXXXXXXX Серийный номер устройства (6 байт, начи-ная со старшего) 11 0xXXXX Дополнительная информация (2 байта, на-чиная со старшего) 13 0x11 маркер конца сообщения 14 0xXX контрольная сумма сообщения Таблица 7 – Ответ на команду 0xC0 № п/п Значение Описание 1 0x10 маркер начала сообщения 2 0xXX адрес устройства 3 0xC0 код команды 4 15 длина параметров 5 0 код ошибки (0 – ошибки нет) 6 0x00, 0x06 тип устройства (описание приведено ниже) 7 0xXXXX версия прошивки (2 байта, начиная со старшего) 8 0-99 дата выпуска прошивки (год) 9 1-12 дата выпуска прошивки (месяц) 10 1-31 дата выпуска прошивки (день) 11 0xXXXXXXXXXXXX Серийный номер устройства (6 байт, начи-ная со старшего) 12 0xXXXX Дополнительная информация (2 байта, на-чиная со старшего) 13 0x11 маркер конца сообщения 14 0xXX контрольная сумма сообщения Таблица 8 – Формат ошибки команды 0xC0 № п/п Значение Описание 1 0x10 маркер начала сообщения 2 0xXX адрес устройства 3 0xС0 код команды, в результате получения кото-рой возникла ошибка 4 0x01 длина ошибки 5 4 код ошибки (ошибка записи в EEPROM) 6 0x11 маркер конца сообщения 7 0xXX контрольная сумма сообщения 0xC1 – Прочитать/записать параметры устройства Вид запроса команды приведен в таблице 9. Если в запросе длина параметров равна 0, то производится чтение параметров считывателя. Вид ответа приведен в таб-лице 10. Если длина параметров больше 6, то выдается ошибка с кодом 1. В случае возникновения ошибки, генерируется ошибка, приведенная в таблице 11. Будут запи-саны все параметры, которые соответствую длине параметров (например, при длине параметров = 3, будут записаны тип устройства, его адрес и скорость обмена). Таблица 9 – Запрос команды 0xC1 № п/п Значение Описание 1 0x10 маркер начала сообщения 2 0xXX адрес устройства 3 0xC1 код команды 4 0-6 длина параметров 6 0xXX тип устройства (описание приведено ниже) 7 0xXX адрес устройства 8 0 – 7 скорость обмена (описание приведено ниже, по умолчанию 3 = 9600бит/с) 9 0xXX период чтения карты (время хранения карты после ее прочтения, 1=100мс, по умолчанию 10 = 1с) 10 0, 1 режим работы устройства (0 – выдача кода карты по запросу, 1 – выдача кода карты по факту подне-сения карты) 11 0x11 маркер конца сообщения 12 0xXX контрольная сумма сообщения Таблица 10 – Ответ на команду 0xC1 № п/п Значение Описание 1 0x10 маркер начала сообщения 2 0xXX адрес устройства 3 0xC0 код команды 4 6 длина параметров 5 0 код ошибки (0 – ошибки нет) 6 0xXX тип устройства (описание приведено ниже) 7 0xXX адрес устройства 8 0 – 7 скорость обмена (по умолчанию 3 = 9600бит/с) 9 0xXX период чтения карты (время хранения карты после ее прочтения, 1=100мс, по умолчанию 10 = 1с) 10 0, 1 режим работы устройства 11 0x11 маркер конца сообщения 12 0xXX контрольная сумма сообщения Таблица 11 – Формат ошибки команды 0xC1 № п/п Значение Описание 1 0x10 маркер начала сообщения 2 0xXX адрес устройства 3 0xС1 код команды, в результате получения кото-рой возникла ошибка 4 0x01 длина ошибки 5 4 код ошибки (ошибка записи в EEPROM) 6 0x11 маркер конца сообщения 7 0xXX контрольная сумма сообщения При перезаписи адреса необходимо учитывать, что ответ будет с новым адре-сом. Скорость изменится после выключения/включения питания. Используются следующие параметры для записи скорости обмена: 0 - 1200 бит/с; 1 - 2400 бит/с; 2 - 4800 бит/с; 3 - 9600 бит/с; 4 - 19200 бит/с; 5 - 38400 бит/с; 6 - 57600 бит/с; 7 - 115200 бит/с. Для определения типа устройства используются параметры приведенные ниже: 0 – Тип не определен; 6 – Контрольный считыватель СBK-01 с интерфейсом RS232, предназначенный для считывания карт совместимых с Em-Marin H4001 (125кГц); 7 – Контрольный считыватель СBK-01TM с интерфейсом RS232, предназначен-ный для считывания ключей Touch Memory; 8 - контрольный считыватель c интерфейсом USB, предназначенный для считы-вания карт совместимых с Em-Marin H4001 (125кГц); 9 - контрольный считыватель c интерфейсом USB, предназначенный для считы-вания ключей Touch Memory; 0xC2 – Прочитать параметры устройства Команда используется только для чтения параметров. Формат команды пред-ставлен в таблице 3. Длина параметров в запросе всегда равна 0 (параметры не пере-даются). Формат ответа аналогичен формату команды 0xC2, приведенному в таблице 12. Единственное отличие: код команды = 0xC2. 0xC3 – Прочитать состояние устройства Команда используется для чтения состояния устройства. Формат команды пред-ставлен в таблице 3. Длина параметров в запросе всегда равна 0 (параметры не пере-даются). Если есть прочитанная карты, то вид ответа показан в таблице 12, если нет, то в таблице 13. Во избежание потери идентификатора прочитанной карты, учитывать, что период опроса считывателя, должен быть меньше, чем период чтения карты. Таблица 12 – Ответ 1 на команду 0xC3 № п/п Значение Описание 1 0x10 маркер начала сообщения 2 0xXX адрес устройства 3 0xC3 код команды 4 8 длина параметров 5 0 код ошибки (0 – ошибки нет) 6 0x80 состояние устройства (0x80 – прочитана карта) 7 0xID0…0xID5 идентификатор карты (5 байт, начиная с младшего) 8 0x00 старший байт идентификатора (равен 0x00 для со-вместимости с ключами Touch Memory) 9 0x11 маркер конца сообщения 10 0xXX контрольная сумма сообщения Таблица 13 – Ответ 2 на команду 0xC3 № п/п Значение Описание 1 0x10 маркер начала сообщения 2 0xXX адрес устройства 3 0xC3 код команды 4 2 длина параметров 5 0 код ошибки (0 – ошибки нет) 6 0x00 состояние устройства (0x00 – нет прочитаной карты) 7 0x11 маркер конца сообщения 8 0xXX контрольная сумма сообщения 0xC4, 0xCE – Прочитать состояние устройства Команда используется для чтения карты из памяти считывателя. Формат коман-ды представлен в таблице 3. Длина параметров в запросе всегда равна 0 (параметры не передаются). Если есть прочитанная карта, то вид ответа показан в таблице 14, ес-ли нет, то в таблице 15. Таблица 14 – Ответ на команду 0xC4, 0xCE № п/п Значение Описание 1 0x10 маркер начала сообщения 2 0xXX адрес устройства 3 0xС4, 0xСE код команды 4 7 длина параметров 5 0 код ошибки (0 – ошибки нет) 6 0xID0…0xID5 идентификатор карты (5 байт, начиная с младшего) 7 0x00 старший байт идентификатора (равен 0x00 для со-вместимости с ключами Touch Memory) 8 0x11 маркер конца сообщения 9 0xXX контрольная сумма сообщения Таблица 15 – Формат ошибки команды 0xC4, 0xCE № п/п Значение Описание 1 0x10 маркер начала сообщения 2 0xXX адрес устройства 3 0xС4, 0xСE код команды 4 0x01 длина ошибки 5 20 код ошибки (нет прочитанной карты) 6 0x11 маркер конца сообщения 7 0xXX контрольная сумма сообщения Я так понял что адрес устройства можно определить в диспетчере устройств. Выбираем порт в диспетчере устройств, потом сведения и выбираем адресс. Добавлено через 2 минуты Мой адресс устройства 00000002
0
|
|
|
0 / 0 / 1
Регистрация: 10.06.2014
Сообщений: 59
|
||||||
| 24.03.2017, 13:50 [ТС] | ||||||
|
Хорошо, вот еще один пример работы с данным считывателем. Данные я здесь тоже не принимаю.
0
|
||||||
|
[Bicycle Reinventor]
|
|
| 24.03.2017, 18:58 | |
|
Для начала взяли бы любой терминал rs-232 (например) и попробовали бы связаться с устройством "вручную", посредством посылки пакетов из терминала.
Когда научитесь управлять устройством вручную, тогда уже можно будет тоже самое сделать программно.
0
|
|
|
0 / 0 / 1
Регистрация: 10.06.2014
Сообщений: 59
|
||||||
| 28.03.2017, 16:34 [ТС] | ||||||
|
Достучался к usb и приходят данные:
0
|
||||||
|
0 / 0 / 1
Регистрация: 10.06.2014
Сообщений: 59
|
|
| 29.03.2017, 14:12 [ТС] | |
|
Возможно что под windows7 x64 где-то стоит запрет на прием и передачу?
Добавлено через 23 секунды Дело в том что это устройство я открыть могу и даже послать данные, но получить не получается. Такая же ситуация с программой Terminal. Там я устанавливаю настройки, открываю порт, вижу что данные передаются(в строке состояния написано порт открыт, Тх постоянно меняется, но Rx постоянно ноль). Такая же ситуация если установить DTR, RTS.
0
|
|
|
0 / 0 / 0
Регистрация: 24.03.2017
Сообщений: 2
|
|
| 29.03.2017, 14:39 | |
|
dodik78781, Переустанови винду, может поможет.
0
|
|
|
0 / 0 / 1
Регистрация: 10.06.2014
Сообщений: 59
|
|
| 28.04.2017, 10:11 [ТС] | |
|
Продал считыватель, уже не нужно. Всем спасибо.
0
|
|
| 28.04.2017, 10:11 | |
|
Помогаю со студенческими работами здесь
10
Не могу достучаться до Oracle'a из Delphi Не могу достучаться до MPU-6000 Не могу достучаться до свойств объекта Не могу достучаться к элементам класса Variant
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога
Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip
На первой гифке отладочные линии отключены, а на второй включены:. . .
|
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога
Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11680&d=1772460536
Одним из. . .
|
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
|
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
|
|
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
|
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога
Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
|
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование
. \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json>
Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом.
# Check if. . .
|
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так:
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347
Основана на STM32F303RBT6.
На борту пять. . .
|