Getting Started with the Stellaris

Думаю не мало людей заказывали эту плату.
Предлагаю собрать уроки\IDE\инфу в одно место для удобства.
Начну первым, пока что выкладываю торрент с видео-уроками и IAR-ом (не ломанным, ключ получаем на 30 дней или 32Кб лимит).
Интересует же Code Composer и примеры исходников, если у кого есть…
p\s пробовал запрашивать, но на мыло не приходит ничего уже в течении недели — забанили таки меня. Раздавать смогу вечерами, если кого заинтересовало. :)
p\s\s Выкладываемую инфу я буду добавлять в торрент.
UPD1: Добавил доки, примеры, CCS, IAR другой версии. Расположение и имя прошлых файлов не изменилось. Обновлён торрент файл!
- +2
- 03 декабря 2012, 21:40
- truppik
- 1
Файлы в топике:
Getting Started with the Stellaris-UPD1.zip
Добавил бы чтоли в торрент документацию — даташиты, аппноты, опционально сохраненные странички TI Wiki.
CCS они отдают сразу, без мыла, но у меня в старой опере страничка неправильно работает и не выдает линк.
CCS они отдают сразу, без мыла, но у меня в старой опере страничка неправильно работает и не выдает линк.
А мне постоянно на Любую скачку окошко с заголовком «U.S.Government export approval» вылазит… там мол заполните для чего Вам надо это и через 1-2 дня на мыло Мы Вам вышлем всё.
ну пару раз заполнял — не прислали ничего и ладно…
PDFки с инфой и чт найду постараюсь добавить на днях, не всё сразу же :)
ну пару раз заполнял — не прислали ничего и ладно…
PDFки с инфой и чт найду постараюсь добавить на днях, не всё сразу же :)
Заполнять надо, да. Но если правильно заполнить — оно сразу ссылку отдает. Только не во всех браузерах срабатывает. Я через хром лил.
в ти сцайт кривой и некоторые файлы подгружаются не с хттпс
поэтому браузер не дает линк на скачку и там у них в хелпе это написано
я скачал иар, а ццс в 2гига ломает совсем тянуть
иар с доками почти гиг весит
поэтому браузер не дает линк на скачку и там у них в хелпе это написано
я скачал иар, а ццс в 2гига ломает совсем тянуть
иар с доками почти гиг весит
- kalobyte-ya
- 04 декабря 2012, 13:58
- ↑
- ↓
попробуйте так качать
ццс software-dl.ti.com/download/stellaris/GFZ4SIWEZB2NJQYYBHX6D_BJGJUPIANS/EK-LM4F120XL-CCS-733.zip
иар
software-dl.ti.com/download/stellaris/TESCX7UGUCMVFZ@TEXFT6BJF9SW8VIJH/EK-LM4F120XL-IAR-733.zip
может не сработать из-за идентификатора сессии
ццс software-dl.ti.com/download/stellaris/GFZ4SIWEZB2NJQYYBHX6D_BJGJUPIANS/EK-LM4F120XL-CCS-733.zip
иар
software-dl.ti.com/download/stellaris/TESCX7UGUCMVFZ@TEXFT6BJF9SW8VIJH/EK-LM4F120XL-IAR-733.zip
может не сработать из-за идентификатора сессии
- kalobyte-ya
- 04 декабря 2012, 15:19
- ↓
Я скачал отсюда файл EK-LM4F120XL-CCS. Заполнил все поля, файл сказался без проблем. Сегодня пришла платка, мигание светодиодом в CCS уже осилил ;) Примеры кода, удобно собраны в StellarisWare (входит в комплект EK-LM4F120XL-CCS). Единственная странность: CSS при установке выкачивает кучу трафика из инета, для меня это мелочь, но будьте в курсе!
И кстати (а может и не кстати): бесплатная CCS полнофункциональная, НО! С одним очень существенным ограничением: программа не записывается во флеш-память МК, т.е. после отключения и последующего включения питания, программа пропадет! bin-файл естественно также НЕ сохраняется.
Ну это очевидно, что есть после включения/выключения питания память пропадает, значит CCS пишет в RAM. Как я уже говорил — бинарник не создается => зашить откомпиленную прошивку во Flash тоже не выйдет. Не велика беда на самом деле, для домашних поделок Cortex M4F — слишком крут, а поиграться можно и так. Если уж очень сильно прижмет, всегда можно обойти любые ограничения, вопрос надо ли оно вообще.
Эмм. А дело не в настройках линкера?
У меня стоит CCS v4, так в проектах на C2000 обычно в опциях линкера использовали «Link using ROM autoinitialization model» (еще бывает RAM model), и нужные функции переносили в RAM ручками
Кстати bin-файла вообше нет, есть *.out
Или в CCS для стелларисов всё иначе? Но TI ж вроде допилили CCS чтобы оно для всех семейств их камней было.
У меня стоит CCS v4, так в проектах на C2000 обычно в опциях линкера использовали «Link using ROM autoinitialization model» (еще бывает RAM model), и нужные функции переносили в RAM ручками
Кстати bin-файла вообше нет, есть *.out
Или в CCS для стелларисов всё иначе? Но TI ж вроде допилили CCS чтобы оно для всех семейств их камней было.
Посмотрел настройки линкера, такой опции не нашел (м.б. переименовали как-то, но я сомневаюсь).
*.out есть. Просто в «наборе необходимого ПО» есть программа «LM Flash Programmer», которая работает с *.bin файлами. В примерах проектов построенных в CCS как-раз есть эти самые *.bin файлы.
На коробке нового ланчпада написано: «CCS IDE: full functional board locked», видимо это и есть то самое ограничение.
Если я где-то неправ — опровергните, я только рад буду :)
*.out есть. Просто в «наборе необходимого ПО» есть программа «LM Flash Programmer», которая работает с *.bin файлами. В примерах проектов построенных в CCS как-раз есть эти самые *.bin файлы.
На коробке нового ланчпада написано: «CCS IDE: full functional board locked», видимо это и есть то самое ограничение.
Если я где-то неправ — опровергните, я только рад буду :)
Понимаю, что может быть поздно, но совсем чуть-чуть погуглив вчера нашел решение проблемы за полчаса. Прекрасно создается .bin, который потом спокойно льется.
Кроме того, даже не создавая .bin у меня все продолжает работать после перезагрузки. Подробности все еще актуальны? Если да, вечером из дома опишу.
Кроме того, даже не создавая .bin у меня все продолжает работать после перезагрузки. Подробности все еще актуальны? Если да, вечером из дома опишу.
На самом деле здесь намешаны в кучу две разных проблемы и решать их будем по порядку.
Проблема номер раз — не создается .bin — открываем CCS, в нем открываем любой проект, из имеющихся в StellarisWare, заходим в свойства проекта, build->Steps->Post build steps. Там мы видим волшебную строчку, которая генерит .bin из .out, который создаст компилятор. У меня эта строчка выглядит так:
Возможно, она будет слегка разниться в зависимости от версии CCS. Строчку надо скопировать и вставить в аналогичное поле своего проекта.
Проблема номер два — написанная программа выполняется только под дебагером и не выживает после ребута.
Насколько я понял дело в том, что функцию main мы, конечно создали, но как туда МК будет попадать? Когда мы запускаем программу из-под дебагера, об этом заботится ICDI. Но после ресета МК идет по адресу, который лежит в векторе прерывания ресета, а мы туда ничего не написали и что там находится — ведомо только ТиАю.
Для того, чтобы вектора прерываний были прописаны правильно, надо найти файлик startup_css.c (в любом из проектов, имеющихся в Ware) и скопировать его в директорию со своим проектом. CCS должен подхватить этот файл автоматически и добавить в проект (не знаю, потребуется ли его перезапустить, я просто закрыл его, скопировал файл, после чего открыл CCS обратно).
Все, теперь после компиляции у нас будет файл .bin, который можно заливать через LMFlashProgrammer, а можно просто запустить дебаг в CCS, после ресета весь код останется во флеше и запустится на исполнение.
За подробностями можно посмотреть собственно в сам файл startup_ccs.c — там ничего сложного — объявляются четыре функции, которые привязываются к различным прерываниям — по прерыванию ресета функция прыгает на _c_int00 (входная точка нашей программы), три остальных (non-masked interrupt, fault interrupt и дефолтное прерывания для всей периферии) просто висят в бесконечном цикле.
Проблема номер раз — не создается .bin — открываем CCS, в нем открываем любой проект, из имеющихся в StellarisWare, заходим в свойства проекта, build->Steps->Post build steps. Там мы видим волшебную строчку, которая генерит .bin из .out, который создаст компилятор. У меня эта строчка выглядит так:
"${CCE_INSTALL_ROOT}/utils/tiobj2bin/tiobj2bin" "${BuildArtifactFileName}" "${BuildArtifactFileBaseName}.bin" "${CG_TOOL_ROOT}/bin/ofd470" "${CG_TOOL_ROOT}/bin/hex470" "${CCE_INSTALL_ROOT}/utils/tiobj2bin/mkhex4bin"
Возможно, она будет слегка разниться в зависимости от версии CCS. Строчку надо скопировать и вставить в аналогичное поле своего проекта.
Проблема номер два — написанная программа выполняется только под дебагером и не выживает после ребута.
Насколько я понял дело в том, что функцию main мы, конечно создали, но как туда МК будет попадать? Когда мы запускаем программу из-под дебагера, об этом заботится ICDI. Но после ресета МК идет по адресу, который лежит в векторе прерывания ресета, а мы туда ничего не написали и что там находится — ведомо только ТиАю.
Для того, чтобы вектора прерываний были прописаны правильно, надо найти файлик startup_css.c (в любом из проектов, имеющихся в Ware) и скопировать его в директорию со своим проектом. CCS должен подхватить этот файл автоматически и добавить в проект (не знаю, потребуется ли его перезапустить, я просто закрыл его, скопировал файл, после чего открыл CCS обратно).
Все, теперь после компиляции у нас будет файл .bin, который можно заливать через LMFlashProgrammer, а можно просто запустить дебаг в CCS, после ресета весь код останется во флеше и запустится на исполнение.
За подробностями можно посмотреть собственно в сам файл startup_ccs.c — там ничего сложного — объявляются четыре функции, которые привязываются к различным прерываниям — по прерыванию ресета функция прыгает на _c_int00 (входная точка нашей программы), три остальных (non-masked interrupt, fault interrupt и дефолтное прерывания для всей периферии) просто висят в бесконечном цикле.
он у тебя гига на 2 разросся после выкачивания всякой херни
radiokot.ru/forum/viewtopic.php?f=20&t=47529
radiokot.ru/forum/viewtopic.php?f=20&t=47529
- kalobyte-ya
- 04 декабря 2012, 17:14
- ↑
- ↓
Ну знаете ли, тут можно аналогию с играми привести, в 90-е мною горячо любимая игрушка LHX (вертолетный симулятор, очень неплохой) весил 250кб, сейчас новые игрухи (DeusEx, MaxPain3, XCOM и иже с ними) весят уже 15Гб. И другой пример: Debian на моей Raspberry pi — 2Гб (чистая, без всего). XP у меня стоит как вторая система на втором компьютере, ее эра как ни крути — проходит.
ну увеличение размера дистрибутива игры или системы понятно — больше драйверов, больше разрешение текстур
а вот что можно запихать в среду разработки под контроллеры, чтобы оно занимало 1 гиг?
я бы понял еще если бы там был симулятор типа протеуса + рисовался графических интерфейсов для индикаторов
но ведь там этого нет
недавно прочел новость на хабре про бук от хп за 1.5к баксов для разработчиков
8гиг озу, процессор там из последних, ссд, то, се…
вот если бы разработчикам предлогали бук с п2 400мгц и 256 озу, тогда бы они разрабатывали нормальный софт
для мсп430 наверное надо свой иар или ццс качать? это еще один гиг
если бы мне ссд на 512гиг подарили, я бы и не возражал
а вот что можно запихать в среду разработки под контроллеры, чтобы оно занимало 1 гиг?
я бы понял еще если бы там был симулятор типа протеуса + рисовался графических интерфейсов для индикаторов
но ведь там этого нет
недавно прочел новость на хабре про бук от хп за 1.5к баксов для разработчиков
8гиг озу, процессор там из последних, ссд, то, се…
вот если бы разработчикам предлогали бук с п2 400мгц и 256 озу, тогда бы они разрабатывали нормальный софт
для мсп430 наверное надо свой иар или ццс качать? это еще один гиг
если бы мне ссд на 512гиг подарили, я бы и не возражал
- kalobyte-ya
- 04 декабря 2012, 23:08
- ↑
- ↓
1. Текстуры это конечно здорово, но увеличение размера игры в 60 тысяч раз это не оправдывает.
2. Ну а че, девелопер человек имеющий извращенные понятия о технике, были бы у меня лишние деньги, тоже купил бы себе чего-нибудь эдакое. Если бы у меня сейчас был P2, стал бы неврастеником и красноглазиком (на нем даже современный word не взлетит, остается только поставить Linux, снести графику и «не париться», нет спасибо).
3. CCS основан на эклипсе => можно при желании прикрутить одновременную поддержку нескольких камней. Занимают место видимо всякие фреймворки и прочие издержки универсальности среды.
4. Зачем такой большой SSD? У меня суммарный объем HDD основного компа 1.5Тб, пока не кончился, как кончится — цена вопроса 3к за тер (м.б. уже и меньше).
5. Возвращаясь к теме: проблема CCS в другом — тормозной он, сильно :)
2. Ну а че, девелопер человек имеющий извращенные понятия о технике, были бы у меня лишние деньги, тоже купил бы себе чего-нибудь эдакое. Если бы у меня сейчас был P2, стал бы неврастеником и красноглазиком (на нем даже современный word не взлетит, остается только поставить Linux, снести графику и «не париться», нет спасибо).
3. CCS основан на эклипсе => можно при желании прикрутить одновременную поддержку нескольких камней. Занимают место видимо всякие фреймворки и прочие издержки универсальности среды.
4. Зачем такой большой SSD? У меня суммарный объем HDD основного компа 1.5Тб, пока не кончился, как кончится — цена вопроса 3к за тер (м.б. уже и меньше).
5. Возвращаясь к теме: проблема CCS в другом — тормозной он, сильно :)
1. Текстуры это конечно здорово, но увеличение размера игры в 60 тысяч раз это не оправдывает.Я бы так не сказал. Я имел дело с геймдевом и неплохо представляю, с какой скоростью растет объем текстур с увеличением их разрешения. При этом качество картинки растет куда медленнее. И для современных техник рендеринга, обеспечивающих 90-95% качества картинки обычно требуется наложение десятка и более текстур на одну модель. Кроме того, много весят озвучка всех диалогов (особенно многоязычная) и сами модели, которые нынче довольно многополигональны. Туда же видеоролики в FullHD — запросто может весить 4-5 гиг.
Ну и сами игры стали намного сложнее по игровой механике.
Во первых, не с 8 бит. В те времена жестко экономили и 4-битные индексированные текстуры отнюдь не были редкостью. Да и самих текстур было куда как меньше. А во вторых — разрешение экрана нынче уже не 640х480, а 1920х1080. Уже одно увеличение 320x240@4bit -> 1920x1080@32bit дает увеличение размера в 216 раз. Сами текстуры прибавили в весе куда существенней — с 32х32@4-8bit до 2048х2048@32-128bit (это не считая мегатекстур, чей размер может и за гигабайт перевалить, но их обычно мало — единицы), к тому же их стало намного больше — в десятки и сотни раз. Увеличение размера в 60к раз уже не кажется таким уж большим)
а вот что можно запихать в среду разработки под контроллеры, чтобы оно занимало 1 гиг?Большую часть весят обычно библиотеки и подобные файлы. Тот же GCC для MSP430 и AVR весит четверть гига сам по себе.
Документация зачастую весит немало. А вот исполняемых файлов обычно не так уж много, десятки мегабайт максимум.
недавно прочел новость на хабре про бук от хп за 1.5к баксов для разработчиковНормально. Компиляция больших проектов — процесс достаточно длительный, мощность там категорически кстати. А большие проекты на С++ вообще приходится собирать по ночам на кластерах.
8гиг озу, процессор там из последних, ссд, то, се…
IDE нынешние тоже требовательные. Им требуется разбирать и запоминать в ОЗУ результаты разбора десятков мегабайт исходных кодов, чтобы всякие автодополнения работали быстро.
Так что это все отнюдь не для тестирования программ требуется.
Большую часть весят обычно библиотеки и подобные файлы.как могут библиотеки для контроллеров весить столько?
Документация зачастую весит немало.
- kalobyte-ya
- 05 декабря 2012, 03:32
- ↑
- ↓
mikroC_PRO_avr.chm 4.5мб
в компиляторе есть свои библиотеки
хедеры весят 19мб
вся папка 50
есть тулзы для графических и символьных индикаторов, примеры картинок и примеры кода
есть программатор и драйверы под кучи систем
сама иде весит 13мб
сам компилятор весит 1.3мб и вызывается из командной строки
т.е. его можно юзать с любой иде сторонней
вот я никак и не могу понять, что же можно запихать в 800мб иар
в компиляторе есть свои библиотеки
хедеры весят 19мб
вся папка 50
есть тулзы для графических и символьных индикаторов, примеры картинок и примеры кода
есть программатор и драйверы под кучи систем
сама иде весит 13мб
сам компилятор весит 1.3мб и вызывается из командной строки
т.е. его можно юзать с любой иде сторонней
вот я никак и не могу понять, что же можно запихать в 800мб иар
- kalobyte-ya
- 05 декабря 2012, 03:42
- ↑
- ↓
mikroC_PRO_avr.chm 4.5мбИ это еще относительно компактный CHM. PDF тяжелее. А хелпы для нового Help Explorer (M$ его представили вместе с MSVS 2005) спокойно весят полгига и более.
И микро-с я бы не стал приводить в пример. Он мелкий и довольно убогий. Библиотеки тоже не блещут, они примитивные — и то 19 метров набралось. А у GCC библиотеки в первую очередь много весят из-за формата объектных файлов и обилия дебаг инфо в них.
сам компилятор весит 1.3мб и вызывается из командной строкиУ IAR'а — 24 метра. Это не считая IDE с ее симуляторами и дебаггерами. Один лишь крек для свежей версии содержит 85 мегабайт ломаных бинарников. Вообще, это много, весьма много. Вероятно там используются какие-то тяжелые статически линкуемые библиотеки. Кейл обходится примерно 15 метрами бинарников для IDE, при этом она заметно лучше.
Ради интереса поставил сегодня Keil, главная его проблема — не допиленный дебагер, видны только основные регистры процессора, будем ждать когда пофиксят :(
Зато теперь у меня есть возможность записи программы во флеш:
1. Пишем программу и дебажим ее в CSS с использованием библиотек от TI
2. Компилим и зашиваем прогу через Keil, с использованием тех же библиотек.
Надо будет IAR еще попробовать, не ожидал я такой подставы от Keil…
Зато теперь у меня есть возможность записи программы во флеш:
1. Пишем программу и дебажим ее в CSS с использованием библиотек от TI
2. Компилим и зашиваем прогу через Keil, с использованием тех же библиотек.
Надо будет IAR еще попробовать, не ожидал я такой подставы от Keil…
В чем может быть проблема, постоянно ошибка :(
Иногда режется на blinky.c
D:\MyProgramm\ti\ccsv5\utils\bin\gmake -k all
'Building file: ../blinky.c'
'Invoking: ARM Compiler'
"D:/MyProgramm/ti/ccsv5/tools/compiler/tms470_4.9.5/bin/cl470" -mv7M4 --code_state=16 --float_support=FPv4SPD16 --abi=eabi -me -O2 -g --include_path="D:/MyProgramm/ti/ccsv5/tools/compiler/tms470_4.9.5/include" --include_path="D:/MyProgramm/ti/StellarisWare" --gcc --define=ccs="ccs" --define=PART_LM4F120H5QR --diag_warning=225 --display_error_number --gen_func_subsections=on --ual --preproc_with_compile --preproc_dependency="blinky.pp" "../blinky.c"
'Finished building: ../blinky.c'
' '
'Building file: ../startup_ccs.c'
gmake: *** Отказано в доступе.
Иногда режется на blinky.c
Комментарии (51)
RSS свернуть / развернуть