Форум РадиоКот https://radiokot.ru/forum/ |
|
TI MSP430 Launch Pad https://radiokot.ru/forum/viewtopic.php?f=62&t=42019 |
Страница 1 из 22 |
Автор: | YS [ Вт фев 01, 2011 19:07:29 ] |
Заголовок сообщения: | TI MSP430 Launch Pad |
Собственно, вчера купил себе такую штуку : Выглядит красиво, цена сногсшибательно низка (там, где я покупал, весь набор стоил ~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. |
Автор: | YS [ Вт фев 01, 2011 20:17:25 ] |
Заголовок сообщения: | Re: TI MSP430 Launch Pad |
Небольшой апдейт - я таки заставил IAR работать с платой. Для этого пришлось под корень почистить установку CCS. Вообще, зря я ее ставил... Короче, я CCS не советую - дюже тяжелая и конфликтует с IARом, который гораздо удобнее. Таким образом, остается единственный вопрос - как прошивать эту плату даже без IAR'а? |
Автор: | Pavel V. [ Вт фев 01, 2011 22:04:44 ] |
Заголовок сообщения: | Re: TI MSP430 Launch Pad |
Прошить можно вот этим: http://kurt.on.ufanet.ru/ |
Автор: | YS [ Вт фев 01, 2011 22:48:13 ] |
Заголовок сообщения: | Re: TI MSP430 Launch Pad |
О, спасибо, попробую. |
Автор: | Satyr [ Вт фев 01, 2011 22:54:54 ] |
Заголовок сообщения: | Re: TI MSP430 Launch Pad |
CCS - это не очередно жирное и тормозное дерьмо на базе эклипса ? Лучше IAR пользовать. |
Автор: | YS [ Ср фев 02, 2011 00:06:38 ] |
Заголовок сообщения: | Re: TI MSP430 Launch Pad |
Цитата: CCS - это не очередно жирное и тормозное дерьмо на базе эклипса ? Именно. Цитата: Лучше IAR пользовать. Ну так и я о том же. Я уже разобрался, как из него общаться с платой и с удовольствием его использую. |
Автор: | shemmer [ Чт фев 17, 2011 18:32:40 ] |
Заголовок сообщения: | Re: TI MSP430 Launch Pad |
А вы не могли бы мне рассказать как прошивать мк из под иара ? Купил сей девайс, сижу разбираюсь. Не могу понять как прошивать У меня программа из под иара начинает работать только если пересбросить USB |
Автор: | YS [ Чт фев 17, 2011 19:17:27 ] | ||||
Заголовок сообщения: | Re: TI MSP430 Launch Pad | ||||
Цитата: А вы не могли бы мне рассказать как прошивать мк из под иара ? Хехе, я сам на понимание этого убил около суток. Тут надо залезть в опции проекта - "Project -> Options...", или Alt - F7. В приложении flash-мультик о настройке. После этого пишем код, компилируем, потом нажимаем "Download and debug": IAR начнет сеанс отладки в железе, параллельно загрузив код в МК. Чтобы код начал исполняться в реальном времени, надо нажать Go (1). Если отладка не нужна, можно тут же нажать Stop Debugging (2). Кнопка Leave Target Running (3) должна быть нажата (по умолчанию) - это значит, что после выхода из отладки код продолжит исполняться. Т.о., если мы просто хотим зашить код в МК, все равно придется входить в отладку...
|
Автор: | shemmer [ Пт фев 18, 2011 20:11:40 ] |
Заголовок сообщения: | Re: TI MSP430 Launch Pad |
Спасибо за ответ. Я сейчас делаю так: Нажимаю "Download and debug" и затем "Shift + F11@ ( Step Out) |
Автор: | YS [ Вс фев 27, 2011 13:48:42 ] | |||
Заголовок сообщения: | Re: TI MSP430 Launch Pad | |||
Итак, товарищи, я хочу представить на суд общественности свое творение для 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(...) нельзя вызывать в прерывании - они отслеживают флаг, который также обновляется в прерывании, и потому в случае такого вызова контроллер с большой вероятностью повиснет. UART_SetRxHandler(void (*_new_rx_handler)(unsigned char)) Устанавливает отбработчик приема. Принимает указатель на функцию вида void <имя>(unsigned char rx_byte), вызываемую после приема байта. Ее параметр - принятый байт. Функция вызывается из прерывания, потому должна быть по-возможности короткой. В архивах лежат собственно драйвер и проект-пример для IAR.
|
Автор: | Ar-Gen-Tum [ Чт апр 07, 2011 14:45:50 ] |
Заголовок сообщения: | Re: TI MSP430 Launch Pad |
Тож обзавелся LaunchPad'ом. (Вернее дали поюзать.) Для начала скомпилил в CCS пример, "моргание светодиодом". Все нормально, но ... . Сейчас пытаюсь все запустить под mspgcc4. В качестве прошивальщика - консольный вариант программы "MSPFET - FREE MSP430 flash programming utility" от kurt'а. Скомпилил еще вариант использования АЦП, найденный в сети. С soft-UARTом. Запустил в гипертерминале. Скорость передачи можно выбирать (в гипертерминале) от 9600 до 921600!!! На 4800 уже не работает. |
Автор: | Hoksmur [ Пт апр 08, 2011 04:53:37 ] |
Заголовок сообщения: | Re: TI MSP430 Launch Pad |
Мои 5 копеек: для просто заливки проекта есть внизу pull-up меню раскрывающаяся подгруппа, так там что-то вроде Write(download) active project. Это оно. |
Автор: | Desoal [ Вт апр 26, 2011 20:26:17 ] |
Заголовок сообщения: | Re: TI MSP430 Launch Pad |
А не могли бы вы написать ну или дать ссылки на различные книги по тому как писать програмы для этих контроллеров? |
Автор: | Pavel V. [ Ср апр 27, 2011 09:06:29 ] |
Заголовок сообщения: | Re: TI MSP430 Launch Pad |
Desoal писал(а): А не могли бы вы написать ну или дать ссылки на различные книги по тому как писать програмы для этих контроллеров? Так же, как для любых других. С какими платформами ты уже работал раньше? |
Автор: | Desoal [ Ср апр 27, 2011 15:04:53 ] |
Заголовок сообщения: | Re: TI MSP430 Launch Pad |
Я начинаю с этих МК. так что ни на чём до этого не работал. есть только опыт некоторый программирования но не в си |
Автор: | Pavel V. [ Ср апр 27, 2011 15:56:01 ] |
Заголовок сообщения: | Re: TI MSP430 Launch Pad |
Desoal писал(а): Я начинаю с этих МК. так что ни на чём до этого не работал. есть только опыт некоторый программирования но не в си Тогда сложнее.. Тут надо понимать какой путь обучения ближе - кто-то любит углубляться в теорию, а я, например, предпочитаю разбирать готовые примеры. То есть для меня процесс освоения новой платформы сводится к запуску среды разработки с рабочим примером и досконального изучения того, как все это работает, что значит каждая строчка кода. Для простых камней вроде AVR или MSP430 процедура запуска тривиальна, надо только разобраться как работать с регистрами, как использовать прерывания и другие аппаратные особенности, а дальше начинается простое программирование, довольно далекое от целевой платформы (если писать на С и С++). Для MSP430 главным документом является User Manual на семейство. Есть даже его перевод на русский язык от Компэла. Выбор платформы одобряю, я на них собаку съел Так что будут вопросы - пиши. |
Автор: | YS [ Ср апр 27, 2011 18:13:31 ] |
Заголовок сообщения: | Re: TI MSP430 Launch Pad |
Вот, здесь поглядите: http://we.easyelectronics.ru/tag/MSP430/ |
Автор: | Desoal [ Вт май 03, 2011 05:38:38 ] |
Заголовок сообщения: | Re: TI MSP430 Launch Pad |
Вопрос- стоит ли ставить CCS? или судя по сообщениям это полное фуфло жрущее много ресурсов и при этом почти ничего не делая? |
Автор: | Pavel V. [ Вт май 03, 2011 09:00:39 ] |
Заголовок сообщения: | Re: TI MSP430 Launch Pad |
Desoal писал(а): Вопрос- стоит ли ставить CCS? или судя по сообщениям это полное фуфло жрущее много ресурсов и при этом почти ничего не делая? А разве CCS сейчас не обычный Eclipse со спецплагином? |
Автор: | Satyr [ Вт май 03, 2011 09:19:48 ] |
Заголовок сообщения: | Re: TI MSP430 Launch Pad |
Да, ничего для начала изучения семейства плата. Всего 170р в Москве стоит. |
Страница 1 из 22 | Часовой пояс: UTC + 3 часа |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |