key programming immo tools emergency start device программаторы ключа заводилки Кодграббер штатных охранных систем, toyota, lexus, subaru.

Граб Sher-Khan 5,6,7,8

#1
Написал граб для шерханов, в архиве дэмо прошивка. Срабатывает от брелка, пинка и удара по стеклу, 3 раза автоматически откр/закр авто, после чего нужно опять лупить по стеклу =) Да, и на следующий раз врятли сработает на одной и тойже тачке, т.к. счётчик опять начнёт с FF 00. Первый раз делаю дэмо прошивку, так что если чё не так, критикуйте... =)


Please Login or Register to view hidden text.

 

Вложения

  • 2 KB Просмотры: 195
#3
Сори, по запарке не вписал вторую кнопку, т.е. эта прошивка будет только закрывать, как допишу выложу... Сложно блин нормальную прошивку испоганить... Ну всмысле ограничить... Строго не судите, первый блин всегда комом... =)
 
#4
2exchange: доделал прошивку, теперь граб заточен под все шеханы 3,4,5,6,7,8 но я не могу выложить прошивку потому что она полностью рабочая... Написано на "С" в CodeVisionAVR не поможеш сварганить из неё дэмку чтобы я мог поделится ей с остальными, не только в закрытом разделе... А то я как начинаю переписывать, всё время чё-нить испоганю. :(
Вот схема:

Please Login or Register to view hidden text.

 
#5
что там можно испоганить?)) после того как принял и расшифровал, делай задержку шли пакет на закрытие например. впрочем можешь прислать, интересно взглянуть будет.

и ещё, приём от удара, только до 6 хана я так понял?
 
#6
2exchange: говори куда прислать, пришлю проект, схему в протеусе, посмотриш что можно сделать.
 
#7
посмотрел исходник. возникла пара вопросов)

по какому принципу работают прерывания в приёме, т.е. как время замеряешь.
и зачем ты используешь вложенные структуры?
 
#8
2exchange: Вобщем изначально прерывание настроено по falling(по нарастающему фронту) если срабатывает то я перенастраиваю на rising и включаю таймер, как только возникает прерывание rising(по спаду) я останавливаю таймер переписываю его значение в переменную timer, обнуляю таймер. и сравниваю timer с интервалами времени преамбулы. Если попали в промежуток то увеличиваю счётчик первой части преамбулы. если принято 10бит с нужным нам интервалом выставляю флаг pr_one (принята первая часть преамбулы) и начинаю пренимать вторую часть, которая состоит из 3бит, если принял, то устанавливаю флаг pr_sh(принята преамбула sher-khan), после чего перехожу к приёму пакета.
Вложенные структуры тип union использую для промежуточного хранения, использую их потому что меня так учили, по другому записывать побитно я не умею... Точнее умею в переменную, со здвигом, но не знаю как потом работать с конкретным битом в этой переменной. Если знаеш как это сделать проще, научи, буду благодарен =)
Задолбался писать.... =)
 
#9
Сварганил дэмо прошивку, большое спасибо exchange за то что подсказал как это лучше сделать! Оставил одну кнопку и 3 светодиода для индикации...
Вот описание работы:
Нажимаем на START, граб переходит в режим сканирования, как только принимает сигнал шерхана, отправляет в эфир 2 пакета (для синхронизации) open для старых шерханов, после чего через 1 секунду пакет close. Ещё через секунду посылает 2 пакета open для новых шерханов (со счётчиком), и через 1 секунду пакет close... После чего память контроллера очищается, вобщем надо снова жать на START, ждать удара по стеклу, пинка по колесу или нажатия кнопки на брелке...
+ Граб не глушит обратную связь!

Спрашиваю разрешения у администрации на публекацию этого материала в открытом разделе.


Please Login or Register to view hidden text.

 

Вложения

#10
в открытом не стоит) т.к. по идее демка беспонтовая, и для серьёзных дел собирать её не станут, а вот побаловаться - легко.
конечно компетентность некоторых людей и из закрытого раздела, лично у меня, вызывает сомнения, но всё же лучше пусть останется здесь.
 
#12
и ещё, приём от удара, только до 6 хана я так понял?[/QUOTE]========== А 7 8 на пинок берешь ????? , если да, то поясни пожалуйста устно, как преобразуешь серийник.? он не совпадает у этих ханов с бреловским. ------------------- еще вопрос по 5-6 Как получаешь два бита, которые между фрагментами команды? --------------сори прошив не смотрел.
 
#13
Если я тя правильно понял, то ты говориш про те 2 бита которые отвечают за короткое /длинное нажатие, я их принимаю я принимаю серийник + ещё пол байта, остальное дописываю, кстати прошиву, которую выкладывал, в ней gar47 нашёл баг, я его исправил, если отрою в исходниках то выложу...
 
#14
НЕТ ===серийник 22 - бита ( 1-22 ) передается базой. далее 5 бит фрагмент команды (23-27), в нем же и бит удержания кнопки. (30-34) - этот же фрагмент инверсно. далее - счетчик. ИНТЕРЕСУЮТ 28, 29 БИТЫ ОТ НАЧАЛА КОДА. Присутствуют ли они в ответе базы или вычисляются как? У каждого брела они могут быть свои, и не зависят от команды. мне их пока приходится брутить....
 
#19
Интересная тема . только жаль что не на асьме :)
и интереснее был бы исходник :) демо.
 

oleg

Well-Known Member
#20
Интересная тема . только жаль что не на асьме :)
и интереснее был бы исходник :) демо.
Специально для тебя, я выложил исходник алгоритмического кодграббера. Все на асьме как ты и просил. Демо режим делать не стал, что бы вас меньше путать =)

Please Login or Register to view hidden text.