31 июля 2013 г.

Android 4.3 на Nexus 7 (2012) и Bluetooth Low Energy часть 2

Ранее пытался опробовать 4-ую версию Bluetooth на планшете, но ничего не вышло. С выходом Android 4.3 появилась надежда, что вторая попытка будет более успешной.

И вот, скачан Android SDK, собран проект bluetoothlegatt из каталога samples/legacy.

И....BLE is not supported

Вывод один: покупайте Nexus 7 II

30 июля 2013 г.

Графические оболочки GDB, подходящие для отладки встроенных систем

GDB - мощный отладчик, но его интерфейс может произвести не самое положительное впечатлене на новичка. Для облегчения участи разработчиков есть графические оболочки для GDB. Такие оболочки выступают посредником между вами (разработчиком) и GDB.

Для сравнения приведу пару скриншотов того, как может выглядеть отладка прошивки микроконтроллера.

Начнём с голого GDB на примере rx-elf-gdb (из пакета GNURX) в связке с rx-gdb-stub-ом:


23 мая 2013 г.

Альтернативная таблица векторов прерываний в ОЗУ для MSP430

В семействах MSP430F5x и MSP430F6x есть замечательная возможность перенести таблицу векторов прерываний в ОЗУ. Что даёт возможность по ходу выполнения программы менять обработчики прерываний.

Возможность это всегда хорошо. Но вот как это сделать максимально удобно и прозрачно? Рассмотрим на примере компилятора от IAR.

5 апреля 2013 г.

rpm пакет для libmsp430.so

Если mspdebug вам радостно сообщает "tilib: can't find libmsp430.so: libmsp430.so: cannot open shared object file: No such file or directory", у вас RHEL совместимый дистрибутив GNU/Linux (а, возможно, просто rpm-based), а желания собирать библиотеку с нуля нету, можете воспользоваться готовым пакетом libmsp430-3.2.5.4-1.el6.i686.rpm или libmsp430-3.2.5.4-1.el6.src.rpm для упрощённия сборки.

Пакеты собраны из версии slac460e, которая крайняя на данный момент.

4 апреля 2013 г.

Использование MSP430 Debug Stack под Linux

Texas Instruments выпустило MSPDS Open Source Pack. Это набор для создания отладчика/программатора для MSP430. Не обошли стороной и GNU/Linux. Так как библиотека предоставляется в исходных кодах, проблем для использования возникнуть не должно. итак, моя цель была: использовать связку mspdebug и MSP430UIF через этот самый стек.

Сборка компилятора для MSP430 под ScientificLinux

Некоторые дистрибутивы GNU/Linux имеют в своих репозиториях компилятор для микроконтроллеров MSP430. Но, к сожалению, ScientificLinux к таким не относится. Всё было бы печально, если бы не тот факт что нужные rpm пакеты есть для Fedora. А значит наша задача сводится к сборке необходимых пакетов из исходников.

7 февраля 2013 г.

Точки останова и пошаговое исполнение в GDB Stub-ах

GDB Stub - это маленькая программка (или часть большой программы), которая позволяет отлаживать прошивку МК при помощи GDB без дополнительного оборудования (аппаратных отладчиков, например, J-Link, E1 или любых других). Общение осуществляется через любой последовательный (с точки зрения ПК) интерфейс (обычно UART или TCP). Протокол очень простой. Его описание можно найти в
Debugging with GDB: Appendix E GDB Remote Serial Protocol. Stub должен уметь читать/писать регистры, читать/писать внутреннюю память, устанавливать/убирать точки останова (опционально) и выполнять программу по шагам (тоже опционально). Это минимальный набор необходимых функций. GDB умеет сам устанавливать программные точки останова через запись в память, а шагание по инструкциям умеет эмулировать при помощи точек останова.