Top.Mail.Ru
Уведомления
Очистить все

[Закреплено] Сообщество | Библиотеки для STM32 на C++

Страница 1 / 2
(@eduard)
Level 5 Moderator

Я смотрю, что тему про переход на классы в STM читают. И немного комментируют.

Постоянная ссылка на библиотеки на Яндекс диске https://disk.yandex.ru/d/ymB60PAjT5rjTw

Я не успеваю писать статьи. Библиотеки пеку быстрее. Буду их закидывать по мере готовности и писать здесь об этом.

Если что то понадобится, но непонятно как использовать, задавайте вопросы.

 

Библиотеки зависимые от ядра

Библиотеки работают не со всеми чипами этой серии. Для некоторых чипов достаточно дописать дефайны.
STM32F0xx gpio_main Библиотека работы с портами ввода/вывода Готова
I2C Интерфейс I2C В процессе тестирования
RCC_48_Init Инициализация тактового генератора Готова
SPI Интерфейс SPI В процессе тестирования
stm32f0xx_flash Функции для эмуляции EEPROM В процессе тестирования
Timers Функции millis(), micros(), delay(), delayMicroseconds() Готова
UART Интерфейс UART В процессе тестирования
     
 
STM32F1xx gpio_main Библиотека работы с портами ввода/вывода Не проверялась
RCC_72_Init Инициализация тактового генератора Не проверялась
Timers Функции millis(), micros(), delay(), delayMicroseconds() Не проверялась
       
 
STM32F2xx gpio_main Библиотека работы с портами ввода/вывода Не проверялась
RCC_HSE_Init Инициализация тактового генератора Не проверялась
Timers Функции millis(), micros(), delay(), delayMicroseconds() Не проверялась
       
STM32F3xx gpio_main Библиотека работы с портами ввода/вывода Готова
I2C Интерфейс I2C В процессе тестирования
RCC_HSE_Init Инициализация тактового генератора Готова
SPI Интерфейс SPI В процессе тестирования
Timers Функции millis(), micros(), delay(), delayMicroseconds() Готова
UART Интерфейс UART В процессе тестирования
 
STM32F4xx EXTI_Int Работа с внешними прерываниями В процессе тестирования
gpio_main Библиотека работы с портами ввода/вывода Готова
I2C Интерфейс I2C Готова
RCC_HSE_Init Инициализация тактового генератора Готова
RTC Часы реального времени Готова без будильников
SPI Интерфейс SPI В процессе тестирования
TIM_Base Работа с базовыми таймерами Готова
Timers Функции millis(), micros(), delay(), delayMicroseconds() Готова
UART Интерфейс UART Готова
       
STM32L0xx ADC АЦП В процессе тестирования
EEPROM Работа с EEPROM В процессе написания
EXTI_Int Работа с внешними прерываниями В процессе тестирования
gpio_main Библиотека работы с портами ввода/вывода Готова
RCC_32_Init Инициализация тактового генератора Готова
SPI Интерфейс SPI В процессе тестирования
Timers Функции millis(), micros(), delay(), delayMicroseconds() Готова
UART Интерфейс UART Готова
       
STM32L1xx EEPROM Работа с EEPROM В процессе тестирования
  gpio_main Библиотека работы с портами ввода/вывода Готова
  I2C Интерфейс I2C В процессе тестирования
  RCC_32_Init Инициализация тактового генератора Готова
  TIM_Base Работа с базовыми таймерами Готова
  Timers Функции millis(), micros(), delay(), delayMicroseconds() Готова


Библиотеки независимые от ядра

AT24Cxx Работа с EEPROM фирмы Microchip Готова
Colors Коды цвета для графических библиотек Готова
FSMC16_TFT Управление 16 бит дисплеем по FSMC ILI9341 Рабочая, для какого дисплея не помню, использую как сырец
FSMC_RA8875 Управление 16 бит дисплеем по FSMC на чипе RA8875 Рабочая, требует оптимизации
functions Функции, которые бывают необходимы Всяко, разно
GFX_Button Кнопки для графического дисплея Готова, скрещивается с библиотеками TouchScreen
GFX_TFT Графическая библиотека по образу Adafruit GFX Готова
gfxfont Шрифт 5х7 для графических библиотек Готова
HX8347_8bit Управление дисплеем на чипе HX8347 8 бит. На ногодрыге Готова
ILI9341_8bit Управление дисплеем на чипе ILI9341 8 бит. На ногодрыге Готова
ILI9341_FSMC16 Управление 16 бит дисплеем по FSMC на чипе ILI9341 Готова
IO_Digital Класс для работы с портами ввода/вывода Готова
LCD780 Работа с LCD1602 — LCD2404 на ногодрыге Рабочая, требует оптимизации
OneWire OneWire библиотека на ногодрыге Готова, на ногодрыге
Print Класс print для устройств ввода/вывода Готова
RingFIFO FIFO для UART Готова
RM68140_8bit Управление дисплеем на чипе RM68140 8 бит. На ногодрыге Не запустил
RS485 RS485 — протокол придуманный Mikroelektronika, расширенный Готова, требует проверки, нашёл ошибки
SButton Библиотека Button с форума Гайвера Готова
SDallas Библиотека для DS18B20 Готова
SPI_Soft SPI на ногодрыге Готова
ST7735_SPI Управление дисплеем на чипе ST7735. На SPI Готова для одного типа контроллера. В идеале должно быть 5 штук
STimer Библиотека Timer с форума Гайвера Готова
STM_BME280 Класс для работы BME/BMP280 через I2C Готова
STM_HDC1080 Класс для работы HDC1080 через I2C Готова
STM_SGP30 Класс для работы SGP30, SGPC3 через I2C Готова
Цитата
Создатель темы Размещено : 05.02.2022 20:45
Метки темы
 Newt
(@newt)
Level 1

Добрый день, у меня выдает ошибку

'SysTickConfig' was not declared in this scope; did you mean 'SysTick_Config'? RCC_HSE_Init.cpp /F407VExx_RCC/Stm32F4xx/Src line 131 C/C++ Problem

 

ОтветитьЦитата
Размещено : 06.02.2022 16:44
(@eduard)
Level 5 Moderator

Да, ошибка будет.

Я ещё не всё написал в этой статье. И предупреждал, что так и будет.

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

А всё предыдущее получилось?

ОтветитьЦитата
Создатель темы Размещено : 06.02.2022 17:09
 Newt
(@newt)
Level 1
От: @eduard

Да, ошибка будет.

Я ещё не всё написал в этой статье. И предупреждал, что так и будет.

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

А всё предыдущее получилось?

Спасибо за ответ! Да я так и подумал, что это в следующей статье будет решено. Я по шагам не проходил, взял по ссылке проект и стал его изучать более подробно, читая текст параллельно.

ОтветитьЦитата
Размещено : 07.02.2022 10:23
(@eduard)
Level 5 Moderator

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

Устройство очень сложное. И всё переводить на классы сложно и бесполезно.
Первое, что приходит в голову - ШИМ.
Давайте идеи, что может понадобится довольно часто.

ОтветитьЦитата
Создатель темы Размещено : 09.02.2022 06:28
(@sergey-dronov)
Level 1
От: @eduard

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

Устройство очень сложное. И всё переводить на классы сложно и бесполезно.
Первое, что приходит в голову - ШИМ.
Давайте идеи, что может понадобится довольно часто.

Режим захвата мне кажется после ШИМ наиболее популярен. Ну и конечно обычная работа с генерацией прерывания через заданный интервал времени.

ОтветитьЦитата
Размещено : 09.02.2022 14:27
(@eduard)
Level 5 Moderator

Принято.
Сейчас занимаюсь I2C. Раньше надобности не было.

ОтветитьЦитата
Создатель темы Размещено : 09.02.2022 21:29
(@grolaps)
New member

@eduard I2C по слухам самая проблемная периферия в stm32...

ОтветитьЦитата
Размещено : 14.02.2022 14:34
(@eduard)
Level 5 Moderator

@grolaps Как раз с ним и мучаюсь на данный момент.

ОтветитьЦитата
Создатель темы Размещено : 14.02.2022 18:55
Aveal
(@aveal)
Top level Admin
От: @eduard

@grolaps Как раз с ним и мучаюсь на данный момент.

Как успехи?

 

ОтветитьЦитата
Размещено : 18.02.2022 14:13
(@eduard)
Level 5 Moderator

Амбец с ним геморой. Неделю бился только с тем, что адрес EEPROM на шину не выдавала. Сегодня получилось. Теперь нужно дописать чтение байт.

С записью я думаю проще будет. Уже понятно что и как делать.
Я UART запустил за два дня. А тут на каждый чих реагировать нужно.

ОтветитьЦитата
Создатель темы Размещено : 18.02.2022 19:18
Aveal
(@aveal)
Top level Admin
От: @eduard

Амбец с ним геморой. Неделю бился только с тем, что адрес EEPROM на шину не выдавала. Сегодня получилось. Теперь нужно дописать чтение байт.

С записью я думаю проще будет. Уже понятно что и как делать.
Я UART запустил за два дня. А тут на каждый чих реагировать нужно.

Да, I2C в этом плане более трудоемкая.

 

ОтветитьЦитата
Размещено : 21.02.2022 17:30
(@norther)
New member

Я попробовал пример с GPIO - собралось, работает все верно, спасибо.

ОтветитьЦитата
Размещено : 21.02.2022 19:10
(@eduard)
Level 5 Moderator

@norther Далеко не уходите.

Праздники отпраздную. Продолжим.

😉

ОтветитьЦитата
Создатель темы Размещено : 21.02.2022 20:04
Aveal
(@aveal)
Top level Admin

@eduard

👍 

ОтветитьЦитата
Размещено : 22.02.2022 12:58
Страница 1 / 2
Поделиться: