Копировщик RFID-ключей T5557
Re: Копировщик RFID-ключей T5557
Вообщем нашел я ошибку,у меня не было синхронизации импульсов,суть была в том что я во внешнем прерывании делаю все,пишу на асме,дак вот при ошибке я делал сброс и остановку таймеров и выскакивал из внешнего прерывания в ожидании следующего внеш прерывания,а надо было не выскакивать из внешнего прерывани, а заново с этой точке запустить таймер))),вот так вот,терь все летает,читает все))) 
- Реклама
- da-nie
- Говорящий с текстолитом
- Сообщения: 1590
- Зарегистрирован: Вс июн 24, 2012 16:07:00
- Откуда: Лен.Обл.
- Контактная информация:
Re: Копировщик RFID-ключей T5557
Ну вот видите.
Поздравляю! 

Зачем?пишу на асме
И день и ночь в пути...
Мои программки: https://github.com/da-nie
Мои публикации: https://habr.com/ru/users/da-nie/posts/
Мои видео: https://www.youtube.com/channel/UCUroi3 ... 52g/videos
Мои программки: https://github.com/da-nie
Мои публикации: https://habr.com/ru/users/da-nie/posts/
Мои видео: https://www.youtube.com/channel/UCUroi3 ... 52g/videos
Re: Копировщик RFID-ключей T5557
затем))),фанат,даже не уговаривайте токо он все и точка,спс за помощьЗачем?
- da-nie
- Говорящий с текстолитом
- Сообщения: 1590
- Зарегистрирован: Вс июн 24, 2012 16:07:00
- Откуда: Лен.Обл.
- Контактная информация:
Re: Копировщик RFID-ключей T5557
затем))),фанат,даже не уговаривайте токо он все и точка,спс за помощь
Дело в том, что главное в разработке ПО - это управляемость разработки на любом этапе (вы это заметите, если будете писать в одиночку программы систем и комплексов (они могут иметь мегабайты исходников на Си++ - попробуйте не запутаться в них)). Не скорость работы программы, а управляемость ей. Со сложностью мы боремся методом разделяй и властвуй (другого никто не придумал). Ради этого и придумана масса концепций - языки высокого уровня, то же ООП, паттерны и прочее. Так вот, когда программа написана на ассемблере, управляемость низкая. Более того, по мере развития, такая программа быстро теряет управляемость до критических значений. Отладка, рефакторинг, доработка и развитие такой программы через некоторое время может стать невозможной. Поэтому не стоит использовать ассемблер там, где без него можно легко обойтись. Он нужен только в критических по скорости кусочках кода - ну и бывает, например, когда вообще всё по тактам должно быть строго выровнено. Во всём остальном ассемблер категорически противопоказан. У меня на работе тоже есть любитель ассемблера - как надо что-то поменять (перенести на другой контроллер или добавить новую математическую модель), так он выпадает в длительную отладку/переделку, а прошивка потом обязательно где-нибудь сбойнёт, и эта самая отладка начинает новую итерацию. А всё потому, что код непереносим и нифига не нагляден. Поэтому незамеченные ошибки в нём - это норма. А переделка такого кода - апокалипсис.
И день и ночь в пути...
Мои программки: https://github.com/da-nie
Мои публикации: https://habr.com/ru/users/da-nie/posts/
Мои видео: https://www.youtube.com/channel/UCUroi3 ... 52g/videos
Мои программки: https://github.com/da-nie
Мои публикации: https://habr.com/ru/users/da-nie/posts/
Мои видео: https://www.youtube.com/channel/UCUroi3 ... 52g/videos
Re: Копировщик RFID-ключей T5557
Знаете все верно,но нет я буду писать на asm ,не переубидите,я когда то писал на си,после того как стал писать на asm понял что это мое,я бывает пишу код неделями и фанатею.
- Реклама
Re: Копировщик RFID-ключей T5557
Подскажите пожалуйста при записи на карточку,возьмем например T5557/T5577,нужно ли ловить момент конца чтения карточки или неважно в какой момент делать START GAP на новую карту?,можешь расписать свои длительности для этих типов карт,и как точно отправлять данные,я уже все даташиты смотрел но не пойму когда делать start gap в какой момент именно,после отправки например конфига я вконце шлю паузу на 100 мс потом например вкл генератор,а через какой промежуток я могу слать данные?,если тебе несложно можешь расписать досканально как отправляешь пакеты вот что делаю я:
моя карточка :
отправляю так
start gap- 300 мкс
write gap-100 мкс
0 bit -200 мкс
1 bit -450 мкс
шлю
пауза 100 мс вкл снова генератор
делаю паузу 1сек
;/////////////////
шлю
пауза 100 мс вкл снова генератор
делаю паузу 1сек
;///////////////////////
шлю
пауза 100 мс вкл снова генератор
записать не удается
моя карточка :
Код: Выделить всё
111111111 0010 1 1100 0 0000 0 0000 0 0011 0 0101 0 1111 0 0111 1 0001 1 1010 0 1011 0start gap- 300 мкс
write gap-100 мкс
0 bit -200 мкс
1 bit -450 мкс
шлю
Код: Выделить всё
start_gapКод: Выделить всё
100 00000000 00010100 10000000 01000000 000 - 0 блок конфигделаю паузу 1сек
;/////////////////
шлю
Код: Выделить всё
start_gapКод: Выделить всё
100 111111111 0010 1 1100 0 0000 0 0000 0 001 001 - 1 блокделаю паузу 1сек
;///////////////////////
шлю
Код: Выделить всё
start_gapКод: Выделить всё
100 1 0 0101 0 1111 0 0111 1 0001 1 1010 0 1011 0 010 -2 блокзаписать не удается
Последний раз редактировалось sirha Пн мар 12, 2018 20:11:06, всего редактировалось 5 раз.
- da-nie
- Говорящий с текстолитом
- Сообщения: 1590
- Зарегистрирован: Вс июн 24, 2012 16:07:00
- Откуда: Лен.Обл.
- Контактная информация:
Re: Копировщик RFID-ключей T5557
В любой момент. 
И день и ночь в пути...
Мои программки: https://github.com/da-nie
Мои публикации: https://habr.com/ru/users/da-nie/posts/
Мои видео: https://www.youtube.com/channel/UCUroi3 ... 52g/videos
Мои программки: https://github.com/da-nie
Мои публикации: https://habr.com/ru/users/da-nie/posts/
Мои видео: https://www.youtube.com/channel/UCUroi3 ... 52g/videos
Re: Копировщик RFID-ключей T5557
Можешь ответить, я выше отредактировал,и еще вопросик нужно ли делать reset после конфига?,ты сверяешь в программе для проверки записалась ли картачка или нет старые данные другой карты номер которой будешь заносить в новую карточку с перезаписанной картой,я иммею ввиду программно?В любой момент.
- da-nie
- Говорящий с текстолитом
- Сообщения: 1590
- Зарегистрирован: Вс июн 24, 2012 16:07:00
- Откуда: Лен.Обл.
- Контактная информация:
Re: Копировщик RFID-ключей T5557
У вас же программа на руках, там все длительности есть. Ну или здесь посмотрите: https://habrahabr.ru/post/330710/,можешь расписать свои длительности для этих типов карт,и как точно отправлять данные,я уже все даташиты смотрел но не пойму когда делать start gap в какой момент именно,после отправки например конфига я вконце шлю паузу на 100 мс потом например вкл генератор,а через какой промежуток я могу слать данные?,если тебе несложно можешь расписать досканально как отправляешь пакеты вот что делаю я:
А что такое reset? Выключать питание генератора? Попробуйте и так и эдак. Здесь всё подбирается методом проб и ошибок.нужно ли делать reset после конфига?,
Я читаю карту и сверяю заданный номер со считанным.ты сверяешь в программе для проверки записалась ли картачка или нет старые данные другой карты номер которой будешь заносить в новую карточку с перезаписанной картой,я иммею ввиду программно?
И день и ночь в пути...
Мои программки: https://github.com/da-nie
Мои публикации: https://habr.com/ru/users/da-nie/posts/
Мои видео: https://www.youtube.com/channel/UCUroi3 ... 52g/videos
Мои программки: https://github.com/da-nie
Мои публикации: https://habr.com/ru/users/da-nie/posts/
Мои видео: https://www.youtube.com/channel/UCUroi3 ... 52g/videos
Re: Копировщик RFID-ключей T5557
Я читал эти статьи уже кучу раз,я поэтому и попросил написать какие у вас длительности,не подскажите где найти даташит t5577 (ata5577??)?
t5557 я нашел
по даташиту:
Sgap от 80-400 мкс
Wgap от 64-240 мкс
0 data от 128-248 мкс
1 data от 384-504 мкс
а t5577 что изменить?, получается если вообщем для обоих делать, то токо подстраиваться под Wgap 64-160 мкс (t5577) ?
кстати вот вы ссылаетесь на BolshoyK ( http://kazus.ru/forums/showthread.php?t=101565 )
вот его параметры:
Start Gap(Sgap) = 300мкс
Write Gap(Wgap) = 300мкс
0 data = 150мкс
1 data = 420мкс
откуда Wgap 300???там быть такого не может Wgap от 64-240 мкс
В таблице же четко написано от 8 до 30 умножаем их на 8 мкс - от несущей
откуда он взял 300.
t5557 я нашел
по даташиту:
Sgap от 80-400 мкс
Wgap от 64-240 мкс
0 data от 128-248 мкс
1 data от 384-504 мкс
а t5577 что изменить?, получается если вообщем для обоих делать, то токо подстраиваться под Wgap 64-160 мкс (t5577) ?
кстати вот вы ссылаетесь на BolshoyK ( http://kazus.ru/forums/showthread.php?t=101565 )
вот его параметры:
Start Gap(Sgap) = 300мкс
Write Gap(Wgap) = 300мкс
0 data = 150мкс
1 data = 420мкс
откуда Wgap 300???там быть такого не может Wgap от 64-240 мкс
В таблице же четко написано от 8 до 30 умножаем их на 8 мкс - от несущей
откуда он взял 300.
- da-nie
- Говорящий с текстолитом
- Сообщения: 1590
- Зарегистрирован: Вс июн 24, 2012 16:07:00
- Откуда: Лен.Обл.
- Контактная информация:
Re: Копировщик RFID-ключей T5557
Ищите Atmel-9187-RFID-ATA5577C_Datasheetгде найти даташит t5577 (ata5577??)?
В программе тоже 300? Может быть, он просто опечатался в статье.откуда Wgap 300???там быть такого не может Wgap от 64-240 мкс
Вот сделайте ровно так же, как в программах для этих статей и всё запишется. И, кстати, не надейтесь, что в даташитах будет описан механизм записи болванок со всеми подробностями. Было бы это так, копировщики клепали бы все подряд. Часто там весьма туманно написано, как же записывается болванка.Я читал эти статьи уже кучу раз,
И день и ночь в пути...
Мои программки: https://github.com/da-nie
Мои публикации: https://habr.com/ru/users/da-nie/posts/
Мои видео: https://www.youtube.com/channel/UCUroi3 ... 52g/videos
Мои программки: https://github.com/da-nie
Мои публикации: https://habr.com/ru/users/da-nie/posts/
Мои видео: https://www.youtube.com/channel/UCUroi3 ... 52g/videos
Re: Копировщик RFID-ключей T5557
Посмотрел я вашу программу, delay_us(420-80)-- bit1?,не пойму как вы такое получаете???,это у вас стандартно для двух типов карт??? минимум тут 384 мкс,а у вас получается 340 откуда?.я так заметил что и Wgap вы каким то чудом вначале сделали 300 мкс а по даташиту максимум 240 мкс,а потом уже сделали для 5577 и 5557 (300-80 мкс),как вы 300 то получили вначале для 5557?
А еще вы используете writeReset отправка вконце двух 00,а сами этого не помните
5557
Sgap от 80-400 мкс
Wgap от 64-240 мкс
0 data от 128-248 мкс
1 data от 384-504 мкс
5577
Sgap от 80-400 мкс
Wgap от 64-160 мкс
0 data от 128-248 мкс
1 data от 384-504 мкс
А еще вы используете writeReset отправка вконце двух 00,а сами этого не помните
отличие в даташите токо по Wgap.А что такое reset?
5557
Sgap от 80-400 мкс
Wgap от 64-240 мкс
0 data от 128-248 мкс
1 data от 384-504 мкс
5577
Sgap от 80-400 мкс
Wgap от 64-160 мкс
0 data от 128-248 мкс
1 data от 384-504 мкс
- da-nie
- Говорящий с текстолитом
- Сообщения: 1590
- Зарегистрирован: Вс июн 24, 2012 16:07:00
- Откуда: Лен.Обл.
- Контактная информация:
Re: Копировщик RFID-ключей T5557
Так два года прошло!А еще вы используете writeReset отправка вконце двух 00,а сами этого не помните
Вот вы и сделайте, как в программе - так точно работает.не пойму как вы такое получаете???
И день и ночь в пути...
Мои программки: https://github.com/da-nie
Мои публикации: https://habr.com/ru/users/da-nie/posts/
Мои видео: https://www.youtube.com/channel/UCUroi3 ... 52g/videos
Мои программки: https://github.com/da-nie
Мои публикации: https://habr.com/ru/users/da-nie/posts/
Мои видео: https://www.youtube.com/channel/UCUroi3 ... 52g/videos
Re: Копировщик RFID-ключей T5557
У меня заработало,у меня проблема была не с таймингами.Вот вы и сделайте, как в программе - так точно работает
Думаю то что у вас в программе немного не то Write Gap точно не 300 мкс для t5557 как собственно и у BolshoyK тоже 300 ,быть такого не должно,да я смотрю у вас многое совпадает с BolshoyK,а у него ошибки.
Я кое что не дописал , забыл вначале включать опкод+локбит,с моими таймингами работают четко t5557/t5577 два типа карт :
для обоих карт прописал:
Start Gap(Sgap) = 300мкс
Write Gap(Wgap) = 120мкс
0 data = 180мкс
1 data = 450мкс
а так в даташитах написано:
5557
Sgap от 80-400 мкс
Wgap от 64-240 мкс
0 data от 128-248 мкс
1 data от 384-504 мкс
5577
Sgap от 80-400 мкс
Wgap от 64-160 мкс
0 data от 128-248 мкс
1 data от 384-504 мкс
Re: Копировщик RFID-ключей T5557
Обьясните пожалуйста про em4305,обязательно ли передавать login ?,для чего это?
посмотрите пожалуйста правильно ли я отправляю байты
шлем (4,0x5f,0x80,0x01,0x00)
подскажите еще если к примеру у меня номер карточки начинается на:
111111111 0011 0 1000 1 1111 0 1000 0 0000 0
правильно ли будет отправлять его так?:
тоесть шлем наоборот? каждый байт
Не пойму как вы отсылаете FieldStop -пачка каких то импульсов,в документации вообще не написано про это там токо про 55 циклов и то что нужно сделать MOD on и всее,откуда вы взяли стоко импульсов?
Как вы шлёте 0?
ведь в даташите сказано включить поле на 18*8 мкс и отключить на 14*8,а у вас все наоборот,вы его почему то выключаете а затем включаете,я чего то непойму вы по даташиту делали??
посмотрите пожалуйста правильно ли я отправляю байты
шлем (4,0x5f,0x80,0x01,0x00)
Код: Выделить всё
FieldStop
0
0101
0010 00 1
11111010 0
00000001 1
10000000 1
00000000 0
01111011 0
FieldOn111111111 0011 0 1000 1 1111 0 1000 0 0000 0
правильно ли будет отправлять его так?:
Код: Выделить всё
11111111 0
00101100 1
10111110 0
00000000 0
01101101 0
тоесть шлем наоборот? каждый байт
Не пойму как вы отсылаете FieldStop -пачка каких то импульсов,в документации вообще не написано про это там токо про 55 циклов и то что нужно сделать MOD on и всее,откуда вы взяли стоко импульсов?
Как вы шлёте 0?
ведь в даташите сказано включить поле на 18*8 мкс и отключить на 14*8,а у вас все наоборот,вы его почему то выключаете а затем включаете,я чего то непойму вы по даташиту делали??
- da-nie
- Говорящий с текстолитом
- Сообщения: 1590
- Зарегистрирован: Вс июн 24, 2012 16:07:00
- Откуда: Лен.Обл.
- Контактная информация:
Re: Копировщик RFID-ключей T5557
Не обязательно. Это для карточек с установленным паролем. Оставлено для тех, у кого этот пароль всё-таки окажется на карте.Обьясните пожалуйста про em4305,обязательно ли передавать login ?,для чего это?
Не помню.правильно ли будет отправлять его так?:
Я ведь вам говорил, даташиту НЕ ВЕРЬТЕ!Не пойму как вы отсылаете FieldStop -пачка каких то импульсов,в документации вообще не написано про это там токо про 55 циклов и то что нужно сделать MOD on и всее,откуда вы взяли стоко импульсов?
Как вы шлёте 0?
ведь в даташите сказано включить поле на 18*8 мкс и отключить на 14*8,а у вас все наоборот,вы его почему то выключаете а затем включаете,я чего то непойму вы по даташиту делали??
И день и ночь в пути...
Мои программки: https://github.com/da-nie
Мои публикации: https://habr.com/ru/users/da-nie/posts/
Мои видео: https://www.youtube.com/channel/UCUroi3 ... 52g/videos
Мои программки: https://github.com/da-nie
Мои публикации: https://habr.com/ru/users/da-nie/posts/
Мои видео: https://www.youtube.com/channel/UCUroi3 ... 52g/videos
Re: Копировщик RFID-ключей T5557
Хорошо,я не вижу смысла в скрывании даташита,все равно эти копировщики продаются и стоят не так уж и дорого.
Тогда скажите,в программе то написано,но я плохо помню некоторые команды Си,в самом конце когда все отправлено и вы отключаете поле на 500 ms, через скоко его можно включить?
И в самом начале поле было включено?
Тогда скажите,в программе то написано,но я плохо помню некоторые команды Си,в самом конце когда все отправлено и вы отключаете поле на 500 ms, через скоко его можно включить?
И в самом начале поле было включено?
Код: Выделить всё
что было тут поле было уже включено? если рассматривать самое начало записи
FieldOn
delayms 500
..........
FeildOff
delayms 500
после этого когда можно включить поле?- da-nie
- Говорящий с текстолитом
- Сообщения: 1590
- Зарегистрирован: Вс июн 24, 2012 16:07:00
- Откуда: Лен.Обл.
- Контактная информация:
Re: Копировщик RFID-ключей T5557
Перед началом записи поле включите на некоторое время. После окончания записи поле модно включить когда угодно, после того, как запись завершилась.
И день и ночь в пути...
Мои программки: https://github.com/da-nie
Мои публикации: https://habr.com/ru/users/da-nie/posts/
Мои видео: https://www.youtube.com/channel/UCUroi3 ... 52g/videos
Мои программки: https://github.com/da-nie
Мои публикации: https://habr.com/ru/users/da-nie/posts/
Мои видео: https://www.youtube.com/channel/UCUroi3 ... 52g/videos
Re: Копировщик RFID-ключей T5557
Всмысле включите)?
я после чтения поле не отключаю,его нужно отключать перед началом записи а затем включать или как?
Может нарисуете прям досканально как у вас протокол записи реализован досканально со всеми паузами,а то многое непонятно,сделал по вашей схеме ничего не пишется,пробовал не одну карточку и не один брелок em4305.
делаю так:
Значит так чтение карточки у меня заканчивается со включенным полем дальше делаю так еще раз пишу как и вы:
Далее шлем все также токо теперь сначала в 5 блок
а потом в шестой блок
в самом конце делаем
я после чтения поле не отключаю,его нужно отключать перед началом записи а затем включать или как?
Код: Выделить всё
FieldOn
delayms 500делаю так:
Код: Выделить всё
FirstFieldStop:
rcall FieldOff
delayus 50
rcall FieldOn
delayus 100
rcall Fieldoff
delayus 320
rcall FieldOn
delayus 140
rcall Fieldoff
ret
SendOne:
rcall FieldOn
delayus 240
ret
SendZero:
rcall FieldOff
delayus 150
rcall FieldOn
delayus 140
retКод: Выделить всё
rcall FieldOn
delayms 500
rcall FirstFieldStop
rcall Send Zerro
шлем 0101
rcall Send Zerro
rcall Send One
rcall Send Zerro
rcall Send One
отправляю конфигурацию адресс 0x04 и байты 0x5f,0x80,0x01,0x00
адресс переворачиваем 0010 дальше шлем 00 и бит четности 1
дальше переворачиваем байты
шлем
0xFA бит четности 0
0x01 бит четности 1
0x80 бит четности 1
0x00 бит четности 0
дальше шлем байт четность по строкам
0x7B вконце шлем 0
rcall FieldOn
delayms 500а потом в шестой блок
в самом конце делаем
Код: Выделить всё
rcall FieldOff
delayms 500
rcall FieldOn- da-nie
- Говорящий с текстолитом
- Сообщения: 1590
- Зарегистрирован: Вс июн 24, 2012 16:07:00
- Откуда: Лен.Обл.
- Контактная информация:
Re: Копировщик RFID-ключей T5557
Как хотите. Можете отключать и снова включать. Можете не отключать. Это без разницы.Всмысле включите)?
я после чтения поле не отключаю,его нужно отключать перед началом записи а затем включать или как?
Раз уж вы взялись переделывать программу под себя и свой контроллер, то смотрите все длительности и как реализовано в программе. Там же всё это есть! А я не хочу сейчас вспоминать и заново разбираться. У меня и так дел полно на данный момент - голова и так кругом идёт. Поэтому что я мог, я рассказал, а остального не помню.Может нарисуете прям досканально как у вас протокол записи реализован досканально со всеми паузами,а то многое непонятно,сделал по вашей схеме ничего не пишется,пробовал не одну карточку и не один брелок em4305.
И день и ночь в пути...
Мои программки: https://github.com/da-nie
Мои публикации: https://habr.com/ru/users/da-nie/posts/
Мои видео: https://www.youtube.com/channel/UCUroi3 ... 52g/videos
Мои программки: https://github.com/da-nie
Мои публикации: https://habr.com/ru/users/da-nie/posts/
Мои видео: https://www.youtube.com/channel/UCUroi3 ... 52g/videos


