ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Вторник
21 мая
1161514 Топик полностью
evgeniy1294 (06.01.2022 02:19, просмотров: 206) ответил evgeniy1294 на Предлагаю обсудить тезисно:
* Вроде смотришь листинги - ничего особенного, но работает код быстрее. Тут вопрос, на сколько? Если 15-20%, может быть полезно, 5-10% - хер с ним. 

* Ибо IAR это ещё документация. Для gcc она есть, в pdf, исчерпывающая. Для clang - аналогично.

* стабильная работа с отладчиками/программаторами. Я использую OpenOCD, всё прекрасно, хотя поддержка свежайших чипов не очень. Последнее справедливо только для ванильной ветки отладчика, чипвендоры для своих ide обычно держат свои ветки openocd, в которых поддержка новых чипов появляется первой, т.е раньше iar. У китайцев поголовно openocd.

* отличный отладчик в IDE
Есть только один графический отладчик, который я считаю хорошим - Segger Ozone. Остальное, в том числе в iar... ну, звезд с неба не хватает. Консольная отладка - тема отдельная.

* и качественная генерация ассемблерных листингов.

При отладке в gdb я могу получить дамп любой функции прямо в процессе отладки в любой момент. Вижу что-то странное - зову disas.

* отладка в железе, но железка не всегда есть под рукой.

Отладка в железе нужна только при написании драйверов (bsp). Вся логика тестируется на десктопе как синтетический порт, а там уже можно многое позволить, например статический анализатор. Хотя PVS Studio вроде работает и с IAR, даже мисру поддерживает. Есть конечно исключения, вроде низкоподребляющих устройств, но я с ними не работал.

* Например, если ты в GCC по указателю на неволатильную память сделаешь несколько записей, то он оптимизирует это до последней записи.

* Да, формально GCC прав Не формально, а полностью. Подобный код просто опасен, могут пострадать люди или дорогостоящее оборудование.

* ARM Compiler V6 это вообще особенная вещь. Я его боюсь Это clang. Хочу попробовать его ванильную версию для эмбеддета, но пока руки не доходят. Ближайшие полгода будет точно не до него.