USB кодграббер: Кодграббер для ноутбука под StarLine и KeeLoq

  • Автор темы \kout
  • Дата начала
  • Просмотров 4046 Просмотров

\kout

Местный
29
102
18 Май 2017
Предлагаю вашему вниманию новый проект, который в первую очередь является универсальным USB программатором для микроконтроллеров серии AVR, небольшой макетной платой, к которой вы сможете подключить любые устройства, включая датчики, приемопередатчики и т.д., а так же средством связи МК и ПК по USB интерфейсу.
Для просмотра ссылки Войди или Зарегистрируйся
С помощью этого программатора вы сможете загружать прошивки в большинство мк, а все, что вам понадобится, это USB порт компьютера, никаких вспомогательных микроконтроллеров для прошивки не нужно, в схеме заложен принцип: собрал и работай. В комплекте с проектом есть все необходимые файлы для начала работы, а так же две демонстрационные программы, кодграббер – анализатор и программа для управления проигрывателем Winamp с помощью пульта от автомобильной сигнализации.

Итак, что необходимо для его сборки

Установочные компоненты:

Разъем USBB-1J

Две линейки PLS-10

Одна линейка PLD-12

Тактовая кнопка

6 джамперов

Панелька DIP-20

Микроконтроллер atmel attiny2313

Вместо линеек PLS-10 и PLD-12, можно взять одну PLS-40, ее вполне хватит.

SMD компоненты:

Микросхема FT232RL

Резистор 0 kOm, 1шт (типоразмер 1206)

Резистор 10 kOm, 1шт (типоразмер 1206)

Резистор 1,6 kOm, 1шт (типоразмер 1206)

Конденсатор 0.01 uF, 2 шт (типоразмер 1206)

Конденсатор 47 uF, 1 шт (типоразмер A)

Cветодиод (типоразмер 1206)

В архиве с проектом в папке layout находится два файла в формате Для просмотра ссылки Войди или Зарегистрируйся (все уже отзеркалено и подготовлено к печати), plata.lay это печатная плата программатора, starline-rx.lay это переходник для трансивера из пульта Starline, что бы его можно было просто накидывать на устройство вот таким образом:

Для просмотра ссылки Войди или ЗарегистрируйсяДля просмотра ссылки Войди или Зарегистрируйся

При этом никаких проблем не составит подключить к схеме любой приемник и передатчик, например RR10:

Для просмотра ссылки Войди или Зарегистрируйся

Сборка устройства достаточно простая, т.к. используется односторонний монтаж, главное качественно сделать печатную плату, ЛУТом у меня получилось вот так: Для просмотра ссылки Войди или ЗарегистрируйсяДля просмотра ссылки Войди или Зарегистрируйся

Дорожки и контактные площадки достаточно тонкие, поэтому лудить лучше в сплаве Розе, что бы лишний раз не перегревать плату. Все отверстия 0.9 мм, отверстия крепления USB разъема 2.0 мм. Порядок сборки такой: когда плата залужена, сперва нужно запаять SMD компоненты, затем выводные и разъем USB. Затем установить микроконтроллер ATtiny2313 и накинуть 6 джамперов(которые необходимы на случай если понадобится полностью отвязать мк от микросхемы FTDI). А если использовать соответствующий переходник, то получается USB флешка.

Далее подключаем девайс к компьютеру обычным USB кабелем от принтера, система должна отреагировать сообщением, что найдено новое оборудование. В архиве проекта есть фирменный драйвер, который поддерживает кучу операционных систем, на случай если скачивание с официального сайта будет затруднено (папка driver\CDM20814_WHQL_Certified), или просто скачайте драйвер с сайта производителя: Для просмотра ссылки Войди или Зарегистрируйся После установки драйвера устройство готово к работе. Заходите в папку \prog\ и запускайте файл attiny2313.cmd На экране быстро побегут различные прогрессбары, если их нет, значит где-то косяк при сборке схемы. После этого заходим в папку soft, там находится две программы для Windows (возможно с помощью wine запустятся и под nix’ами, пока еще не проверил), которые сделаны в среде попсовой Visual Studio 98 (Visual Basic 6.0) включая исполняемые .exe файлы и готовые для компиляции проекты, а так же полностью откоментированные исходники! Собственно первая, программа Grab.

Для просмотра ссылки Войди или Зарегистрируйся

При запуске программы устройство должно быть подключено к компьютеру. Заходим в меню «порт», и выбираем тот последовательный порт, на котором у нас находится девайс, это можно посмотреть в диспетчере устройств:

Для просмотра ссылки Войди или Зарегистрируйся

После того когда порт выбран, программа автоматически становится на прием, если конечно ресивер подключен к схеме. В списке главного окна будут в реальном времени отображаться все пакеты кодировки старлайн из эфира. Так же доступно несколько фильтров для удобства просмотра: фильтр по серийному номеру пульта и фильтр повторных пакетов, а в меню порт доступна функция паузы приема, а та же функция запуска глушилки. Когда в списке есть пакеты, то кликнув на любой пакет, вы сможете увидеть его в двоичном виде, и в раскадровке по HOP/FIX/BUT частям. Если программа обнаруживает две последовательные посылки, то она автоматически подставляет их в соответствующие поля, после чего доступна функция выброса пакетов в эфир. Жмем кнопку – машина открывается/закрывается. Так же программа позволяет вести лог-файл, в котором фиксируется дата и время приема пакета, так что можно уехать в универ/на работу, а девайс сграбит все тачки во дворе.

Вторая программа позволяет управлять популярным проигрывателем Winamp с пульта от автомобильной сигнализации:

Для просмотра ссылки Войди или Зарегистрируйся
А так же позволяет выполнить системную команду или запустить файл. Работает крайне просто: откройте программу и выберите порт на котором проинициализирован девайс, затем кликаем по кнопкам «обучить» и жмем кнопки пульта от старлайна, в ответ видим как программа вписывает серийник и кнопку в соответствующие поля окошка. Затем жмем записанные кнопки и радуемся новому ПДУ которым не надо целиться в окошко ИК приемника, и который будет работать хоть из кухни )) На фотке программа обучена пультом от сигнализации томагавк 9030(кодировка старлайн).

Так же можно просто открыть обычный виндовый Hyper Terminal (меню пуск-программы>стандартные>связь>hyper terminal), там вводим любое имя и выбираем конфигурацию порта: 9600 8 n 1, без управления потоком.

После запуска в терминале доступны следующие команды: STARLINE, GLUSHILKA, «?»

В обычном режиме, в терминал будут сыпаться все пакеты из эфира в шестнадцатиричном виде, так же можно выбросить любой пакет в эфир командой STARLINE <пакет>, где <пакет> — 64 бита данных в HEX виде. Например STARLINE 11223344AABBCCDD выбросит в эфир указанный пакет после нажатия клавиши Enter. Пример работы:

Для просмотра ссылки Войди или Зарегистрируйся

Команда GLUSHILKA начинает выдавать помеху в эфир, до тех пор, пока в порт не поступит какая-либо информация, отключить глушилку можно например нажатием клавиши Enter. Команда ? выдаст на экран немного текстовой информации, а так же версию программы.

Программатор

При необходимости этот программатор позволяет прошивать/читать большинство микроконтроллеров серии Atmel AVR, при этом для программирования мкTiny 13, 45, 85, 2313, 4313 и т.п. достаточно просто установить их в программатор и прочитать/записать. Для работы с остальными микроконтроллерами, достаточно соединить программатор в соответствии с даташитом на микроконтроллер, основные линии(распиновка) на фото:

Для просмотра ссылки Войди или Зарегистрируйся

Чтение прошивки микроконтроллера с помощью данного программатора:

avrdude.exe -p t2313 -c ftbb -P ft0 -U flash:r:flash.txt:i
где,

-p — тип микроконтроллера в соответствии с конфигом avrdude
-c — тип программатора, в данном случае битбанг
-P — номер фтди(в порядке подключения), не путайте с номером виртуального ком-порта
-U — действие, в данном случае читать флеш-память и записывать в формате intel hex

Соответственно после запуска прошивка будет находиться в файле flash.txt

Скачать все одним архивом: Для просмотра ссылки Войди или Зарегистрируйся

P.s простите за прошлую мою статью, вместо нее должна быть эта статья!