Tuxotronic

Electronics for fun

Banana Pi

Banana Pi — семейство одноплатных компьютеров на базе микроконтроллеров с ядром ARM производства Allwinner.

Может работать под управлением различных операционных систем: Android 4.2, Android 4.4, Lubuntu, Raspbian, Debian, Fedora, Arch Linux, Gentoo, openSUSE, Berryboot, FreeBSD, OpenWrt, Slackware, Tiny Core Linux.

Оптимизация задержек

Микроконтроллеры обычно работают напрямую с физическим миром, а не только с астрактным миром цифр. А реальность не терпит поспешностей. Иногда нужно немного подождать. Казалось бы, чего уж проще - написать процедуру задержки. А ведь нет! Написать то легко, а вот каков результат будет в машинных кодах? Три команды или тридцать три?

Вот и мне потребовалось реализовать задержку в сишной программе для ATtiny2313. Микроконтроллер ресурсами не блещет, а потому каждая команда на счету.

Изучение разделяемых библиотек (so)

Для того что бы выяснить какие функции экспортирует закрытая разделяемая библиотека (.so) и на основе этого написать свой C/C++ хидер (.h) воспользуемся двумя командами из пакета binutils. Поскольку формат ELF файлов не отличается для разных архитектур, то можно даже не устанавливать кросс утилиты.

Прошивка LPC2xxx по последовательному порту

Микроконтроллеры NXP LPC2xxx имеют встроенный загрузчик, позволяющий прошивать память программ (flash) через последовательный порт (UART). Для входа в режим загрузчика во время аппаратного(?) сброса на определённых ногах микроконтроллера должны присутствовать логические уровни: Ноль на P0.14 для LPC210x Ноль на P2.10 для LPC2368, LPC2478 … LPC21ISP Наиболее оптимальный вариант для прошивки микроконтроллераконтроллера через последовательный порт - воспользоваться консольной программой lpc21isp. Сборка приложения проста и осуществляется одной командой make.

STM32 Primer

Есть в природе вот такая забавная штучка на базе микроконтроллера STM32F103. В своём составе имеет: Микроконтроллер STM32F103RBT6 на базе ядра ARMv7-M (Cortex-M3). В корпусе LQFP64. Трёхкоординатный датчик ускорения. Цветной графический дисплей 128x128 точек. Кнопка, USB-интерфейс, звукоизлучатель, светодиоды, площадки для подключения устройств расширения. Встроенный JTAG отладчик с подключением к ПК через USB. Версия OpenOCD из репозитория поддерживает встроенный отладчик под именем rlink. Если отладка на реальном железе не нужна, можно пойти другим путём и воспользоваться встроенными возможностями контроллера STM32 - загрузчиком через UART1.