
Копировщик 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 0отправляю так
start gap- 300 мкс
write gap-100 мкс
0 bit -200 мкс
1 bit -450 мкс
шлю
Код: Выделить всё
start_gapКод: Выделить всё
100 00000000 00010100 10000000 01000000 000 - 0 блок конфигпауза 100 мс вкл снова генератор
делаю паузу 1сек
;/////////////////
шлю
Код: Выделить всё
start_gapКод: Выделить всё
100 111111111 0010 1 1100 0 0000 0 0000 0 001 001 - 1 блокпауза 100 мс вкл снова генератор
делаю паузу 1сек
;///////////////////////
шлю
Код: Выделить всё
start_gapКод: Выделить всё
100 1 0 0101 0 1111 0 0111 1 0001 1 1010 0 1011 0 010 -2 блокпауза 100 мс вкл снова генератор
записать не удается
Последний раз редактировалось 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
,можешь расписать свои длительности для этих типов карт,и как точно отправлять данные,я уже все даташиты смотрел но не пойму когда делать start gap в какой момент именно,после отправки например конфига я вконце шлю паузу на 100 мс потом например вкл генератор,а через какой промежуток я могу слать данные?,если тебе несложно можешь расписать досканально как отправляешь пакеты вот что делаю я:
У вас же программа на руках, там все длительности есть. Ну или здесь посмотрите: https://habrahabr.ru/post/330710/
нужно ли делать 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
где найти даташит t5577 (ata5577??)?
Ищите Atmel-9187-RFID-ATA5577C_Datasheet
откуда Wgap 300???там быть такого не может Wgap от 64-240 мкс
В программе тоже 300? Может быть, он просто опечатался в статье.
Я читал эти статьи уже кучу раз,
Вот сделайте ровно так же, как в программах для этих статей и всё запишется. И, кстати, не надейтесь, что в даташитах будет описан механизм записи болванок со всеми подробностями. Было бы это так, копировщики клепали бы все подряд. Часто там весьма туманно написано, как же записывается болванка.
И день и ночь в пути...
Мои программки: 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,а сами этого не помните
отличие в даташите токо по Wgap.
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,а сами этого не помните
А что такое reset?
отличие в даташите токо по Wgap.
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
FieldOnподскажите еще если к примеру у меня номер карточки начинается на:
111111111 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Может нарисуете прям досканально как у вас протокол записи реализован досканально со всеми паузами,а то многое непонятно,сделал по вашей схеме ничего не пишется,пробовал не одну карточку и не один брелок em4305.
делаю так:
Код: Выделить всё
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Далее шлем все также токо теперь сначала в 5 блок
а потом в шестой блок
в самом конце делаем
Код: Выделить всё
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