А как в IAR узнать после сборки проекта утилизацию ресурсов? Типа сколько памяти использовано/свободно, сколько ПЗУ, сколько ЕЕПРОМ. Чтобы знать сколько еще можно накропать. Если писать, разумеется на С. На асме, наверное, в листинге всё и так должно быть видно.
Включить создание .map файла при сборке. Потом смотреть в его конце утилизацию. Типа того:
Код:
4 402 bytes of readonly code memory 163 bytes of readonly data memory 320 bytes of readwrite data memory
Что-то поиск IAR gj ajheve не дал никаких результатов, поэтому свой вопрос размещаю здесь.
Начал работать с LaunchPad - IAR. Нашел инструкции и по "обезьяньи" по первому разу прошел цепочку от установки IAR до исполнения в LaunchPad программки. Теперь есть желание понять что натворил. Вопросы о проекте в IAR. Цепочку проходил такую: создаю проект и сохраняю в папке создаю файл и сохраняю в той же папке как main.с устанавливаю настройки (options) проекта сохраняю в той же папке рабочее пространство (workspace)
Теперь вопросы. Что такое проект? Означает ли это, что любой ххх.с вы этой папочке (проекте) могу разрабатывать как отдельную программу? Но если надо отойти от заданных options, то надо создавать новый проект в новой папочке?
Когда создавал новый проект, то у меня создалась закладочка и файл с простейшим шаблоном. Но для СИ я создаю файл ххх.с без шаблона, где дальше и нацарапываю (с помощью кота) свою программу. Тогда зачем создавался файл с шаблоном?
Вы представляете, как собирается программа на C? Одна программа может быть составлена из многих файлов исходников, к ней могут подключаться разные библиотеки, и т.д. При компиляции нужно будет сформировать опции компилятора и линкера (а компилятор еще и запустить отдельно для каждого файла с кодом на С). В нашем случае эту работу IDE берет на себя. Собственно, в файле проекта и хранится список файлов, специфичные настройки утилит и тому подобное, чтобы IAR знал, из каких исходников делать бинарник и как.
Цитата:
Означает ли это, что любой ххх.с вы этой папочке (проекте) могу разрабатывать как отдельную программу?
Нет. Все файлы, включенные в проект, будут сведены в один бинарник. В этом и есть глубокий смысл проекта.
Цитата:
Тогда зачем создавался файл с шаблоном?
Чтобы в нем писать.
Цитата:
Каково назначение workspace?
Открывать одновременно несколько проектов. Говорят, бывает удобно. Правда, я сам никогда не пользовался этой возможностью. Наверное, не дорос.
_________________ Разница между теорией и практикой на практике гораздо больше, чем в теории.
RTFM - Was ist das? Если это ругательство, то зачем ругаться на человека, который в данном вопросе знает меньше вас?
YS писал(а):
Открывать одновременно несколько проектов. Говорят, бывает удобно. Правда, я сам никогда не пользовался этой возможностью. Наверное, не дорос.
Сделал попытку дорасти. Создал папочку и создал второй проект. Workspace не сохранял. При выходе из проекта предложено сохранить Workspace. Объединить два проекта в одно рабочее пространство никак не получается. Вроде бы выходит, что один проект - одно рабочее пространство.
YS писал(а):
Чтобы в нем писать.
При создании проекта создается файл main.ccp с шаблоном. Файл main.c создается отдельной командой и шаблона он не содержит. Выходит программа должна писаться в файле с шаблоном main.ccp, а не в main.c? Я писал в main.c и вроде все получилось.
RTFM - Read The Fine Manual, прочитайте это прекрасное руководство. Призыв читать документацию. Правда, с IAR'ом поставляется отличная документация. Как Вы думаете, откуда я узнал все то, что сейчас Вам рассказываю?
Цитата:
Объединить два проекта в одно рабочее пространство никак не получается.
Надо сохранить воркспейс и в нем же создать второй проект.
Только зачем оно Вам?
Цитата:
Выходит программа должна писаться в файле с шаблоном main.ccp, а не в main.c? Я писал в main.c и вроде все получилось.
Во-первых, .cpp, а во-вторых, не выбирайте в процессе создания проекта в качестве языка C++. На С++ под простые МК пишут либо унылые ардуинщики, либо крутые профи в случае крайней обоснованой необходимости. С и С++ - разные языки, не путайте их! Хотя да, компилятор С++ обратно совместим с кодом на С.
_________________ Разница между теорией и практикой на практике гораздо больше, чем в теории.
RTFM - Read The Fine Manual, прочитайте это прекрасное руководство. Призыв читать документацию. Правда, с IAR'ом поставляется отличная документация. Как Вы думаете, откуда я узнал все то, что сейчас Вам рассказываю?
Я тут новичек, но как-то бросается в глаза специфичная манера вести дискуссию: сначала мордой по роялю повозить, а потом ответить на вопрос. Зачем? Да, я никогда не видел термина RTFM. Он мне кажется каким-то келейным. Да, я видел прекрасную документацию, которая поставляется с IAR. Но неужели вы думаете, что каждый сможет ее прочитать от корки до корки? И если человек не смог, неужели он достоин "мордой об рояль"? Приведу свою ситуацию. В школе я учил немецкий, в институте английский, но толку от этого было мало. Зачеты сдавал, но английский не освоил. И не смотря на это в застойные времена 5 месяцев учился в Control Data Institut. Слушал английский и еженедельно сдавал тесты(наподобии наших ЕГЭ). Однако бегло читать английские тексты так и не получается. Относитесь терпимее к задающим вопросы.
YS писал(а):
не выбирайте в процессе создания проекта в качестве языка C++
В пошаговых инструкциях, которые мне попались, почему-то рекомендуют именно С++. Хотя попробовал выбрать С, действительно создался main.c с шаблоном. Велика ли разница между ними для простых проектов?
Теперь вопрос, который ближе к hard. Пишу программку для управления зарядным устройством. Когда все отладится, вытащу микросхемку из LaunchPad и воткну в устройство. А как быть на этапе отладки? Как подключить порты, вроде понятно, но что надо делать, чтобы одновременно были подключены и компьютер и устройство? Я имею ввиду режим отладки.
В пошаговых инструкциях, которые мне попались, почему-то рекомендуют именно С++.
Не боги горшки обжигают. 90% населения на планете не понимают разницы между С и С++. Видимо, и авторы тех пособий тоже попутали...
Цитата:
Велика ли разница между ними для простых проектов?
Нет. Компилятор С++ обратно совместим с кодом на чистом С. Но если Вы не будете использовать ООП (в таких МК это противопоказано), зачем путать себя и других?
Цитата:
что надо делать, чтобы одновременно были подключены и компьютер и устройство? Я имею ввиду режим отладки.
Да ничего. Только если у Вас порты UART'а заняты чем-то другим, снимите соответствующие перемычки на лончпаде. А так вывод программирования (TEST/SBWTCK) у MSP430 специфичен и отделен от GPIO, так что нежелательного взаимодействия не будет. Ну и следить за потенциалами (в частности, потенциалами земель), конечно.
#pragma offtopic
Спойлер
Цитата:
Я тут новичек, но как-то бросается в глаза специфичная манера вести дискуссию: сначала мордой по роялю повозить, а потом ответить на вопрос. Зачем?
Ну помилуйте, где же я Вас по роялю возил? У меня и рояля то нету, только пианино.
Но неужели вы думаете, что каждый сможет ее прочитать от корки до корки?
Во-первых, от корки до корки ее читать не требуется. Справочники созданы для того, чтобы обращаться к нужным частям по мере необходимости. А во-вторых, если человек собирается использовать инструмент, то логично, что он должен читать руководство к нему, как минимум в случае затруднений. Там есть и Quick Start Guide.
Чаще всего вопросы, на которые можно найти ответы, прочтя документацию либо погуглив, на форумах не приветствуются. Незнание английского тоже слабое оправдание. Думаете, меня в институте или школе ему научили? Куда там. Все вот так же, по мануалам со словарем... Английский в электронике - как латынь в медицине. Без него никуда. Мы же с Вами взрослые люди и понимаем, что за нас никто ничего не сделает...
Ладно, давайте закончим оффтоп. А то придет злой модератор и всех покарает.
_________________ Разница между теорией и практикой на практике гораздо больше, чем в теории.
Avik - я тоже не вижу, чтобы YS возил Вас "мордой по роялю". Наоборот, он очень корректно и толково ответил на все Ваши вопросы. Даже сокращение RTFM смягчил. Кстати, если непонятно какое-то сокращение - попробуйте забить его в Гугль. Первая-же ссылка приведет на сайт Википедии, где термину RTFM дано объяснение. http://en.wikipedia.org/wiki/RTFM Перевода этой статьи на русский там пока нет, но есть перевод на украинский.
А по поводу создания нескольких проектов в одном рабочем пространстве - это бывает удобно, когда несколько проектов включают общие файлы и относятся к одной теме. Например, Вы проектируете систему, состоящую из приемника и передатчика. В системе будет 2 проекта, заливаемых соответственно в микроконтроллеры приемного и передающего устройств. Допустим Вы внесли изменения в общем для этих проектов файле, содержащим настройки радиоканала (частота передачи, вид модуляции, скорость передачии пр.). Изменения нужно перекомпилировать и перезалить в оба контроллера. При этом вместо того чтобы переключить IDE на другой проект путем перезагрузки его в IDE (несколько кликов) можно просто один раз кликнуть на закладку другого проекта в окне IDE. Работа получается более оперативной, т.к. при открытии рабочего пространства IDE может быть настроено на загрузку всех проектов из него.
кто юзает стелларис? там в еклипсе прошивку только в режиме отладки можно залить? что-то я не понял, как сделать нормальный файл бин чистой прошивки? или эта версия халявного компилятора не делает ее?
_________________ тематические ответы только в форуме, в приват не пишите
Написал небольшое руководство по работе с Code::Blocks- графической средой разработки. И как прикрутить к ней mspgcc. Как только перешёл на неё, - большинство проектов, упорно отказывающихся компилироваться под IAR и CCS, - чудесным образом заработали!
Однажды мне стало не хватать пинов... Вернее - на одни и те же пины предполагалось вешать одновременно несколько устройств, и чтобы удобнее всё подключать, сваял я вот такую платку (фото во вложении).
вопрос для обладателей 430лп можно ли перешить как-то ту квадратную мс, чтобы лп стал жтаг программатором для тех мс, которые не поддерживают двухпроводной интерфейс? на плате как раз есть дырки под жтаг, но они для программирования самого мк или надо городить программатор на лпт?
_________________ тематические ответы только в форуме, в приват не пишите
Я сам это не проверял, но по опыту других подобных плат - скорее всего прошивка в программаторе LaunchPad уже универсальная и добиться программирования внешних чипов через JTAG, думаю, возможно если вывести наружу сигналы с платы в соответствии со схемой универсального программатора MSP-FET430UIF. Если надумаете проверить, сообщите пожалуйста о результате.
а еще у меня не ставится драйвер я скачал почти 9мб для той мс моста усб-юарт и они не ставятся качать еще гиг цсс я не буду, так что выложите для винхп 32 что ли MSP430Ware тоже скачать не могу, ибо у ти тупой сцайт и вообще все через жопу у большинства контор
_________________ тематические ответы только в форуме, в приват не пишите
Драйверы для Launchpad входят в состав IDE. Не хотите качать CSS, скачайте тогда IAR Kickstart, там все будет. Могу выложить папку драйверов от IAR по запросу, т.к. не уверен, что именно это надо. У меня все поставилось без проблем. А MSP430Ware мне никогда не было нужно, и я им не пользовался. Но также по запросу могу выложить всю папку MSP430Ware из дистрибутива CSS.
Залил сюда на настоящий момент последнюю подверсию 26 (около 120 МБ) из дистрибутива CSS V5.3: http://mcs.uwsuper.edu/sb/temp/MSP430ware_1_40_00_26.zip Другой у меня нет. Продержу ее там до понедельника. kalobyte: скачаете раньше - дайте знать.
Сейчас этот форум просматривают: HardWareMan и гости: 4
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения