Перейти к содержанию
    

Где можно подчерпнуть библиотеку для процессора stm32L030?

 

Раньше библиотеки можно было скачать с сайта st.com

сейчас их там нет. например библиотека stm32f10x standard peripheral library была тут, сейчас там "SORRY, PAGE NOT FOUND". Что то поменялось у ST? Теперь библиотек нет? Или они их в куб убрали?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

SPL тут лежит. Но STM вместо SPL теперь HAL продвигает. Где его скачать отдельно - не знаю, но он есть в составе CUBE (+ pdf с документацией). + для этой серии МК есть сниппеты кода.

Изменено пользователем arhiv6

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Нет их. Пользуйтесь сниппетами. Я сам отказался уже для F0-серии от глюкавого opencm3 и пользуюсь только регистрами.

Вообще не вижу смысла на таких дохлых МК еще и калокубом пользоваться... Любителям калокуба нужно что-то жирное, с мегабайтом флеша и как минимум 96МГц.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

SPL тут лежит.
Спасибо. Но это для stm32F0**. А для stm32L0**?

 

 

Я сам отказался уже для F0-серии от глюкавого opencm3 и пользуюсь только регистрами.
можно и регистрами напрямую... но нужен как минимум stm32l03***.h, ну и стартап не помешает.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А для stm32L0**?

 

STM32CubeL0 gathers together, in a single package, all the generic embedded software

components required to develop an application on STM32L0 microcontrollers.

 

http://www.st.com/content/st_com/en/produc...tm32cubel0.html

В самом низу на странице ссылка на библиотеку

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Спасибо. Но это для stm32F0**. А для stm32L0**?

Ой, просмотрел. Для L0 есть HAL, есть сниппеты. А вот SPL для них на глаза ни разу не попадался.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Я сам отказался уже для F0-серии от глюкавого opencm3

Чем не угодил libopencm3?

И почему бы не пофиксить багу и отправить патч?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Кстати, просветите насчёт сниппетов, пожалуйста. Насколько я понял ST отказалась и от них тоже, заменив на HAL Low Level Drivers. Это макро-обёртки над регистрами периферии которыми пользуется верхний уровень самого HAL, но если для каких-то драйверов он избыточен и не применяется, то позволяется напрямую пользоваться этими макросами. Причём, поскольку это тоже относительно новое веяние, то например для F4 серии их я не заметил, хотя в HAL для других линеек они присутствуют.

Изменено пользователем PheeL

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

можно и регистрами напрямую... но нужен как минимум stm32l03***.h, ну и стартап не помешает.

Самостоятельное написание stm32l03***.h с описаниями регистров периферии занимает времени меньше чем Вы тут потратили на написание постов и поиски "библиотек". :laughing:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

можно и регистрами напрямую... но нужен как минимум stm32l03***.h, ну и стартап не помешает.

Снипеты это и есть небоходимые sytem* и startup* файлы с макросами. И примеры/шаблоны их применения.

Похоже ST отказалась от SPL для L0 и F0 серий и сделала снипеты.

http://www.st.com/en/embedded-software/stm...roductId=LN1898

Изменено пользователем Utyff

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Снипеты это и есть небоходимые sytem* и startup* файлы с макросами.

Интересно, чем так страшен стартап? Вот, к примеру, мой:

#include "stm32f0xx.h"
#include <string.h>

extern char __etext, __data_start__, __data_end__, __bss_start__, __bss_end__;
extern int main();

static void
trap(void)
{
   for (;;) ;
}

static void (*vectab[])(void) __attribute((used, section(".vectab"))) =
{
   trap, // NMI
   trap, // HardFault
//    [uART_IRQN + 16 - 2] = uart_handler,
//    [TIM2_IRQn + 16 - 2] = tim2_handler,
};

void __attribute((used, noreturn))
Reset_Handler(void)
{
   // copy-init variables
   memcpy(&__data_start__, &__etext, &__data_end__ - &__data_start__);
   // zero-init variables
   memset(&__bss_start__, 0, &__bss_end__ - &__bss_start__);

   (void)main();
   for (;;) ;
}

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Чем не угодил libopencm3?

Когда после очередного обновления у меня ничего не собралось из-за того, что разрабы охрененно порезали API, мое терпение лопнуло!

Я решил, что только nolib может спасти ситуацию. А наиболее употребимые штуки можно в макросы или static inline запихнуть.

 

Заголовочные файлы я взял в тех же сниппетах (можно из SPL их выдрать, или же из opencm3 — это уже на любителя).

Стартап в виде ассемблерного файла мне показался диким бредом, и я взял стартап у opencm3.

 

Ну и все, можно у меня на гитхабе глянуть, что получилось.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Когда после очередного обновления у меня ничего не собралось из-за того, что разрабы охрененно порезали API, мое терпение лопнуло!

Для тех, кто в танке, они честно признаются заранее: "The API of the library is NOT yet considered stable! Please do not rely on it, yet! Changes to function names, macro names etc. can happen at any time without prior notice!"

Или вы любите ходить по граблям из любви к искусству? :biggrin:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ну, я раньше на это не обратил внимания.

Иначе, если бы сразу перешел на регистры, а не метался между всякой дрянью (сначала даже SPL пробовал, но буквально на одном проекте понял, что то говно), намного меньше времени бы потерял!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Самостоятельное написание stm32l03***.h с описаниями регистров периферии занимает времени меньше чем Вы тут потратили на написание постов и поиски "библиотек". :laughing:

))) я потратил на написание постов суммарно минут 5. во вторых своя библа кроет кучу граблей и требует время на отладку. если нет выверенных путей, придется свой велосипед городить ))

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

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

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...