Pull to refresh

Comments 23

Мой вариант: любой удобный редактор, патченая библиотека, всё тот же компилятор sdcc, и прошивальщик stm8flash. Для сборки использую идущий с библиотекой Makefile, переделав под себя.
Проблема с неиспользуемыми функциями, конечно, мешает, поэтому многие куски SPL переписал сильно упростив. Отсутствие отладчика печалит, но для домашних поделок сойдёт.
Я без отладчика даже с домашними поделками уже совершенно не желаю возиться :)
Я убрал assert полностью, сделал активацию функций макросами, остальное не трогал.
>Начинаем писать под stm8

так то уже заканчивать пора писать под stm8…
Простые проекты мне удобнее делать на stm8, а то что там много 5v контроллеров добавляет удобств.
UFO just landed and posted this here

AVR легко осваивается, есть удобные среды и кучи гайдов. Лучше потратить пару месяцев для изучения простой архитектуры, что бы понять принцип работы с микроконтроллерами, и только потом браться за arm. Принципиально ничем не отличаются, но в кортексах периферия сложнее и менее документирована.

Если речь о Arduino, то чем дольше на нём сидеть тем сложнее будет слезть на что то нормальное. AVR без Arduino среды не чуть не легче…

Arduino != AVR. AVR намного легче освоить, чем stm. Да хотя бы взять систему тактирования. Можно ли в ней с первого раза разобраться? Думаю нет. У аврок же все проще — одна частота на всё: настроил таймер с помощью пары регистров, и вот уже диод мигает. Со всем остальным аналогично.

но в кортексах периферия сложнее и менее документирована.

ой какое не корректное утверждение. кортекс это архитектура ядра, она на сложность периферии практически не влияет.

Периферию прикручивает конкретный производитель, например STM или Nordic. Документацию дают они же. Её сложность только в том, что она написана на английском. Возьмем тех же ST, у них мало того что reference manual есть весьма подробный (в том числе пошаговые инструкции для запуска\настройки), так ещё и куча appNote с подсказками как лучше реализовать ту или иную вещь (например начать экономить мкА перенастроив GPIO пины).

Основная проблема в том, что человек открывает документацию, видит 2298 страниц текста и закрывает со словами ну нафиг это все сложно, задокументировано плохо. При этом из всего это разнообразия для домашних проектов как правило посмотреть GPIO, TIMER, SPI\I2C\USART.

AVR легко осваивается, есть удобные среды и кучи гайдов

Но в этой кучи полезной информации все же мало. Опять же, принцип «бери и делай как я» это не способ
понять принцип работы с микроконтроллерами
Это быстрый способ получить работающий (если повезло) продукт и потешить свое ЧСВ, потому что весьма мало кто работая с готовыми библиотеками или гайдами вникает почему это сделано так. А вдруг сделано не правильно или не оптимально? весьма часто видишь, что вместо использования аппаратных возможностей пишут свою программную реализацию, аргументируя словами тем, что железо работает криво.

кучи гайдов
есть и для STM. Причем на любой вкус хочешь с HALом, хочешь «на регистрах» и на выбор С/С++/Asm. Так что вопрос скорее в желании потратить время на изучение.
UFO just landed and posted this here
Не пробовал VSCode (+PlatformIO) с Stm8, но с Stm32 все, как мне кажется, более чем адекватно работает. Код можно вполне разделить на части, если есть какая-то личная библиотека, то она помещается в папку lib, нужно создать простой json с указанием расположения заголовков и исходников (или вообще разместить их соответственно в папках include/src и тогда вообще ничего делать не нужно). Отладка (говорю про stm32, поправьте, пожалуйста, если в stm8 все действительно по-другому) тоже вроде особых проблем не доставляет: watch-и можно поставить (правда, приходится часто пометить переменную как volatile), все регистры и периферия доступны, окно memory есть, пошаговое выполнение тоже, что еще нужно?
К STM32 я предпочитаю STM32CubeIDE, по отладке с stm8 всё сложно)

Куб из-за возможности в GUI проинициализировать всё и сгенерировать код или сама IDE нравится? Просто сейчас студента озадачил генерацией заготовки проекта из кубовского ioc, но на своем фреймворке, и вот думаю, актуально ли это.

Как IDE и если что то простое, то можно и сконфигурировать там, а так у меня есть проекты даже на libopencm3 в cube ide.
UFO just landed and posted this here
Как раз собирался разучить S003/S103, и Ваша статья очень в тему.
Спасибо
Учитывая то, что из всего разнообразия свободных компиляторов лишь SDCC может работать с STM8, тут как-то не развернешься особо. SDCC почти не умеет оптимизировать код, поэтому заголовочные файлы от ST, где регистры объявляются через структуры (как у STM32), идут лесом! Я писал свое (здесь можно глянуть). Сборка посредством makefile, прошивка при помощи stm8flash. В качестве IDE сначала использовал geany, потом всецело перешел на qt-creator.
Но я как-то забросил восьмибитки: по соотношению цена/качество они значительно уступают STM32. Сейчас пишу все исключительно под STM32F0x2 (на крайняк — STM32F103). Естественно, никакого калокуба. Все свое. Хочу изучить STM32F303, но это когда-нибудь потом.

Стоит заметить что Platformio нормально работает не только с vs code, но и с другими ide. Тот же clion и visual studio. Platformio сам создаст все нужные файлики для вашей ide, если к уже созданному проекту прописать следующую команду:


pio init --ide idename
Вот читаю это, и так и хочется встать и снять шляпу перед инженерами SiLabs, где всё сделано ясно, понятно, и работает без сбоев. Чудовищно приятно, если что бы надеть шляпу не надо снимать трусы. Надеюсь следующее замечание автор воспримет как конструктивную критику — что за «фреймворк»?, что за «хочу писать на регистрах»? Вы не в Техас случайно пишете? С уважением и без иронии, спасибо автору за статью! Было интересно.
где всё сделано ясно, понятно, и работает без сбоев

из-за наличия на работе прокси-сервера так и не смог нормально использовать их IDE, так как не мог докачать недостающие пакеты. а в ручном режиме скачать их не давали, по крайней мере года 2 назад. Так что не все там ясно)
«Потом штурман сказал — Хватит извращений! — и закопал стюардессу» (с)
Да ладно в массовом сегменте до сих пор STM8 популярен, особенно у Китая. Рано ещё закапывать)
Sign up to leave a comment.