LINUX.ORG.RU

Stm32f1 hal, не могу найти SystemCoreClock

 , ,


1

1

Заголовок с объявлением SystemCoreClock подключил, а вот где инициализация лежит так и не понял, греп по каталогу с hal дает только файлы из Examples и Templates.

ЗЫ. А есть какая-нить вменяемая альтернатива hal и spl? А то как-то многовато страданий, начиная с того что их нужно качать руками а значит никакого автоматического резолва заголовков и объектников, и заканчивая упоротостью создателей, типа инклуда хидера, который ты должен сам подложить в проект.

Update: chibios понравилась, решил от неё плясать. libopencm3 гораздо приятнее hal и spl, но для меня всё равно слишком хардкорно.

★★★★★

Последнее исправление: ya-betmen (всего исправлений: 1)

Инициализация в system_stm32f1xx в функциях SystemInit() и SystemCoreClockUpdate()

В старой stdperiph library было там же - это часть ARM CMSIS

Kosyak ★★★★
()
Последнее исправление: Kosyak (всего исправлений: 1)

ЗЫ. А есть какая-нить вменяемая альтернатива hal и spl?

Целая куча, начиная от libopencm3 до всяких RTOS со своими HAL. Я вот ChibiOS обычно использую, как раз из-за приятного API для переферии.

типа инклуда хидера, который ты должен сам подложить в проект.

Добро пожаловать в микроконтроллерный эмбеддед, по другому на сях никак нормально не сделать статическую конфигурацию в компайл-тайм.

Kosyak ★★★★
()
Ответ на: комментарий от Kosyak

Плюсую libopencm3, крайне хороший проект.

CYB3R ★★★★★
()

А то как-то многовато страданий, начиная с того что их нужно качать руками а значит никакого автоматического резолва заголовков и объектников, и заканчивая упоротостью создателей, типа инклуда хидера, который ты должен сам подложить в проект.

Что-то ты перебарщиваешь со страданиями.

Вот пример: https://github.com/speedcontrols/ac_sc_grinder/tree/v2/hal/stm32f042f6. Кубом генеришь в отдельную папку, и особых проблем нет.

Создатели конечно упоротые, но это не особо мешает.

Vit ★★★★★
()
Ответ на: комментарий от Kosyak

Плюсую ChibiOS. В libopencm3 иногда напарывался на баги, а ChibiOS лучше вылизана. Плюс если проект будет расти и усложняться, то RTOS в какой-то момент станет очень большим плюсом.

KivApple ★★★★★
()
Ответ на: комментарий от ya-betmen

Ага. Ну вот смотри, там hal на 3 платы (чипа), и на экспериментах надо частоты подкручивать, ремапить выводы и т.п. С кубом это делается быстро и без вдумчивого чтения мануалов. Начиналось с одного проца. Потом еще два добавилось. Легко и просто.

Не буду тебя агитировать. Просто на случай если решишь юзать куб - по ссылке пример как это привернуть по-быстрому. Оно лежит себе в отдельной папке, куда я не заглядываю, чтобы глаза не взорвались. И все ок.

Просто я не варюсь в этой теме непрерывно, и не держу ничего голове. Поэтому надо чтобы любой мог воткнуть в тему с нуля максимально просто. Возможно есть способы лучше, но я пока не нашел.

Vit ★★★★★
()
Ответ на: комментарий от Vit

Ок, я понял концепцию. Если ниасилю в другом варианте - подумаю ещё раз. Пока для меня выгдлядит как оверкил да и хочется разобраться как оно должно работать без магии. Точнее со знакомой магией.

ya-betmen ★★★★★
() автор топика
Ответ на: комментарий от ya-betmen

https://github.com/puzrin/dispenser

Вот еще пример, где помимо куба прикручен графический драйвер, чтобы гуй без железа лепить.

Я придерживаюсь принципа, что разработка под эмбеды не должна быть чем-то особенным и сакральным. При должной сноровке от железа можно почти целиком абстрагироваться. Очень облегчает жизнь.

Vit ★★★★★
()

HAL говно ещё то, юзаю SPL вперемешку с LL.

AUX ★★★★
()

Пишу инициализацию на гну асме, оттуда дёргаю сишные функции. Никаких внешних зависимостей, убогих калов и прочего треша. Помигать светодиодом, что-то около 40 байт выходит, в то время как с калом или даже с libopencm3 блинки на килобайты тянет. Для относительно порстых проектов в рамках хобби - самое оно.

anonymous
()

ЗЫ. А есть какая-нить вменяемая альтернатива hal и spl?

Недавно открыл для себя Mbed – фреймворк и RTOS от ARM для всех возможных микроконтроллеров на ARM. Используется C++, сам mbed очень прост в использовании, сам я пишу код в VSCode с установленным PlatformIO. Из минусов я пока вижу только то, что он весьма жирный. Некоторые библиотеки (в частности тяжёлые RTOS-фичи) могут не влезть в куцый встроенный флеш STM32F103.

Unicode4all ★★★★★
()
Ответ на: комментарий от Unicode4all

весьма жирный

Да, на этих платках с памятью дефицит.

ya-betmen ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.