реклама на сайте
подробности

 
 
> Компиляция для разных МК
Злодей
сообщение Nov 25 2013, 14:21
Сообщение #1


Частый гость
**

Группа: Участник
Сообщений: 149
Регистрация: 29-04-08
Из: Петербург
Пользователь №: 37 142



Доброго времени суток!

Для придания гибкости, и чтобы просто лишний раз переработать код решил сделать проект компилируемым для двух линеек МК (STM32F1 и STM32F3). Неприятной неожиданностью оказалось отличие в API периферии. Код, работающий с GPIO и тактовым генератором несовместим, дальше не смотрел.

Остаётся только городить абстракцию над периферией и скриптом сборки, реализовывать два варианта под F1 и F3. Собственно это и так почти сделано для F1.

Вопрос в том, типичный ли это подход или я придумал ерунду?

Спасибо.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Злодей
сообщение Nov 25 2013, 14:49
Сообщение #2


Частый гость
**

Группа: Участник
Сообщений: 149
Регистрация: 29-04-08
Из: Петербург
Пользователь №: 37 142



В доке “Migrating from STM32F1 to STM32F3 microcontrollers” есть намёк на условную компиляцию. В ней прямо сравнения исходников, и жирным выделено, какие куски отличаются у F1 и F3.

Теоретически, подходы можно мешать, для третей платформы сделать отдельный модуль.
Go to the top of the page
 
+Quote Post
demiurg_spb
сообщение Nov 26 2013, 08:25
Сообщение #3


неотягощённый злом
******

Группа: Свой
Сообщений: 2 746
Регистрация: 31-01-08
Из: Санкт-Петербург
Пользователь №: 34 643



Привет! Что с java завязал уже?

Не надо изобретать велосипед, стоит пользоваться трудами предшественников...
http://libopencm3.org/wiki/Main_Page
-эта либа предоставляет унифицированный интерфейс не только для семейства STM32, но и для кортексов-м от других производителей.
Единственный её минус - это то, что она достаточно активно развивается и её интерфейсы пока не шибко стабильны.



--------------------
“Будьте внимательны к своим мыслям - они начало поступков” (Лао-Цзы)
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 19th August 2025 - 19:10
Рейтинг@Mail.ru


Страница сгенерированна за 0.01407 секунд с 7
ELECTRONIX ©2004-2016