Выглядит красиво, цена сногсшибательно низка (там, где я покупал, весь набор стоил ~207руб.).
В принципе, сейчас я уже заставил все это худо-бедно работать, однако остались некоторые вопросы, которые я и хотел бы прояснить у гуру MSP430, буде таковые заглянут в эту тему, перед остальной общественностью просто отчитаюсь о проделанной работе.
Итак, из инструментов TI обещает нам специальную версию IAR и свое творение - Code Composer Studio (CCS). Хочу сказать, что меня сразу же смутили размер и системные требования CCS - ~300Mb и не менее гигабайта свободной памяти. Куда столько для IDE кросс-компилятора? Опасения подтвердились - на поверку CCS оказалась допиленным напильником Eclipse с неимоверным количеством прикрученных свистелок и перделок, делающих работу в нем чрезвычайно неспешной на неигровом компьютере. Ну да ладно. Я решил спробовать IAR. Однако так и не смог заставить его взаимодействовать со встроенным в плату отладчиком... Хотя, кстати, обещается, что IAR тоже должен работать с ним ну просто как с родным. Но самая главная засада для меня крылась в следующем: ни в IAR, ни в CCS нет кнопки "Write Flash", "Program MCU", или что-то в таком стиле. Для загрузки программы в память МК предлагается начать сеанс внутрисхемной отладки, в процессе подготовки которого, помимо прочего, заодно записывается Flash. Не знаю как кого, но этот порядок меня категорически не устраивает - внутрисхемный отладчик мне пока совершенно не нужен. Я желаю лицезреть свой мигающий светодиод после нажатия кнопки "Write flash".
В общем, после осознания всего этого (на что ушло около полусуток) мои усилия были направлены на выяснение типа адаптера, интегрированного в отладочную плату, и поиска софтины-программатора, которая может с ним работать.
Насколько я понял, TI производит единственный тип адаптера для программирования MSP 430 - MSP-FET430UIF. И он же установлен в отладочной плате. Для него я нашел софтину от Elprotronic - Lite FET-Pro430. Вроде работает...
В результате, сейчас я действую так: компилирую написанный код в IAR, IAR генерирует файл прошивки в формате TI-TXT, который я передаю софтине от Elprotronic, в которой есть любимая мной кнопка "Write flash". Отмеченный недостаток метода - прошивка отказывается стартовать сразу, требуется передернуть USB кабель.
Теперь вопросы к гуру MSP430, буде таковые забредут сюда :
1. Я правильно понял, что в этой плате распаян адаптер, совместимый с MSP-FET430UIF, и что, вообще говоря, из програматоров для MSP430 существует только он? 2. Как заставить прошивку стартовать сразу? Галку "Reset device and start firmware" в настройках я ставил, не помогло. Прошивка стартует только после передергивания USB.
_________________ Разница между теорией и практикой на практике гораздо больше, чем в теории.
Небольшой апдейт - я таки заставил IAR работать с платой. Для этого пришлось под корень почистить установку CCS. Вообще, зря я ее ставил... Короче, я CCS не советую - дюже тяжелая и конфликтует с IARом, который гораздо удобнее.
Таким образом, остается единственный вопрос - как прошивать эту плату даже без IAR'а?
_________________ Разница между теорией и практикой на практике гораздо больше, чем в теории.
Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ очень важен контроль процесса заряда и разряда для избегания воздействия внешнего зарядного напряжения после достижения 100% заряда. Инженеры КОМПЭЛ подготовили список таких решений от разных производителей.
Компания EVE выпустила новый аккумулятор серии PLM, сочетающий в себе высокую безопасность, длительный срок службы, широкий температурный диапазон и высокую токоотдачу даже при отрицательной температуре.
Эти аккумуляторы поддерживают заряд при температуре от -40/-20°С (сниженным значением тока), безопасны (не воспламеняются и не взрываются) при механическом повреждении (протыкание и сдавливание), устойчивы к вибрации. Они могут применяться как для автотранспорта (трекеры, маячки, сигнализация), так и для промышленных устройств мониторинга, IoT-устройств.
Зарегистрирован: Вс сен 09, 2007 07:13:08 Сообщений: 58
Рейтинг сообщения:0
А вы не могли бы мне рассказать как прошивать мк из под иара ? Купил сей девайс, сижу разбираюсь. Не могу понять как прошивать У меня программа из под иара начинает работать только если пересбросить USB
После этого пишем код, компилируем, потом нажимаем "Download and debug":
IAR начнет сеанс отладки в железе, параллельно загрузив код в МК.
Чтобы код начал исполняться в реальном времени, надо нажать Go (1). Если отладка не нужна, можно тут же нажать Stop Debugging (2). Кнопка Leave Target Running (3) должна быть нажата (по умолчанию) - это значит, что после выхода из отладки код продолжит исполняться.
Т.о., если мы просто хотим зашить код в МК, все равно придется входить в отладку...
Итак, товарищи, я хочу представить на суд общественности свое творение для LaunchPad - программную реализацию UART.
Надо сказать, что я с самого начала был изумлен тем, что на отладочной плате UART присутствует, а в контроллерах, к ней прилагающихся - нет. Мне сразу же показалось, что так изумился не только я, потому я стал искать готовую программную реализацию UART под эту платформу. Я бы соврал, если бы сказал, что не нашел ничего, что-то было, был найден даже аппноут от TI на эту тему, однако, то ли я плохо искал, то ли что-то еще - но все найденное с трудом тянуло на приличную и достаточно прозрачную реализацию. Воистину, хочешь, чтобы что-то было сделано хорошо - сделай это сам. Собственно, я так и поступил.
Модуль затачивался прежде всего под LaunchPad и конкретно под MSP430G2231, хотя я не вижу препятствий для его переноса на другие МК с минимальными коррективами. Для реализации протокола используется таймер A, который должен быть сконфигурирован следующим образом: счет до 65536, тактирование от внешнего кварца 32768Гц (пример есть в заголовочном файле). В этом случае UART работает на скорости 4800bps, без четности, один стоп-бит (4800bps 8N1). В принципе, можно перестроить его на другую скорость, поменяв константы в заголовочном файле. Поскольку в MSP430G2231 таймер всего один, при реализации ставилась задача оставить одно прерывание для пользовательских целей. Побочным эфектом этого стало то, что эта реализация UART полудуплексная, т.е., может работать либо в режиме передачи, либо в режиме приема, которые нужно переключать руками. Файлы обильно прокомментированы.
Модуль содержит функции:
UART_SetTxMode(), UART_SetRxMode()
Как уже говорилось, UART полудуплексный, что стало следствием того, что одно прерывание оставлено для пользовательских нужд. Потому режимы приема/передачи надо явно переключать, что и делается этими функциями.
UART_WaitTxCpl()
Ожидание конца передачи.
UART_SendByte(unsigned char byte)
Отправка байта. Перед отправкой функция ждет конца предыдущей передачи, так что вызовы UART_SendByte(...) могут следовать непосредственно один за другим или в цикле.
UART_SendStr(char str[])
Отправка строки/массива. Строка/массив должны заканчиваться нулем (стандартное соглашение С о хранении строк).
UART_SendByte(...) и UART_SendStr(...) нельзя вызывать в прерывании - они отслеживают флаг, который также обновляется в прерывании, и потому в случае такого вызова контроллер с большой вероятностью повиснет.
Устанавливает отбработчик приема. Принимает указатель на функцию вида void <имя>(unsigned char rx_byte), вызываемую после приема байта. Ее параметр - принятый байт. Функция вызывается из прерывания, потому должна быть по-возможности короткой.
В архивах лежат собственно драйвер и проект-пример для IAR.
Вложения:
Комментарий к файлу: Пример использования в IAR msp430_uartexample.zip [143.92 KiB]
Скачиваний: 1237
Комментарий к файлу: Реализация UARTа msp430_uartdrv.zip [3.03 KiB]
Скачиваний: 1155
_________________ Разница между теорией и практикой на практике гораздо больше, чем в теории.
Тож обзавелся LaunchPad'ом. (Вернее дали поюзать.) Для начала скомпилил в CCS пример, "моргание светодиодом". Все нормально, но ... . Сейчас пытаюсь все запустить под mspgcc4. В качестве прошивальщика - консольный вариант программы "MSPFET - FREE MSP430 flash programming utility" от kurt'а. Скомпилил еще вариант использования АЦП, найденный в сети. С soft-UARTом. Запустил в гипертерминале. Скорость передачи можно выбирать (в гипертерминале) от 9600 до 921600!!! На 4800 уже не работает.
Мои 5 копеек: для просто заливки проекта есть внизу pull-up меню раскрывающаяся подгруппа, так там что-то вроде Write(download) active project. Это оно.
Карма: 4
Рейтинг сообщений: 15
Зарегистрирован: Ср май 17, 2006 18:39:01 Сообщений: 384 Откуда: Москва
Рейтинг сообщения:0
Desoal писал(а):
Я начинаю с этих МК. так что ни на чём до этого не работал. есть только опыт некоторый программирования но не в си
Тогда сложнее.. Тут надо понимать какой путь обучения ближе - кто-то любит углубляться в теорию, а я, например, предпочитаю разбирать готовые примеры. То есть для меня процесс освоения новой платформы сводится к запуску среды разработки с рабочим примером и досконального изучения того, как все это работает, что значит каждая строчка кода.
Для простых камней вроде AVR или MSP430 процедура запуска тривиальна, надо только разобраться как работать с регистрами, как использовать прерывания и другие аппаратные особенности, а дальше начинается простое программирование, довольно далекое от целевой платформы (если писать на С и С++).
Для MSP430 главным документом является User Manual на семейство. Есть даже его перевод на русский язык от Компэла.
Выбор платформы одобряю, я на них собаку съел Так что будут вопросы - пиши.
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 21
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения