STM32F103C8T6 BluePrill замена чипа на STM32L151C8T6A
Добавлено: 07 сен 2025, 10:57
Был собран проект на плате STM32F103C8T6 BluePrill где всё прекрасно работает, но потребление тока оставляло желать лучшего.
Купил чип STM32L151C8T6A и запаял его вместо F103C8T6.
По даташиту ноги идут в "pin to pin", по рекомендации соеденил 1 и 48 ноги (на плате это VBAT и 3,3в) хотя и без этого работало..
Заливаю Blink просто изменив в ArduinoIDE плату на STM32L151C8T6A -- диод PC13 мигает как и положено.
Заливаю свой проект -- где подключено и РАБОТАЕТ:
--A2, A3 (Serial2 - SIM800L) приём вызова, приём/отправка смс
--B10, B11 (Software Serial - GPS) получение координат
--A0, A1 (цифровые выходы для управления нагрузкой) - ОСТАЛЬНЫЕ не хотят, как и диод на PC13 работающий из под блинка(
--A8 (Buzzer)
--B4 (датчик температуры DS18B20)
--B6,B7 (Дисплей HD44780)
НЕ РАБОТАЕТ:
--B0 аналоговый вход (Контроль напряжения) очень важный элемент. Пробовал разные пины не пашет(.
Может как-то связано с Vref PS:
Вывод -- в FLPROG нет контроллера STM32L151, а используя F103CBT6 получаем какое-то внутреннее несоответствие, но если писать код непосредственно в ArduinoIDE то работает.
Предлагали сделать минимум два действия: в CubeMX сравнить распиновку питания и потом в конфигурационных файлах библиотеки ядра (типа variant_generic.h , PeripheralPins.c и подобных) сравнить назначение пинов (портов), установил попробовал не понял)) (ну не силён я в програмировании, поэтому и юзаю FLPROG)
Может есть знающие люди сделать описание в файл STM32L151C8T6A.cdl
Вот мой недоделанный
Купил чип STM32L151C8T6A и запаял его вместо F103C8T6.
По даташиту ноги идут в "pin to pin", по рекомендации соеденил 1 и 48 ноги (на плате это VBAT и 3,3в) хотя и без этого работало..
Заливаю Blink просто изменив в ArduinoIDE плату на STM32L151C8T6A -- диод PC13 мигает как и положено.
Заливаю свой проект -- где подключено и РАБОТАЕТ:
--A2, A3 (Serial2 - SIM800L) приём вызова, приём/отправка смс
--B10, B11 (Software Serial - GPS) получение координат
--A0, A1 (цифровые выходы для управления нагрузкой) - ОСТАЛЬНЫЕ не хотят, как и диод на PC13 работающий из под блинка(
--A8 (Buzzer)
--B4 (датчик температуры DS18B20)
--B6,B7 (Дисплей HD44780)
НЕ РАБОТАЕТ:
--B0 аналоговый вход (Контроль напряжения) очень важный элемент. Пробовал разные пины не пашет(.
Может как-то связано с Vref PS:
Вывод -- в FLPROG нет контроллера STM32L151, а используя F103CBT6 получаем какое-то внутреннее несоответствие, но если писать код непосредственно в ArduinoIDE то работает.
Предлагали сделать минимум два действия: в CubeMX сравнить распиновку питания и потом в конфигурационных файлах библиотеки ядра (типа variant_generic.h , PeripheralPins.c и подобных) сравнить назначение пинов (портов), установил попробовал не понял)) (ну не силён я в програмировании, поэтому и юзаю FLPROG)
Может есть знающие люди сделать описание в файл STM32L151C8T6A.cdl
Вот мой недоделанный