Stm32F103 схема: Уроки STM32. Плата STM32F103C8T6. Загрузка программы во FLASH-память микроконтроллера через системный бутлоадер.

STM-32 Минимальная аудио плата / Хабр

В ожидании часов спроектировал девайс на STM32. По функциональности задумывалось реализовать простой диктофон или плеер и посмотреть на сколько возможна обработка звука на STM32F103 семействе, хотя бы с использованием Fixed-Point.

Для реализации минимальной аудио платы я взял контроллер который имеет ЦАП, АЦП и может работать с СД картой не только по SPI но и желательно через SDIO. STM32F103RCT6 подходит. Заказал 5 штук на Али за 7$ с копейками, на случай если что-то пойдет не так. Дисплей и горсть электретных микрофонов лежит в запасах. Кварцевые резонаторы думаю взять в ЧипДип.

Разрабатывать в среде разработки STM32CubeIDE32 очень удобно. Можно сконфигурировать HAL в CubeIDE, а потом делать схемотехнику соединений.



Характеристики контроллера

STM32F103RCT6 3xADC 1xDAC, SDIO, USB. На нем есть еще I2S. В дальнейшем можно подключить аудио чип.

Для дебага и заливки используем выводы SWDIO SDCLK. Можно прошивать через UART или USB, но я не пробовал STM32F103 Bootloader (загрузчик). STM32 — входим в bootloader по кнопке.

STM32F103RCT6


Схема подключения контроллера. Дисплей подключается по I2C1. Перемычкой SJ3 можно выставить адрес по которому можно обращаться к дисплею 0x7A или 0x78.

128×64 OLED


Карточка подключается по SDIO. Можно также подключить по SPI, но скорость обмена будет медленнее. SDIO в моем случае работает по 4-ем линиям и коме того SPI интерфейс для карты памяти не «родной» Я подтянул кверху часть выводов, остальные подтянутся программно. Без программной подтяжки будет задействована одна линия.

SD CARD


Усилитель для микрофона и наушников это TS922 двойной операционный усилитель. Как я уже писал в статье он тянет до 80 мА, что вполне достаточно для наушников. Вторая часть микросхемы это усилитель микрофона. Конденсаторы в цепи обратной связи это фильтр высоких частот. Коэффициент усиления K = 1 + Rос/R или 1 + 5100 / 510 = 11 на примере усилителя для наушников. Как рассчитать другие элементы есть в той же статье. Я сделал общий делитель напряжения для задания смещения на входе операционника. тем самым сэкономив пару-тройку компонентов. Хорош ли такой подход? Было исправлено по совету Хабровчан

Amplifiers


Питание сделано через USB LM1117-3.3V.

Добавлено 6 кнопок и некоторые выводы выведены наружу.

P.S. Пока проектировал плату на stm32f103 наткнулся на серию STM32F411. По цене в 2-3 доллара полноценное ядро CortexM4!

Arm Cortex-M4 32b MCU+FPU, 125 DMIPS, 512KB Flash, 128KB RAM, USB OTG FS, 11 TIMs, 1 ADC, 13 comm. interfaces

На нем уже можно и с DSP поиграться. Реализовать IIR фильтр и ревербератор и много еще чего.

Realtime Audio DSP on STM32F4

Но это уже будет другая история.

Autodesk Eagle:

→ STM32AudioLCDMinimal

Замечания и предложения приветствуются.

Серия stm32f103 (STMicroelectronics)

STMicroelectronics

Общие характеристики

Раздел Микроконтроллеры широкого назначения
Напряжение питания
Максимальная частота ядра
Тип памяти программ

Документация на серию stm32f103

  • найти stm32f103.pdf

    Товары серии stm32f103

    Наименование i Упаковка Ядро Память программ RAM T раб Корпус Порты
    STM32F103C4T6 (ST)

     

     

     

    STM32F103C8T6 PBF (ST)

     

    LQFP-48 48-LQFP (7×7)

     

     

     

     

     

     

    STM32F103RBT6 PBF (ST)

     

    LQFP-64

     

     

     

    STM32F103T4U6 (ST)

     

     

    QFN-36 VFQFPN36

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

    stm32f103 публикации

    14 декабря 2021

    статья

    Софья Букреева (г. Протвино) Компания STMicroelectronics предлагает все необходимые компоненты для систем управления коллекторными, бесколлекторными, синхронными и шаговыми двигателями. К услугам разработчиков – драйверы STSPIN, широкий выбор… …читать

    18 июня 2021

    новость

    Программа показатьсвернуть Приглашаем всех желающих принять участие в вебинаре, посвященном работе с графической библиотекой TouchGFX и новой линейке высокопроизводительных микроконтроллеров STM32H7A/B производства STMicroelectronics. Созданные… …читать

    21 июня 2018

    статья

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

    15 января 2018

    статья

    Продолжаем серию статей «STM32 + периферия = LOVE», начатую в конце прошлого года. Простейшие TFT–дисплеи можно подключать к микроконтроллерам STMicroelectronics уже младшей линейки – STM32L0. А такие встроенные в изделия старших линеек… …читать

    21 декабря 2016

    статья

    Чтобы помочь разработчикам при cоздании промышленных контроллеров, производители электронных компонентов предлагают различные референсные схемы. В компании Maxim Integrated пошли дальше и выпустили платформу Pocket IO™ – референсный… …читать

    15 июля 2015

    новость

    Компания STMicroelectronics выпустила на рынок линейку недорогих микроконтроллеров STM32F301 / STM32F302 / STM32F303, которая является продолжением развития микроконтроллеров серий STM32F101 / STM32F102 / STM32F103. Обладая схожими… …читать

    A Blue Pill Датчик температуры LMT01 — неофициальная документация Mecrisp Stellaris 1.0

    Это переписанный предыдущий проект датчика температуры LMT01. Теперь он использует арифметику с фиксированной запятой для вычисления температуры с точностью до одного десятичного знака и имеет некоторые дополнительные функции, такие как доступ к терминалу USB/USART2, считыватель электронной подписи устройства MCU и т. д.

    Он содержит готовый к запуску двоичный файл для 64 КБ. Флэш-версия микроконтроллера STM32F103 Cortex-M3, используемая в Blue Pill, которая загружается с USB при включении питания.

    Подключите несколько компонентов, показанных на схеме ниже, чтобы считать температуру. Он отлично работает без них, но должен жаловаться на отсутствие датчика, если вы попытаетесь прочитать температуру.

    USB

    Используется USB-драйвер Mecrisp-Stellaris для STM32F103 от Jean-Claude Wippler, основанный на USB-драйвере Coreforth от Eckhart Köppen.

    Примечание

    От Виктора Дворжака. Для USB требуется драйвер на стороне ПК idVendor = 0x0483 idProduct = 0x7540, который представляет собой драйвер виртуального COM-порта STM32, описанный в en.DM00478229..pdf. Драйвер en.stsw-stm32102.zip (24755 kB) доступен непосредственно на сайте st.com

    • . Подключите USB-порт «Blue Pill» к ПК и найдите устройство «» в вашей системе.
    • Подключите последовательный терминал ПК к указанному выше USB-устройству, вы можете выбрать любую скорость передачи данных.

    Примечание

    Терминал USB может переключиться на USART2, введя «-usb». Скорость 460800 бод.

    USART2

    Подключите последовательный терминал для считывания температуры.

    USART2 Сигнал микроконтроллера 3,3 В/USB-адаптер
    ПА1 РТС КТС
    ПА2 ТХ РХ
    ПА3 РХ ТХ

    Примечание

    Терминал USART2 может переключиться на USB, введя «+usb».

  • проверьте подпись mcu, введя «stm32id»
  • проверьте содержимое регистра RCC CR, введя «rcc_cr».
  • считать температуру нажатием кнопки PA0

Инструкции

  • Запишите образ ae9236b921613c07b1967f21ff20ee97.
    bin из этого архива на плату STM32F103RBT6 (128 КБ Flash-версия).
  • Загрузите его здесь: https://sourceforge.net/projects/mecrisp-stellaris-folkdoc/files/ae9236b921613c07b1967f21ff20ee97.tar.gz/скачать
  • Подключите несколько компонентов, как показано на схеме ниже, и включите плату.
  • Температуру можно прочитать на терминале, нажав кнопку или введя «T» на терминале.
  • Плата работает на частоте 72 МГц с использованием встроенного кристалла 8 МГц.

Схема

Примечание

Нажмите «C» или «F» для считывания температуры, а не «C», как показано ниже на этой схеме более ранней версии.

Схема синей таблетки

Макет предоставлен Майклом Джеффри.

Содержимое архива

ae9236b921613c07b1967f21ff20ee97.tar.gz

 .
├── ae9236b921613c07b1967f21ff20ee97.DELETE.sh
├── ae9236b921613c07b1967f21ff20ee97.README.md
├── ae9236b921613c07b1967f21ff20ee97.bin
├── ae9236b921613c07b1967f21ff20ee97.flashme
├── ae9236b921613c07b1967f21ff20ee97. words4.txt
├── f103-lmt01.jpeg
├── image.bin
└── lmt01-blue-pill-layout-1.jpg
 

Исходный код

Этот исходный код сам по себе не запустит датчик температуры, однако это не проблема, так как все необходимые слова поддержки установлены в загружаемом готовом к запуску изображении выше. Больше ничего не требуется, просто введите «C» или «F» в терминал или нажмите кнопку, чтобы считать температуру.

Исходный код

~/projects/programming-languages/forth/mecrisp-stellaris/f103-lmt01/f103-lmt01.fs.html
  1 \ Имя программы: f103-lmt01.fs
  2 \ Дата: Пт, 1 ноября 2019 г., 21:02:00 AEDT
  3 \ Copyright 2019 by t.j.porter , под лицензией GPLV2
  4 \ Для этой программы могут потребоваться предварительно загруженные файлы поддержки
  5 \ Для Mecrisp-Stellaris Матиаса Коха.
  6 \ https://sourceforge.net/projects/mecrisp/
  7 \ Чип: STM32F103RBT6, Плата: Olimex P103
  8 \ Часы: 8 МГц с использованием внутренних часов RC, если не указано иное
  9\ Все имена регистров соответствуют CMSIS-SVD
 10 \ Примечание: gpio a,b,c,d,e и uart1 включены в Mecrisp-Stellaris Core. 
 11 \ Требуются предварительно загруженные программы поддержки:
 12 \ Standalone: ​​предварительно загруженные файлы поддержки не требуются
 13 \
 14 \ Эта программа: считыватель датчика температуры Texas Instruments LMT01 для микроконтроллера STM32F103 128 КБ
 15 \ Печатает DegC и DegF отдельно через терминал или вместе при нажатии кнопки (PB0).
 16 \ Использует математику с фиксированной точкой: https://mecrisp-stellaris-folkdoc.sourceforge.io/fixed-point.html?highlight=fixed
 17 \
 18 \ Часы установлены на 72 МГц в upload.main.sh для более быстрой загрузки
 19\ -------------------------------------------------- --------------------------\
 20 \ LMT01: Выходная передаточная функция: Temp (C) = ((count/4096) *256) -50
 21 \ Температура (°C) Количество импульсов
 22\-49,9375 1
 23\-49,875 2
 24\-40 160
 25\-20 480
 26 \ 0 800
 27\30 1280
 28\50 1600
 29\100 2400
 30\150 3200
 31 \
 32 \ ------------------------------------------------ ---------------------------\
 33 \ Описание GPIO
 34 \ ---- -----------
 35 \ PA0 Wake Up PB, обычно низкий: irq$ = 6
 36\PC12 LED (открытый сток к катоду светодиода): здесь не используется
 37 \ PB12 Вход счетчика: irq# = 40
 38 \ PB13 LMT01-1 Активировать
 39\ -------------------------------------------------- --------------------------\
 40 компиляторам
 41 \ скомпилировать прошивку
 42
 43 \ Переменные
 44 0 переменная count. lmt01
 45
 46
 47 \ Слова GPIO
 48 : GPIOB_CRH_MODE13 ( %XX -- ) 20 lshift GPIOB_CRH bis! ; \ GPIOB_CRH_MODE13 Биты режима порта n.13
 49 : GPIOB_CRH_CNF13 ( %XX -- ) 22 lshift GPIOB_CRH bic! ; \ GPIOB_CRH_CNF13 Биты конфигурации порта n.13
 50 : GPIOB_BSRR_BS13 %1 13 lshift GPIOB_BSRR bis! ; \ GPIOB_BSRR_BS13 Установить бит 13
 51 : GPIOB_BSRR_BR13 %1 29lshift GPIOB_BSRR bis! ; \ GPIOB_BSRR_BR13 Сбросить бит 13
 52 : GPIOA_CRL_CNF0 ( %XX -- ) 2 lshift GPIOA_CRL bis! ; \ GPIOA_CRL_CNF0 Биты конфигурации порта n.0
 53 : GPIOA_BRR_BR0 %1 0 lshift GPIOA_BRR bis! ; \ GPIOA_BRR_BR0 Сбросить бит 0
 54
 55 \ Слова прерывания для LMT01 на PB12, падающий триггер. Прерывание №40
 56 : AFIO_EXTICR4_EXTI12 ( %XXXX -- ) 0 lshift AFIO_EXTICR4 bis! ; \ AFIO_EXTICR4_EXTI12 Конфигурация EXTI12
 57 : line.12.unmask %1 12 lshift EXTI_IMR bis! ; \ EXTI_IMR_MR12 Маска прерывания в строке 12
 58 : line.12.mask %1 12 lshift EXTI_IMR bic! ; \ EXTI_IMR_MR12 Маска прерывания в строке 12
 59: EXTI_RTSR_TR12 %1 12 lshift EXTI_RTSR bis! ; \ EXTI_RTSR_TR12 Восходящая триггерная строка 12
 60 : EXTI_FTSR_TR12 %1 12 lshift EXTI_FTSR bis! ; \ EXTI_FTSR_TR12 Спадающая строка триггера 12
 61 : EXTI_PR_PR12 %1 12 lshift EXTI_PR bis! ; \ EXTI_PR_PR12 Ожидание бит 12
 62 : NVIC_ISER1_SETENA ( %XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX -- ) 0 lshift NVIC_ISER1 bis! ; \ NVIC_ISER1_SETENA СЕТЕНА
 63
 64 \ Прерывание для PB по заднему фронту PA0 в качестве триггера.  Прерывание № 6
 65 : AFIO_EXTICR1_EXTI0 ( %XXXX -- ) 0 lshift AFIO_EXTICR1 bis! ; \ EXTI0 конфигурация
 66 : line.0.unmask %1 0 lshift EXTI_IMR bis! ; \ EXTI_IMR_MR0 Маска прерывания на линии 0
 67 : line.0.mask %1 0 lshift EXTI_IMR bic! ; \ EXTI_IMR_MR0 Маска прерывания на линии 0
 68 : EXTI_RTSR_TR0 %1 0 lshift EXTI_RTSR bis! ; \ EXTI_RTSR_TR0 Восходящая триггерная линия 0
 69: EXTI_PR_PR0 %1 0 lshift EXTI_PR bis! ; \ EXTI_PR_PR0 Бит ожидания 0
 70 : NVIC_ISER0_SETENA ( %XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX -- ) 0 lshift NVIC_ISER0 bis! ; \ NVIC_ISER0_SETENA СЕТЕНА
 71
 72 \ Общие слова
 73 : >s31.32 ( u -- s31.32 ) 0 поменять местами ; \ преобразовать целое число в число с фиксированной точкой s31.32
 74 : nvic-priority ( приоритет irq# -- )
 75$E000E400 + c!
 76;
 77
 78 : pa0.pulldown ( -- ) \ PA0 - это кнопка считывания температуры, срабатывающая при поднятии вверх, поэтому добавьте понижение.
 79\ 3 2 1 0
 80 \ CNF0 MOD0
 81 \ 0 1 0 0 ввод по умолчанию, плавающий
 82 \ 1 0 0 0 требуется %10 константа cnf. input.pull.up.down
 83 2 бит GPIOA_CRL bic! \ очистить бит 2
 84 3-битный GPIOA_CRL bis! \ установить бит 3
 85 GPIOA_BRR_BR0 \ с F103, включено понижение, установка выходного бита на низкий уровень
 86;
 87
 88 : pb13-> вывод ( -- )
 89 \ 23 22 21 20
 90 \ CNF13 MODE13
 91 \ 0 1 1 1
 92 %11 GPIOB_CRH_MODE13 \ установить оба бита режима в режиме вывода 50
 93 %11 GPIOB_CRH_CNF13 \ очистить оба бита = push/pull в режиме вывода
 94;
 95
 96 : lmt01.power.on ( -- )
 97 ГПИОБ_БСРР_БС13
 98;
 99
100 : lmt01.power.off ( -- )
101 GPIOB_BSRR_BR13
102;
103
104 : lmt01-ошибка? ( -- ) count.lmt01 @ 0 = ; \ если count.lmt01 >0, ошибки нет
105
106 : lmt01.interrupt.handler ( -- )
107 line.12.mask \ предотвратить повторный запуск line.12 до полной обработки
108 EXTI_PR_PR12 \ сброс триггера в строке 12
1091 счет.lmt01 +! \ увеличить count.lmt01 на единицу
110 line.12.unmask\line.12 теперь можно перезапускать
111;
112
113: lmt01.interrupt.init (#40)
114 1 AFIO_EXTICR4_EXTI12 \ строка PB12
115 строка.12. размаскировать
116 EXTI_FTSR_TR12\падающий триггер на 12 строке
117 ['] lmt01.interrupt.handler irq-exti10 ! \ ссылка exti10 ( на pb.interrupt.handler
118 %100000000 NVIC_ISER1_SETENA \ включить ввод #40
119;
120
121 : read.lmt01 ( lmt01 -- count ) \ чтение датчика, включение, задержка, выключение
122 0 счет.lmt01 !
123 мс.счетчик.сброс
124 lmt01.power.on
125 100 мс.задержка
126 lmt01.power.off
127 lmt01-ошибка? если окно \count закончилось, если нет counts произошла ошибка.
128. "LMT01 НЕИСПРАВЕН ИЛИ НЕ ПРИСУТСТВУЕТ!"
129 еще
130 отсчет.lmt01 @
131 тогда
132 line.0.unmask\pb.interrupt теперь может срабатывать снова
133;
134
135 : convert.count.to.grades.c ( count -- degC ) \ convert count.lmt01 to градусы C
136 >s31.32 \ Temp (C) = ((count.lmt01/4096) *256)-50
137 4096,0 ж/ 256,0 ж* 50,0 д-
138;
139
140 : преобразовать.число.в.градусы.f ( -- )
141 преобразовать.число.в.градусы.c
142 1,8 f* 32 >s31,32 d+ \ °F = °C * 1,8000 + 32,00
143
144;
145
146 : C ( -- ) \ Ярлык печати Deg C
147 читать. lmt01
148 преобразовать.число.в.градусы.c
149 2 л.н. "С" кр
150 ;
151
152 : F ( c -- ) \ Ярлык печати Deg F.
153 читать.lmt01
154 преобразовать.число.в.градусы.f
155 2 ф.н."Ж"кр
156;
157
158 : pb.interrupt.handler ( -- )
159line.0.mask \ предотвратить повторный запуск до полной обработки
160 EXTI_PR_PR0 \ очистить триггер
161 C F cr \ читать температуры
162;
163
164: pb.interrupt.init (#6)
165 0 AFIO_EXTICR1_EXTI0 \ строка PA0
166 line.0.unmask \ размаскировать строку 0
167 EXTI_RTSR_TR0 \ восходящий триггер в строке 0
168 ['] pb.interrupt.handler irq-exti0 ! \ связать exti0 с pb.interrupt.handler
169%1000000 NVIC_ISER0_SETENA \ разрешить прерывание №6
170 ;
171
172 : interrupt.priorities ( -- ) \ самое высокое число имеет самый низкий приоритет
173 100 40 nvic-priority \ lmt01 датчик импульса обнаружения
174 200 6 nvic-приоритет \ кнопка
175 ;
176
177 : инициализация ( -- )
178 72 МГц
179 прерываний.приоритеты
180 systick.init
181 lmt01.interrupt.init
182 пб.interrupt.init
183 pa0.pulldown
184 pb13-> вывод
185 ;
186
187 инициал
188
189компилятор
190
191
192 \ Скриншоты
193 \
194 об/с 35,68 С
195\ ок. 
196\ф 96,23 ф
197\ ок.
198 \ нажать кнопку
199 \ 35,68 С
200 \ 96,34 Ф
201 \
202 \ 35,68 С
203 \ 96,34 Ф
204 \
205 \ read.lmt01 . 1371 ок. <-- необработанный счет @ 35,68 C = 96,34 F
206
 

Играть с Фортом ?

Этот образ представляет собой законченную систему, он содержит компилятор и множество внутренних периферийных регистров, см. файл ae9236b921613c07b1967f21ff20ee97.words4.txt для получения списка того, что там есть.

Интересно, что все они означают? см. Словарь.

Вы можете читать, записывать и проверять регистры, запускать программы и даже фиксировать их во флэш-памяти.

Примечание

, чтобы стереть всю флэш-память, кроме системы Mecrisp-Stellaris Forth по умолчанию, введите «eraseflash» на терминале. Это удалит все из этого проекта, включая USB, и только USART2 будет работать с терминалом. Чтобы переустановить все, просто перепрошейте образ ae9236b921613c07b1967f21ff20ee97.bin на вашу плату.

базовых плат STM32F103

базовых плат STM32F103

23 сентября 2016 г.

Лаборатории клена и листьев

Это дело прошлого. Вероятно, лаборатории Листа опередили свое время.

Идея заключалась в том, чтобы поместить 32-битный ARM в установку в стиле Arduino. Звуки «Клен» были разработаны, чтобы иметь те же физические размеры. и некоторая степень совместимости контактов с Arduino. Какая отличная идея! Почему не полетело? Это выглядело так:

Позже они выпустили изящный маленький «клен_мини», который отказался от физическая совместимость с Arduino, но сохранена Maple IDE система развития. Это выглядело так:

Внимательный читатель заметит, что оригинальный Maple использовал STM32 с большим пакет (с 64 контактами), чем тот, который использовался для Maple-mini (48 контактов). И Maple mini, и китайские «голубые таблетки», с которыми я работал используйте STM32 с меньшим 48-контактным корпусом.

  • Детали кленовой булавки

Платы «сделано в Китае» STM32F103 «синяя таблетка», с которыми я работаю. имеют много общего с Maple Mini, но есть и отличия. Платы Maple имеют кнопку загрузки, а не две перемычки. Загрузочная "кнопка" на maple-mini подключена к PB8, и есть схема отключения USB, управляемая PB9. На большом клене кнопка загрузки подключена к PC9 и отключение USB на ПК12.

  • Схема Maple_mini
  • Github — Leaf labs, Maple Mini
  • Sparkfun: клен
  • Sparkfun: Maple Mini
  • Форум Arduino: Обсуждение Maple (ДОЛГО!)
  • Вики, порожденная выше
  • Форум Arduino: Обсуждение Maple

Клен против Клена Мини

Я искал плату с чипом bona fie SMT32F103 производства ST. Итак, я сделал ставку на три платы Maple r5 на Ebay и получил их за 10 долларов (плюс 10 долларов за доставку). Таким образом, каждый из них будет стоить мне около 7 долларов. Maple использует STM32F103C8T6, как и Maple-mini, что меня удивило.

Maple поместил STM32F103 в форм-фактор Arduino Pro, обеспечив некоторую совместимость. с шилдами Arduino и тому подобным. Наряду с IDE в стиле Arduino, это, безусловно, выглядит как превосходный выбор для меня с этого момента далеко в будущем, но все, что мы можем сделать, это пролить слезу. Первые платы были проданы в 2009 году, r5 продавался в 2010 году.

  • Архив документов Leaf Labs: Maple
  • Кленовая схема
  • BQ24010 техпаспорт (TI, pdf, 22 стр.)
  • MCP1703 техпаспорт (pdf, 32 стр.)
Интересно, что BQ24010 — это литий-ионный чип управления производства Texas Instruments.

Он может питаться от USB, от бочкообразного разъема или от литий-ионного аккумулятора. Перемычка должна быть размещена на соответствующей паре контактов в зависимости от источника питания. Через штекерное гнездо можно подать до 12 вольт, но ближе к 3,3 позволит увеличить ток. без тепловых проблем с бортовыми регуляторами. Бортовые регуляторы - MCP1703 от Microchip. Они имеют падение напряжения 0,625 В (поэтому, когда напряжение литий-ионной батареи падает до 3,9 В).25, игра окончена)

Плата может заряжать литий-ионный аккумулятор (для этого предназначена BQ24010).

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *