Проверил. Работает. Кнопки "жмакаются", как задумано в прошивке:)
Вот еще установка фьюзов для TL866A. Красным подчеркнуто то, что нужно изменить от дефолтных значений.
Вид для печати
добавил в первый пост
Действительно, клевое и качественное. Очень рада возможности узнать, как оно работает изнутри. Даже интерес к ассемблеру AVR появился. :)
Примеров в сети на Си полно, но тут случай особый.
А сканкоды клавиш "встроенных" (вне таблицы), любой желающий может изменить на свой вкус прямо в блокноте.
Нужно всего лишь список сигнатур составить по лист-файлу, для возможности правки hex файла. :)
И совсем необязательно разработчика (caro) из за такой мелочи беспокоить. :)
- - - Добавлено - - -
Вот простой пример.
Открываем в блокноте файл orion_kb.hex и ищем сигнатуру "5F3529F4". Меняем сканкод "5F" клавиши "Scroll Lock" на любой желаемый из таблицы AT Keyboard Scan Codes (Set 3). При замене сканкода 5F (Scroll Lock) на сканкод 62 (Pause), получим измененную сигнатуру "523629F4". Хотя, блин придется еще контрольную сумму блока пересчитать. :) Но эту проблему решает avr-objcopy, надо батник написать для простого использования, не требующего никаких знаний. :)
Подробности на ASM
Код:;Reversed by Trol73
.equ KEY_SCROLLLOCK = 0x5F
...
C:000062 355f cpi r21, KEY_SCROLLLOCK
C:000063 f429 brne check_code_6
[свернуть]
- - - Добавлено - - -
Это делается вот так.
Код:avr-objcopy -I ihex -O binary orkb_021.hex orkb_021.bin
Утилиту avr-objcopy можно скачать например тут, в составе ардуино студии. Или в составе продуктов Atmel. Ну или если совсем лень, то вот Вложение 58459. :)Цитата:
Первая и последняя строки несут служебную информацию. Наличие первой строки необязательно. Система AVR Studio при трансляции программы всегда добавляет в hex-файл первую строку именно такого содержания. Последняя строка — это стандартный конец для любого hex-файла.
Первый раз собирала этот замечательный контроллер на макетке.
Вот, как он выглядит
Снова резать "весь этот мгтф" и опять держать все дорожки в уме, желания совсем не возникало. Но второй контроллер был нужен, и я нарисовала плату в Sprint Layout. Не только нарисовала, но и сделала. :) Заодно поучилась ЛУТу и приготовлению блюда из розе со вкусом лимона, на кухонной плите.
Может быть кому пригодится готовое работающее решение для односторонней платы с десятью перемычками. :)
Проект для SL6 keyb-mega48.rar
Фото готовой платы
cy6, шикарно. Можно попросить выложить рисунок печатной платы в PDF?
Вот ещё до кучи мой вариант платы.
Проект в EasyEDA: https://easyeda.com/editor#id=a808db...916eaf71b7b540
https://easyeda.com/normal/RK86_keyb...-nNHZSa4KE.png
И в сборе
https://img-fotki.yandex.ru/get/2807...66d1ceb4_L.jpg
Только есть косяк в подписях выводов МК на шелкографии
Под провода без разъема? Мне кажется, тем более можно было обойтись односторонней разводкой.
Маска и шелкография красивые. Как она наносилась, через сетку? Вроде бы, другие варианты приводят к неравномерному покрытию и пятнам.
Для распечатки под ЛУТ? Вложение 58811
P.S. Кстати, AVR-ICSP разъем внутрисхемного программирования не стала делать сознательно. При наличии панельки для меги (съемный чип), это не важно.
Всё гораздо проще - платы заказывались в Китае :) Кстати, если кому надо, они выложены на барахолке.
Один большой разъём делать не стал потому, что не представлял себе его распайку, если есть какой-то стандарт. Ну и не хотелось иметь дело с двурядными разъёмами (и, как следствие, шлейфами). Тем более. что платка задумывалась как полумакетная, на все случаи жизни (например, для адаптера PC клавиатуры в XT).
А ISP разъём - он очень нужен разработчику прошивок - постоянно втыкать-вытыкать AVR-ку - совсем не дело :) Обычному пользователю - да, скорее не нужен (особенно, если у него для этого вдруг заготовлен специальный адаптер).
ткните носом в схему контроллера ps/2 клавиатуры, на плате орион-128.2 rev512.3 есть 4 резистора,конденсатор и диод.
в самом первом посте этой ветки вложен архив orkb_01dr.zip в нём всё есть.