Адаптер для программирования ATMega128

ISP адаптер для atmega128

При написании и отладке прошивки устройств на микроконтроллерах приходится часто выполнять перепрограммирование МК и периодически подключаться к нему через UART-интерфейс чтобы смотреть логи (по крайней мере, лично я предпочитаю отладку через UART-терминал). Особенностями МК ATMega128 является то, что 1) для внутрисхемного программирования он использует выводы, отличные от выводов SPI-интерфейса и
2) данный МК имеет на борту два UART-а, причем, выводы одного из них совпадают с выводами ISP-интерфейса.

Таким образом, при написании прошивки все манипуляции с устройством можно делать через один разъем для программатора.

Тестер микросхем на ATMega32

Тестер микросхем на atmega

Потребность в данном устройстве возникла у меня при сборке ретрокомпьютера Pentagon-128, когда компьютер, выполненный целиком на микросхемах мелкой логики (коих на плате пентагона порядка сотни корпусов) отказался работать после включения. После увлекательного поиска неисправности было обнаружено пять убитых микросхем. Что и побудило сделать тестер. Аппаратная часть разрабатывалась со следующими акцентами:

Совместное использование ассемблера и Си для AVR

AVR

При программировании вещей, критичных к быстродействию и размеру кода хорошо использовать ассемблер. При этом обычно не обязательно писать на нем весь код, достаточно реализовать наиболее “чувствительные” подпрограммы. Компилятор GCC и среда Atmel Studio позволяют использовать в проекте ассемблер и С одновременно. При этом возникает вопрос организации взаимодействия между подпрограммами на разных языках: вызова методов с передачей им параметров и доступа к переменным.

trolCommander 0.9.6

trolCommander file manager

Вышла новая версия файлового менеджера trolCommander, 0.9.6.

Теперь trolCommander требует Java Runtime версии не ниже 8.

Основные фичи:

  • Реализованы компактный и сокращенный режимы просмотра (см. View->Mode в главном меню)
  • Реализовано получение информации о владельце файла и его группе для unix-систем, теперь эта информация отображается в окне свойст файла
  • Иконки файлов высокого разрешения для Mac OS X
  • Поиск по хоткею в окне настроек горячих клавиш
  • Диалог группового переименования файлов - добавлена поддержка регэкспов
  • Подсветка исполняемых файлов
  • Поиск файлов - результаты поиска теперь отображаются с иконками и цветами
  • Поиск файлов - добавлены новые команды для выбранных файлов - F5 (копировать), F6 (перенести), F8 (удалить)
  • Оптимизация производительности и уменьшение потребления памяти

Генератор наклеек для клавиатуры ZX Spectrum

Генератор рисунка клавиатуры ZX Spectrum

Решил восстановить свой старый компьютер ZX Spectrum 48 и первой проблемой стала клавиатура - компьютер наглухо висел, как оказалось, из-за того, что часть клавиш оказалось замкнутой. После чего была спаяна новая кнопочная клавиатура и возник вопрос ее оформления. Было решено распечатать рисунки клавиш на листе бумаги, заламинировать его с одной стороны и приклеить к листу пластика от блистерной упаковки с другой для прочности. Однако, все попытки найти готовый рисунок клавиатуры в хорошем качестве, в цвете и подходящих размеров результата не дали. Пришлось озадачиться рисованием клавиатуры в векторном формате. Заодно был написан генератор, позволяющий настраивать размеры, отступы и цвета.

Лампа настроения: продолжение

лампа настроения avr attiny13

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

После обкатки на разных устройствах прошивка была обновлена:

  • Изменен алгоритм генерации цветов - теперь цвета более насыщенные
  • Исправлена проблема с резким переключением между цветами. Баг связан с тем, что раньше значение следующего цвета вычислялось непосредственно в процедуре прерывания и эта операция занимала слишком много времени. Теперь вычисление вынесено в главный цикл
  • Добавлена возможность использовать свой генератор псевдо-случайных чисел вместо stdlib-овского. Этим можно немного уменьшить размер прошивки в ущерб качеству случайности генеримых цветов (что, вообщем-то, не особо сказывается на работе лампы).
  • Прошивка теперь компилируется под AVR Studio 6

Индикатор температуры процессора для Mac

Mac OS CPU thermometer
Небольшая программа, показывающая текущую температуру процессора в системном трее для компьютеров на Mac OS X.

Работаем с Arduino Nano из Mac OS X

arduino nano v3

Arduino Nano v3.0 - небольшой модуль на базе микроконтроллера ATmega328P. Помимо микроконтроллера он содержит микросхему стабилизатора и преобразователь USB-UART на основе FT232RL (в оригинальной версии) либо CH340G (в китайских клонах, широко продаваемых в интернете). Вторую реализацию платы можно купить по цене около 3$ с доставкой. За эти деньги получаем весьма серьезный девайс - распаянный МК имеет на борту 32КБ флеш памяти, 2КБ ОЗУ и 1 КБ EEPROM и работает на частоте 16МГц. Также МК имеет 6 каналов аппаратного ШИМа (D3, D5, D6, D9, D10, D11), 7 каналов 10-битного АЦП (A0 - A7) и прошитый bootloader, позволяющий заливать прошивку МК через USB.

Дисплей TIC107

TIC 107 trolsoft

TIC107 - текстовый двухстрочный 16x2 дисплей с управлением по I2C-интерфейсу. Производится по заказу компании «ГАММА-Санкт-Петербург» Достоинства этого экрана - сравнительно низкая стоимость и более простое подключение и управление (если сравнивать с другими 16x2 экранами на основе контроллера HD44780). Недостаток - сложно достать. Экран управляется контроллером PCF2119

В статье приводятся исходники для работы с экраном и онлайн-конвертер для кодирования кириллических строк.

EasyEDA - редактор схем и печатных плат онлайн

EasyEDA - редактор схем и печатных плат онлайн

В поисках простой рисовалки электрических схем с возможностью экспорта в SVG набрел на весьма интересный проект - EasyEDA.

EasyEDA - это мощная бесплатная, не требующая инсталляции облачная платформа для рисования и симуляции схем, разводки печатных плат и не только. Она может использоваться на любом железе и работать под любой операционной системой - Linux, Windows или Mac OS. Все, что ей требуется - любой HTML5-совместимый браузер: Chrome, Firefox, IE, Opera, или Safari. EasyEDA - результат работы небольшой команды хакеров. Сейчас она имеет богатую библиотеку из тысяч электронных компонент (как для схем и печатных плат, так и для моделирования) и десятки тысяч примеров схем! И любой желающий может пользоваться этой библиотекой и расширять ее.

Страницы

Подписка на TrolSoft RSS