Comments 18
Мне понравилась Energia IDE https://energia.nu/ — функциональный аналог Arduino IDE вместо профессионального Code Composer Studio.
P.S. а что сейчас с доступностью и ценами в РФ на продукцию TI от MSP430 и т.п.
всё очень плохо. Мы в поисках альтернатив
Нужен вообще полностью российский 32 бит RISC микроконтроллер с уникальным ядром (не ARM Cortex M). Изготовляемый на территории РФ начиная с выращивания кристалла для кремниевых пластин.
Потом нужна российская операционная системы для PC, российский компилятор для МК и даже текстовый редактор.
Тогда только и можно будет говорить про суверенитет.
Такой суверинитет дорого стоит. Если вы немного подумаете своей головой и прикините объёмы продаж своего полностью российского процессора, учтёте что его невозможно сделать без поддержки государства, а поддержка государства связана с коррупцией, особенно в наших условиях (и коррупция ещё не самое страшное зло) то выяснится что и ядро и даже микроконтроллер сделать то в принципе можно(вопрос за какое время) вот только стоить всё это вместе с собственным производством будет столько, что купить его смогут военные за государственные же деньги. У СССР был СЭВ, не маленькая такая структура и то с треском проиграла гонку когда компьютеры стали персональными. Сегодняшняя система нефтяной трубы такого точно не вытянет.
Тогда РФ окончательно станет чьей-нибудь колонией
СССР и СЭВ многое просто копировали или на прямую покупали. Не так уж много надо военным.
Копировать начали далеко не сразу. Когда "компьютеры были большими", стоили дорого и использовались для научных и статистических расчётов СССР был на уровне паритета. Потом компьютеры стали персональными и на западе они стали доступны даже частникам. Массовость стала быстро расти. А в СССР не было рынка - не было достаточного количества индивидуальных платёжеспособных пользователей из за перекосов ценообразования в том числе. Пришлось всё больше и больше копировать, а значит всё больше отставать...
Спасибо. Интересно, но лично для меня, скорее в качестве пищи для ума, чем практического применения. TI и STM итак имеют очень приличные среды разработки.
В сегодняшних условиях скорее китайские клоны актуальны, но по ним я так понимаю и информацию гораздо сложнее найти чем по TI
TI и STM итак имеют очень приличные среды разработки.
Это они специально для детей делают такие IDE.
STM итак имеет очень приличные среды разработки.
У меня есть еще методичка как собирать STM32 из MakeFile. https://habr.com/ru/articles/673522/
Там всё очень просто.
В моей практике один раз пришлось лезть в MakeFile, когда бутлоадер делал
Раз не было нужды в Makefile значит у Вас не было командной работы над одной общей кодовой базой, значит у Вас не было модульности в коде, значит у Вас была одна-две сборки на всё, значит у Вас не было сервера сборки, значит у Вас было тотальное дублирование конфигов, значит у Вас не было никакого DevOps(а).
Поэтому и не приходилось Вам разбираться с MakeFile.
Что ж для маленьких Pet-проектов использование IDE может быть и оправдано.
До запуска main() должен отрабатывать startup код. Где же найти файл для startup кода?
Это вроде называется crt0. https://ru.wikipedia.org/wiki/Crt0
Вообще можно использовать Clion, у них сейчас нормальная поддержка Makefile. Другое дело что он платный.(
1--Что происходит до запуска функции main()?
Startup code, иногда не отделимый от компилятора, который обнуляет статические и глобальные переменные в стандартных секциях и вызывает их конструкторы.
2--Какие расширения файлов надо подвергать версионному контролю при сборке через GCC и MakeFile?
Кратко - всё, что не сгенерируется. И лучше всё же настроить .gitignore, в котором указано то, что не надо.
3--Что является артефактами при сборке прошивки для микроконтроллера?
Файлы, которые потом используют для прошивки флэш или для тестов и для отладки.
4--Какой путь проходит код с момента написания до попадания в flash память?
Коммит - пуш - чек стиля - юниттесты - препроцессор-компиляция-линковка - выделение бинарника - скачиваемый артефакт - прошивка во флэш.
5--Какие доки(спеки) нужны для того, чтобы разрабатывать встраиваемый софт? Назовите минимум 4 дока.
Схема электрическая принципиальная, описание чипа и его периферии, эррата на чип, описание c/c++/asm. Некоторые описания слишком большие и TI разбивает их на эн пдф-файлов.
6--Компилятору подали 5 *.с файликов и 20 *.h файликов. Сколько будет *.o файликов?
Обычно 5.
7--В каких случаях артефакты в *.hex файликах предпочтительнее артефактов в *.bin файликах?
Зависит от программатора и способа обновления прошивки, особенно если шить напрямую во флэш.
Хорошие ответы! Есть еще полный тест
https://habr.com/ru/articles/676076/
там самые адекватные вопросы собраны за 12 лет
.hex лучше .bin так как для .hex не надо отдельно указывать адрес старта прошивки.
Сколько случаев было когда техники загрузчик в *.bin записывали в область generic, а потом удивлялись почему не работает...
Сборка firmware для CC2652 из Makefile