Pull to refresh

Comments 18

Еще можно использовать компилятор Keil и Visual Studio (для отладки можно использовать платный плагин)
Очень уж специфический интерфейс ICDI + нормальной среды разработки толком нет. CCS — это медленный слонопотам, пробовал, не понравилось. А открытого тулчейна как для MSP430 нет? а то можно было бы прикрутить его к EmBlocks и получить бесплатную среду разработки без ограничений.
CCS — это Eclipse, я в нем на C++ проекты писал с мегабайтами исходников, надо только ява-машине памяти побольше выделить. Медленноват, но пользоваться вполне можно. Насчет всего остального — не в курсе. Mentor использует gcc с gdb, может там можно чего наковырять.
Именно, но не только эклипс а еще тонны плагинов и всякой всячины к нему. Работает ОООЧЕНЬ медленно. Особенно на не самом быстром ноуте. На декстопе более-менее терпимо. На ноуте неприемлемо. Вообще я уже неоднократно писал о том, что eclipse меня не устраивает именно тормозами и неудобством настройки. Та же CooCox на его основе урезана до неприличия и тормозит безбожно. Именно это побудило перейти на CodeBlocks и EmBlocks.
«Наковырять» честно говоря не хочется. Если нормального тулчейна нет, значит стелларисы для меня останутся в разделе неудобных и бесполезных для меня МК. Сам по себе МК — это даже не полдела, это так, мелкая крупица. Вокруг него образуется экосистема с отладчиками, IDE, библиотеками софта, готовыми девайсами и схемами, типовыми реализациями, которые вместе имеют куда большую ценность. Именно поэтому морально устаревший AVR до сих пор живет, а STM32 при всей его крутости пока буксует в сегменте новичков — порог входа выше. Но лично для себя я не вижу особого смысла в еще одном ARM МК если нет видимых преимуществ, а разработка под него сопряжена с неудобствами. В таком ключе мне проще выбрать подходящий МК из семейства STM32. Под него вся экосистема есть.
ну gcc-arm тулчейн вроде кросс-платформенный. В качестве IDE меня устраивает EmBlocks — достаточно гибкая и быстрая среда.
К стати 23 января начинается курс UT.6.01x Embedded Systems — Shape the World на edX:

Практическая часть курса будет именно на этих платах. Учитывая, что тексас доставляет курьерской службой, еще можно успеть. С симулятором впрочем тоже можно пройти курс.
Кто-то собирается образовываться? Записался кто-нибудь?
Я записался, но больше не из-за курса(боюсь что будет слишком примитивным) а чтобы посмотреть на систему автоматизирования проверки(они пишут плагины для IAR, который проверяет работоспособность платы).
Насчёт изменения настроек порта GPIO — это касается только бита 0 от порта F, бита 7 от порта D и битов 0-3 от порта С, это связано с возможностью накосячить с критически важными частями железа:

Выдержка из datasheet
The GPIO commit control registers provide a layer of protection against accidental programming of
critical hardware peripherals. Protection is provided for the GPIO pins that can be used as the four
JTAG/SWD pins (PC[3:0])and the NMI pin (PD7 and PF0). Writes to protected bits of the GPIO
Alternate Function Select (GPIOAFSEL) register (see page 632), GPIO Pull Up Select (GPIOPUR)
register (see page 638), GPIO Pull-Down Select (GPIOPDR) register (see page 640), and GPIO
Digital Enable (GPIODEN) register (see page 643) are not committed to storage unless the GPIO
Lock (GPIOLOCK) register (see page 645) has been unlocked and the appropriate bits of the GPIO
Commit (GPIOCR) register (see page 646) have been set.
Резистор подтягивает базу к земле, видимо для того что-бы переход быстрей/полней закрывался. Я не электронщик, не судите если не прав.
Буквально на днях писал на этой плате управление RGB на восемь каналов. Под линукс среда разработки была установлена за 15-ть минут и в нее вошли: vim, arm-none-eabi-gcc, openocd, lm4flash, отладчик Nemiver (wiki.gnome.org/Apps/Nemiver), StellarisWare.
Все получилось очень удобно и не громоздко. Уже заказал себе несколько таких плат и буду играться дальше.

Насчёт частоты PLL в 200 мегагерц: на самом деле там 400 мегагерц, которые делятся на 5 и получается 80. Смотрите «Table 5-6. Examples of Possible System Clock Frequencies with DIV400=1» в datasheet.

SYSCTL_SYSDIV_2_5 включает в себя бит DIV400, поэтому частота PLL не делится на 2.

Выдержка из datasheet на эту тему
The PLL operates at 400 MHz, but is divided by two prior to the
application of the output divisor, unless the DIV400 bit in the RCC2 register is set.


Я понимаю, моя претензия к наименованиям констант: имя константы, предполагает деление на 2.5. Чтобы получить 80 в результате, делить надо именно 200. Если будем делить на 5, получиться 40. И в документации StellarisWare обоснования этому я не нашел.
Я не вникал в подробности реализации функции SysCtlClockSet, но могу предположить, что «общая» частота в 200 мегагерц сделана для того, чтобы не вызывать путаницы с флагами типа DIV400, т.е. константы вроде SYSCTL_SYSDIV_2_5 приведены к одному виду и уже включают в себя необходимые флаги. Так понятнее, проще и «логичнее» для того, кто пишет код. Не надо разбираться с этими адскими настройками тактирования, флагами, последовательностью записи в них и так далее.
Еще стоит упомянуть форк Arduino IDE для Ti-шных чипов(MSP430 и описанного в статье): Energia. Это если надо быстро и грязно.
Про резистор…

— Почему он не подписан?

— Транзистор DTS114EET1G относится к так называемым "цифровым транзисторам". Эти два резистора интегрированы в сам транзистор, и на схеме показаны для наглядности.

— Зачем нужен резистор «на землю»?

— Этот резистор выполняет две функции. Первая связана с работой самого транзистора. Именно на этом резисторе возникает отпирающее напряжение при протекании управляющего тока (LED_x — В — Е — GND), которое прикладывается к переходу ВЕ (база-эмиттер) и транзистор открывается. Это напряжение >0,7V.
Вторая функция, это «давить» помехи, шум выхода порта МК и шум земли. Резистор шунтирует переход ВЕ транзистора, и при малых токах смещения (токи которые вызывают помехи), транзистор закрыт, сопротивление перехода ВЕ намного больше сопротивления резистора и все помехи протекают через резистор на землю, не создавая на нем мало-мальски значительного напряжения (<<0.7V) которого бы хватило для открытия транзистора. Если этот резистор выкинуть из схемы то, токи вызванные помехами будут протекать через переход транзистора ВЕ, создавая на внутреннем сопротивлении перехода значительно большие напряжения, что может привести к открытию транзистора.
Sign up to leave a comment.

Articles