MSP430GXXXX timerA UART v1.1

Кроме того, добавлена функция UART_DefaultTimerConfig(), выполняющая настройку тактирования таймера для его использования с UART'ом. Внимание — параметры конденсатора кварца выставляются для того экземпляра, который идет с LaunchPad'ом.
В аттаче лежит демонстрационный проект для IAR.
- +2
- 24 июля 2011, 17:16
- _YS_
- 1
Файлы в топике:
TA_UART11.zip
С удовольствием поэкспериментирую с вашим модулем. Версию 1.0 я правда пропустил.
Кстати, а нет чего-то подобного для GPIO? Понимаю что вопрос глупый, но как-то пробовал писать при помощи таких вот библиотечных функций на Cortex — оказалось очень удобно.
Кстати, а нет чего-то подобного для GPIO? Понимаю что вопрос глупый, но как-то пробовал писать при помощи таких вот библиотечных функций на Cortex — оказалось очень удобно.
Версию 1.0 я правда пропустил.
Первая версия (и полное описание функций, хотя, модуль сам по себе обильно прокомментирован) лежит тут.
Кстати, а нет чего-то подобного для GPIO?
У меня — нету, не писал. Вообще говоря, то, что выложено выше, не есть API — это именно софтовая реализация UART'а с использованием блока таймера A. Я написал ее потому, что в MSP430G2231 UART'а нет, а в LaunchPad'е он разведен, вот я и поправил несоответствие. :-)
TACCR1=(TACCR1+UART_BITTIME_NORMAL) % 0xFFFF;
Замените остаток от деления на битовое И:TACCR1=(TACCR1+UART_BITTIME_NORMAL) & 0xFFFF;
IAR, позор на его седую голову, недодумывается до этого самостоятельно (это вам не GCC) и честно генерирует вызов функции DivMod16u.
Комментарии (8)
RSS свернуть / развернуть