Страница 1 из 2
Считыватель RDM6300
Добавлено: 05 июл 2017, 23:15
texbez
Добрый вечер!
Вопрос к знатокам:приобрёл считыватель rfid карт 125кГц RDM6300.
Так вот сижу туплю не могу понять как код ключа сравнивать тот что записан EEPROM и тот что считывается,ну на свой-чужой.
Как делаю:беру блок приёма из uart-выход тип byte,считываю в массив( можно и без массива),из массива пишу в EEPROM. Делаю ещё один массив для чтения,а дальше не могу понять как сравнить коды ключей.
Считыватель RDM6300
Добавлено: 05 июл 2017, 23:27
rw6cm
texbez писал(а):не могу понять как сравнить коды ключей.
ссылка
Считыватель RDM6300
Добавлено: 06 июл 2017, 21:44
texbez
Спасибо за ссылку,но я это видел.
Разве если ключи хранить в массиве после сброса питания они не теряются?
В массиве не хранятся,только что проверил.Писать надо EEPROM, а EEPROM тип строка не принимает.Вывод сделал в eeprom надо писать в byte и сравнивать каждую цифру.Но код получается для этой задачи какой то большой.
Считыватель RDM6300
Добавлено: 07 июл 2017, 00:29
rw6cm
texbez писал(а):Разве если ключи хранить в массиве после сброса питания они не теряются?
Вносите ключи в массив вручную перед заливкой, и используйте как базу для сравнения.
Минус в том, что бы изменить или дополнить массив нужно пере заливать скетч.
Считыватель RDM6300
Добавлено: 07 июл 2017, 22:08
texbez
Да дело не в том как внести ключи,а в том что после сброса питания контроллера они стираются.Так как массив это по сути оперативка контроллера.
Считыватель RDM6300
Добавлено: 07 июл 2017, 22:35
pan
texbez, так при включении они снова запишутся в массив
Добавлено (07.07.2017, 22:35)
---------------------------------------------
или используйте епром как
тут
Считыватель RDM6300
Добавлено: 07 июл 2017, 23:03
rw6cm
texbez писал(а):Да дело не в том как внести ключи,а в том что после сброса питания контроллера они стираются.Так как массив это по сути оперативка контроллера.
Вы бы не философствовали, а загрузили готовый проект и посмотрели как он работает.
Занося вручную данные в массив, получаем по сути массив из констант,
которые не куда не денутся, сколько бы не сбрасывали питание.
Считыватель RDM6300
Добавлено: 09 июл 2017, 18:38
texbez
Да согласен,не разобрался.Но это мне не подходит.Да и неправильно это,чтобы поменять ключ надо перешивать контроллер,а если у меня большой проект?А насчёт "философии"-так не кто и не филосовствует,просто пытался понять с помощью "знатоков"как правильно и лучше сделать.
Ну раз вы считаете что звание генерал-лейтенанта позволяет вам с высока смотреть,ну извините куда уж нам рядовым,будем разбираться сами.
Вопрос закрыт.
Считыватель RDM6300
Добавлено: 09 июл 2017, 18:51
pan
вам всего лишь предложили один из вариантов
Считыватель RDM6300
Добавлено: 09 июл 2017, 19:01
texbez
pan спасибо за ссылку,многое прояснила.
Считыватель RDM6300
Добавлено: 09 июл 2017, 19:10
pan
по поводу массива. есть блок поиска
[spoiler=Спойлер]

[/spoiler]
нужно сделать 2 режима. режим записи карт и обычный для чтения.
при записи считываете код и пишете его в еепром. (естественно в разные ячейки, и это будет не byte явно )
при переходе в обычный режим считываете записанные коды из еепрома в массив, и сравниваете считанный код есть ли в массиве (блоком на скрине)
Считыватель RDM6300
Добавлено: 09 июл 2017, 21:16
texbez
pan писал(а):нужно сделать 2 режима. режим записи карт и обычный для чтения.
Это я понимаю
pan писал(а):и это будет не byte явно )
А в чём?В этом у меня и загвоздка,в еепром можно писать во всём кроме строк,а со строками всё получается.
Считыватель RDM6300
Добавлено: 09 июл 2017, 21:20
pan
Считыватель RDM6300
Добавлено: 09 июл 2017, 22:45
rw6cm
texbez писал(а):Вопрос закрыт.
Какие мы нежные....
Вам был дан ответ на конкретный вопрос.
rw6cm писал(а):Цитата texbez ()не могу понять как сравнить коды ключей.
ссылка
texbez писал(а):Разве если ключи хранить в массиве после сброса питания они не теряются?
Из вашего ответа понятно что вы не вникали.
Дал пояснение.
rw6cm писал(а):Вносите ключи в массив вручную перед заливкой, и используйте как базу для сравнения.
Вы опять на своей волне.
texbez писал(а):Да дело не в том как внести ключи,а в том что после сброса питания контроллера они стираются.
rw6cm писал(а):Вы бы не философствовали, а загрузили готовый проект и посмотрели как он работает.
Здесь задел ваше самолюбие.
texbez писал(а):не кто и не филосовствует,просто пытался понять с помощью "знатоков"как правильно и лучше сделать.
Ну раз вы считаете что звание генерал-лейтенанта позволяет вам с высока смотреть,ну извините куда уж нам рядовым,будем разбираться сами.
Хотите получить знание - наберитесь терпения.
п/с Была бы моя воля, эту ахинею со званиями, наградами, и т д, убрал бы с сайта с глаз долой.
Считыватель RDM6300
Добавлено: 13 июл 2017, 21:13
texbez
Вернусь к вопросу.Попытался сделать сам-выкладываю.
Почему то при выключенном режиме записи по монитору uart при считывании любого ключа шлёт 49.
И при любом ключе выход срабатывает как есть ключ.При том что записывает ключи вроде бы нормально.
Если кому интересно,может разберётесь.
Считыватель RDM6300
Добавлено: 14 июл 2017, 11:33
rw6cm
texbez писал(а):И при любом ключе выход срабатывает как есть ключ.При том что записывает ключи вроде бы нормально.
В проекте от ключа они слоги, разбитые на байты. Цельного ключа нет.
в таком режиме UART работает по байтно, принял байт, стер, принимает следующий.
Вам нужно собрать ID ключа, и только потом с ним работать.
К тому же пакет надо парсить (удалять старт/стоп бит, и не нужные пробелы)
И все равно не понимаю, в вашем проекте три ключа на один замок,
Не проще закинуть десяток ключей в массив, ( на все случаи) и не парится с этой записью.
На крайняк в EEPROMе держать (по порядковому номеру) рабочие ключи.
(если потеряли выключили из списка)
Считыватель RDM6300
Добавлено: 14 июл 2017, 13:07
Dev1
rw6cm писал(а):К тому же пакет надо парсить (удалять старт/стоп бит, и не нужные пробелы)
А зачем их удалять, если они одинаковые у всех ключей, старт 02, стоп 03? Это лишний код(что в случае с блоками вообще молчу).
Считыватель RDM6300
Добавлено: 14 июл 2017, 14:50
rw6cm
Dev1 писал(а):А зачем их удалять, если они одинаковые у всех ключей
Все бы ни чего, если бы этот код в этом проекте не конвертировался в стринг,
а в нем эти байты не распознаются, и мы встряли при сравнении, когда видимость правильная а прога ведет себя не пойми как ))
По хорошему в таком варианте надо и привязки к старт/стоп биту делать, иначе нет гарантии что мы пишем в память пакет с начала а не с середины или конца.
Да и не по фэншую ваше предложение
Считыватель RDM6300
Добавлено: 14 июл 2017, 15:07
Dev1
rw6cm писал(а):Да и не по фэншую ваше предложение
Не по фэншую это как раз:
rw6cm писал(а):код в этом проекте не конвертировался в стринг
rw6cm писал(а):По хорошему в таком варианте надо и привязки к старт/стоп биту делать, иначе нет гарантии что мы пишем в память пакет с начала а не с середины или конца.
Именно...
пысы: там еще контрольная сумма есть...
Считыватель RDM6300
Добавлено: 14 июл 2017, 16:15
rw6cm
Dev1 писал(а):пысы: там еще контрольная сумма есть...
Согласен, в идеале еще отсеивать битые пакеты, по контрольной сумме.
Но тогда будет точно Мега проект, для 100руб. игрушки это будет слишком кошерно ))