RTL8710AF + STM8L

nikolz

Well-known member
Добрый день,Всем!
В результате анализа различных вариантов, для решения задач с автономным питанием и WIFI решил соединить RTL8710AF и STM8L151G6U6
----------------------------------
В результате получим:
1) цена не более 270 руб.
2) в результате получаем от STM
12-bit DAC with output buffer ЦАП 12 бит (нет в RTL)
12-bit ADC up to 1 Msps/25 channels АЦП 12 бит 25 каналов (нет в RTL)
– T. sensor and internal reference voltage
2 ultra-low-power comparators
– 1 with fixed threshold and 1 rail to rail
– Wakeup capability
Timers
– Two 16-bit timers with 2 channels (used as IC, OC, PWM), quadrature encoder
– One 16-bit advanced control timer with 3 channels, supporting motor control
– One 8-bit timer with 7-bit prescaler
– 2 watchdogs: 1 Window, 1 Independent
– Beeper timer with 1, 2 or 4 kHz frequencies
Communication interfaces
– Synchronous serial interface (SPI)
– Fast I2C 400 kHz SMBus and PMBus
– USART (ISO 7816 interface and IrDA)
Up to 41 I/Os, all mappable on interrupt vectors
Up to 16 capacitive sensing channels supporting touchkey, proximity, linear touch and rotary touch sensors
Development support
– Fast on-chip programming and non intrusive debugging with SWI
-------------------------------
3) энергопотребление.
STM8L обеспечивает
Low power features
– 5 low power modes: Wait, Low power run (5.1 μA), Low power wait (3 μA), Active-halt
with full RTC (1.3 μA), Halt (350 nA)
– Consumption: 195 μA/MHz + 440 μA
– Fast wakeup from Halt: 4.7 μs
============================================
В результате ожидаю получить потребление во время сна не более 20 мка при работающем STM и не более 1 ма при работающем АЦП.
При не работающем STM ток в режиме deep-sleep составит не более 15 мка.
===================================
какие будут ЗА и ПРОТИВ?
 
Последнее редактирование:

=AK=

New member
В результате ожидаю получить потребление во время сна не более 20 мка при работающем STM и не более 1 ма при работающем АЦП.
Поставьте в питание RTL/ESP какой-нибудь одноамперный Load switch, например такой, тогда потребление во время сна можно уменьшить на порядок.
 

nikolz

Well-known member
Поставьте в питание RTL/ESP какой-нибудь одноамперный Load switch, например такой, тогда потребление во время сна можно уменьшить на порядок.
В данном случае я предполагаю, что используется источник питания (батарея) с напряжением не более 3.0 вольт.
При этом никакого стабилизатора не используется.
Устройство будет работать при напряжении батарее от 3 до 1.8 вольт.
STM8 работает прямо от батарее, а RTL(ESP) при включении WIFI через повышающий преобразователь и суперконденсатор.
При этом импульсный ток от батарейки не более 60 ма (меньше пока не получил)
 

Юрий Ботов

Moderator
Команда форума
Согласен с nikolz, stm8 - недооцененная серия, а использование отдельного процессора для специфических задач (требующих много ног, четкой синхронизации, быстрого отклика и т.п.) - хорошая альтернатива.
 

pvvx

Активный участник сообщества
Согласен с nikolz, stm8 - недооцененная серия, а использование отдельного процессора для специфических задач (требующих много ног, четкой синхронизации, быстрого отклика и т.п.) - хорошая альтернатива.
Неудобная альтернатива - 8 бит в 2018 году для домашних поделок? .... :eek:
Оно сто лет считать будет хотя-бы точку росы с датчика влажности. Т.е. вообще в него код расчета в float не влезет.
Представьте на нем решение для простой задачи - пробуждение WiFi-SoC при установленном уровне по точке росы с датчика влажности. :)
На RTL8710BN это решается с тем-же потреблением, как и без внешнего MCU.

B вам что, миллионную серию запускать? Тогда 4-х битник более оправдан (и их доля на рынке до сих пор больше в шт по классу MCU).
 
Последнее редактирование:

nikolz

Well-known member
Неудобная альтернатива - 8 бит в 2018 году для домашних поделок? .... :eek:
Оно сто лет считать будет хотя-бы точку росы с датчика влажности. Т.е. вообще в него код расчета в float не влезет.
Представьте на нем решение для простой задачи - пробуждение WiFi-SoC при установленном уровне по точке росы с датчика влажности. :)
На RTL8710BN это решается с тем-же потреблением, как и без внешнего MCU.

B вам что, миллионную серию запускать? Тогда 4-х битник более оправдан (и их доля на рынке до сих пор больше в шт по классу MCU).
И зачем считать в флоат?
У вас что датчик работает в формате с плавающей?
А понял Вам непонятно что вы будете смотреть на сайте?
А сайта нет в STM8!
Опять плохо?
-------------------------
Вам надо теорию цифровой обработки почитать и вспомнить операции с фиксированной точкой.
 

pvvx

Активный участник сообщества
И зачем считать в флоат?
У вас что датчик работает в формате с плавающей?
А понял Вам непонятно что вы будете смотреть на сайте?
А сайта нет в STM8!
Опять плохо?
-------------------------
Вам надо теорию цифровой обработки почитать и вспомнить операции с фиксированной точкой.
Задача описана и они простейшая. Почитайте теорию цифровой обработки и вспомните операции с фиксированной точкой. Потом залейте это всё в выбранный вами MCU и отпишитесь, как оно и сколько заняло времени и как передаются установки порогов...
Я поступлю проще - возьму MCU менее жручий и в который лезет и float на частных необходимых операциях и операции с фиксированной точкой, при 16..32 разрядах и аппаратные умножения с делениями. Это хотя-бы позволит сделать элементарную децимацию замеров, а не получать неизвестную с чего одну точку в час с датчиков выпадающую из реала...
Ну стоит он больше на чашку чая... Мне не миллион и не миллиард их надо :)
Тем более зачем второй MCU, если есть FPU и толпа режимов малого потребления у RTL8710BN? Он успевает спать между тактами I2C, та и шевелить ногами ему не надо - у I2C есть FIFO и DMA - разбудит проц когда примет с датчиков нужные блоки. 120 мкА у CPU c поддержкой RAM и в постоянной боевой готовности мне погоды не сделают для устройства с десятком подключенных датчиков. Смысл ставить внешний MCU - ножек мало или датчики кривые - мигать десятком светодиодов без драйвера? :)
На ESP-32 тоже уже нет смысла внешнего MCU. Только для ESP8266, т.к. он сам не умеет ничего в таких делах.
 
Последнее редактирование:
Неудобная альтернатива - 8 бит в 2018 году для домашних поделок? .... :eek:
Оно сто лет считать будет хотя-бы точку росы с датчика влажности. Т.е. вообще в него код расчета в float не влезет.
Не знаю конкретно про STM8, последний раз что-то похожее, кажется STM7 я лет 15 назад применял, но на PIC16/PIC18 я считаю floating point, если не надо сильно быстро (а для влажности не надо) без всяких проблем, все влазит. Вот сколько на это уйдет энергии, в сравнении с посчитать тоже самое на 32хразрядном SoC - я не знаю, не исключено, что больше.
 

pvvx

Активный участник сообщества
Не знаю конкретно про STM8, последний раз что-то похожее, кажется STM7 я лет 15 назад применял, но на PIC16/PIC18 я считаю floating point, если не надо сильно быстро (а для влажности не надо) без всяких проблем, все влазит. Вот сколько на это уйдет энергии, в сравнении с посчитать тоже самое на 32хразрядном SoC - я не знаю, не исключено, что больше.
Преобразователь 4..20 мА на для вывода точки росы с датчика SHT75 на PIC24FV32KA301 + XTR117A (всё 5-ти вольтовое) - до 1 мА в скопе (стабилизирует до 4 мА XTR117A и она-же питает датчик и MCU) при float и ШИМ на/до 16 бит (датчик столько не дает и ограничил от греха...). Без всяких sleep на 8.000MHz FRC, CPU CLK 500000 Гц, вся конфига на билдерах и расчет по формуле из PDF от датчика. Иногда и такая хрень бывает...
Выходной и тест (замер полного выхода устройства) генерируемого PWM на RC к XTR117A :) (приложен).
А замер с ADC и работы с UART по прерываниям для RTL8710BN давно вложены.
Не думая*, замер из примера в SDK работы UART в sleep https://esp8266.ru/forum/threads/ehnergopotreblenie-esp-wroom-32.3167/#post-48176 ...
* Не думая, т.к. в примере проц ждет передачи всех символов загнанных в FIFO UART и не переводится в sleep...
Та и SDK писана для детей. Активирование и деактивирование в/из sleep CPU повязана с тиками RTOS и кучи хлама. Всё там заточено под Arduino loop() c поллингом всех событий процом для таких как nikolz. Они других методов работы системы не понимают.
 

Вложения

  • 125.3 KB Просмотры: 2
Последнее редактирование:
Преобразователь 4..20 мА на для вывода точки росы с датчика SHT75 на PIC24FV32KA301
Ну PIC24 - это 16тиразрядная архитектура (я ее как-то пропустил, использую или 8 (pic16, 18) или 32 (pic32mx/mm), и экономия потребления мне до сих пор была не важна, устройства от розетки работают.
 

pvvx

Активный участник сообщества
Ну PIC24 - это 16тиразрядная архитектура (я ее как-то пропустил, использую или 8 (pic16, 18) или 32 (pic32mx/mm), и экономия потребления мне до сих пор была не важна, устройства от розетки работают.
А в данном деле потребовалось 5 вольтов и минимум деталей...
Есть много задач где надо 5 вОльтов для простых задач.... EEVblog #1020 - Is A $7 LCR / Component Tester Any Good? - Page 1 :)
Тогда внешний MCU на 5 В спасет создателя игрушки...
PS: До сих пор к этой фигне никто не прикрутил WEB с показаниями, а там есть выход инфы на UART :) Дисплей не нужен.
 
А в данном деле потребовалось 5 вольтов и минимум деталей...
Есть много задач где надо 5 вОльтов для простых задач.... EEVblog #1020 - Is A $7 LCR / Component Tester Any Good? - Page 1 :)
Тогда внешний MCU на 5 В спасет создателя игрушки...
PS: До сих пор к этой фигне никто не прикрутил WEB с показаниями, а там есть выход инфы на UART :) Дисплей не нужен.
Да, есть такие задачи, я PIC18FxxK40 сейчас использую, он года полтора-два назад появился, работает от 5В, стоит около доллара, и у меня для PIC18 вся "инфраструктура" налажена. И он довольно шустро умеет ножками шевелить, там 64MHz после PLL от внутреннего генератора тактовая, в частности PWM.
 
Сверху Снизу