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 умеет сам устанавливать программные точки останова через запись в память, а шагание по инструкциям умеет эмулировать при помощи точек останова.

29 января 2013 г.

Самодельный программатор микроконтроллеров RL78

Надоел клубок проводов в качестве программатора. Вот решил оформить в виде законченной конструкции с заводского изготовления платой и даже корпусом (хоть каким). То что получилось можно лицезреть слева :) Внизу при помощи перемычек можно выбирать напряжение питания (5В, 3В или внешнее, по отношению к программатору) и режим обмена (одно- или двух-проводной). В верхней части линейка контактов, на которую выведены сигналы Vcc, RESET, TOOL0, TOOLTxD, TOOLRxD и GND. Справа 14-контактный разъём E1 (распиновка есть в руководстве).

10 января 2013 г.

Creating Fast, Responsive and Energy-Efficient Embedded Systems using the Renesas RL78 Microcontroller

Блуждая по сайту Renesas, наткнулся на книгу о семействе микроконтроллеров RL78. Собственно всё сказано в названии. В книге описаны как универсальные моменты, так и специфичные для данного семейства. Уровень подачи материала подойдёт для новичка, по моему мнению.


Книгу можно купить на Amazon, либо скачать электронную версию с сайта в разделе Support/Design -> Books. Для доступа к электронной версии нужно быть зарегистрированным на сайте.

Приятного чтения.