Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Возмущён до глубины души убогим управлением питанием в STM32F4xx
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > ARM
Страницы: 1, 2
Dr.Alex
Как должно быть::
Проц запитан только от Vbat, работает RTС. По аларму от часов на некоем пине появляется "1", которая включает импульсные источники 1.2В (ядро) и 1.8В (ИО).
Так, например, сделано в блэкфинах.

Как есть::
На проц ВСЕГДА приходится подавать 1.8В, только в этом случае он может проснуться по аларму.
Что это влечёт? Во-первых, в полтора раза больше потребляемая мощность в активном режиме, так как 1.2В получается внутренним линейником из 1.8. Страшно подумать, что если у кого-то нет возможности питать ИО от 1.8, а нужно иметь скажем 3.3, это же в 3 раза больше потребление!
Но это ещё не всё. Будь у вас ИО хоть 3.3, хоть 1.8, но если вы питаетесь даже от одной литиевой банки, то всё равно должны держать включенный всегда внешний линейник или импульсник, который из 4.2 (условно) делает 3.3. Даже если это линейник, то у него потребление 10-50 мкА, что отсылает коту под хвост и Stop mode, и Standby mode с их потреблением ~1мкА. Конечно, в принципе существуют линейники с потреблением 1 мкА, но это большая редкость, может не подойти по другим параметрам. Да и вообще там импульсник должен быть.


Или может быть я просто давно не брал в руки микроконтроллеры и пропустил что-то важное?
SasaVitebsk
Не могу опровергнуть или подтвердить Ваши выводы, мне потребление было не важно, но, хотелось бы отметить, что при питании "чисто от батарейки RTC" вывод калибровки с RTC выходит наружу кристалла. Не думаю, что выход аларма не будет выходить. То есть сделайте двухстадийно. По будильнику запустите питание, а потом стартаните проц.
Aner
Как должно быть, Как есть, ... это только изучаете даташит, а что будет когда писать и отлаживать будете ... Несколько проектов запустил в серию и ничего. В девайсе самая жрущая - подсветка дисплея, звук. Все остальное ерунда, и все трудиться от Li-ion_а без проблем и особых утечек если делать по уму. DC/DC c потреблением 1 мкА, это большая редкость, это точно обычные серейные 200...400nA то, что использую.
SSerge
Цитата(Dr.Alex @ Jul 15 2014, 05:44) *
Или может быть я просто давно не брал в руки микроконтроллеры и пропустил что-то важное?

О малопотребляющих режимах никто особо не заботился, тем более для F4xx.
Для тех кто экономит каждый микроампер есть EFM32.
Dr.Alex
Цитата(SSerge @ Jul 15 2014, 12:53) *
О малопотребляющих режимах никто особо не заботился, тем более для F4xx.


Вот именно этим я и возмущён. В 400-мегагерцовых блэкфинах почему-то позаботились, а здесь почему-то нет. У создателей Ф4хх мания величия? Они считают свой контроллеришко равным Core i7, где не надо ничего экономить?
И вообще, ведь микроамперные режимы ЕСТЬ, но использовать их невозможно. Зачем старались? Людей насмешить?


Цитата(SSerge @ Jul 15 2014, 12:53) *
Для тех кто экономит каждый микроампер есть EFM32.


А почему сразу не AVR или PIC?
Неужели непонятно, что часто экономить нужно не столько в активном режиме, сколько в режиме "устройство выключено"? Вам не знакомо это странное чувство, когда ваш телефон во включенном состоянии работает 4 дня, а в выключенном разряжается за неделю??


Цитата(Aner @ Jul 15 2014, 12:14) *
В девайсе самая жрущая - подсветка дисплея, звук. Все остальное ерунда, и все трудиться от Li-ion_а без проблем и особых утечек если делать по уму.


Ну так расскажите мне, дспшнику-дураку, как сделать "по уму" и без утечек, чтобы аккумулятор не разряжался когда устройство выключено?


Цитата(Aner @ Jul 15 2014, 12:14) *
DC/DC c потреблением 1 мкА, это большая редкость, это точно обычные серейные 200...400nA то, что использую.


:-))))) За базар ответите? Где dcdc с таким потреблением ВО ВКЛЮЧЕНОМ режиме, а не в шатдауне?

Цитата(SasaVitebsk @ Jul 15 2014, 09:57) *
вывод калибровки с RTC выходит наружу кристалла. Не думаю, что выход аларма не будет выходить. То есть сделайте двухстадийно. По будильнику запустите питание, а потом стартаните проц.


Не совсем понял вас. Не могу обнаружить выходов аларма. Думаю что это чисто внутреннее событие. Не уточните?
digital

ну линейники, не импульсники вполне представлены во всем многообразие

к примеру,
http://www.ti.com/product/tps78218
Integro
Цитата(Dr.Alex @ Jul 15 2014, 12:59) *
Не совсем понял вас. Не могу обнаружить выходов аларма. Думаю что это чисто внутреннее событие. Не уточните?


Поищите в доке информацию о RTC_AF1 и RTC_AF2
Dr.Alex
Цитата(digital @ Jul 15 2014, 14:59) *
ну линейники, не импульсники вполне представлены во всем многообразие
к примеру,
http://www.ti.com/product/tps78218

Я знаю что они есть, но их очень мало, поэтому нет выбора. Например, нет таковых в маленьких корпусах. TSOT-23 и SON6 размером 2х2 это извините..


Цитата(Integro @ Jul 15 2014, 15:11) *
Поищите в доке информацию о RTC_AF1 и RTC_AF2

Спасибо, нашёл. Но непонятно, удастся ли это использовать. Может ли кто-то из опытных пользователей подтвердить, что этот выход можно использовать для управления питанием? В доке нет никаких намёков на это, а значит может возникнуть масса проблем. Например:: при первом запуске проца этот выход ещё никак не сконфигурирован, и некому будет включить питание.
kan35
Не вижу проблемы.
Не совсем ясно, автор хочет пробуждать не запитанное ядро? Или от домена RTC запитать от литиевой батарейки?

В standby потребление 1цы микроампер. Хотите малое потребление - ставьте LDO с низким током покоя. У ST есть уже DC-DC с уровнем потребления 30мкА, а вы про LDO сомневаетесь.
Кроме того, есть контроллеры STM32L0 для батарейных устройств. Там вариантов больше и параметры лучше на порядок.
Dr.Alex
Цитата(kan35 @ Jul 15 2014, 19:45) *
Не вижу проблемы.
Не совсем ясно, автор хочет пробуждать не запитанное ядро? Или от домена RTC запитать от литиевой батарейки?

В standby потребление 1цы микроампер. Хотите малое потребление - ставьте LDO с низким током покоя. У ST есть уже DC-DC с уровнем потребления 30мкА, а вы про LDO сомневаетесь.
Кроме того, есть контроллеры STM32L0 для батарейных устройств. Там вариантов больше и параметры лучше на порядок.


Я что-то тоже уже ничего не понимаю. То ли уровень сегодняшних микроконтроллерщиков так упал, что простых вещей не понимают, либо я со своими фпга-дсп совсем отстал от жизни.

1) Вы предлагаете ЛДО с потреблением 1 мкА. Ну так назовите же его?! При этом поймите, что если я использую контроллер размером 4х4х0.6 мм, мне наверное не очень нужен линейник размером 2х2х0.8 мм? Логично?

2) Теперь активный режим. Допустим, мы таки нашли ваш волшебный ЛДО. Проц на максимальной частоте хавает 50-100 мА. У нас простой выбор:: умножить эту цифру примерно на 1.2 (если используется импульсник), либо примерно на 4, если линейник. То есть 60-120 мВт или 200-400 мВт. Нормально? Импульсник использовать не можем из-за первого пункта.
dac
QUOTE (Dr.Alex @ Jul 15 2014, 04:44) *
Как должно быть::
Проц запитан только от Vbat, работает RTС. По аларму от часов на некоем пине появляется "1", которая включает импульсные источники 1.2В (ядро) и 1.8В (ИО).
Так, например, сделано в блэкфинах.
Как есть::
На проц ВСЕГДА приходится подавать 1.8В, только в этом случае он может проснуться по аларму.
Что это влечёт? Во-первых, в полтора раза больше потребляемая мощность в активном режиме, так как 1.2В получается внутренним линейником из 1.8. Страшно подумать, что если у кого-то нет возможности питать ИО от 1.8, а нужно иметь скажем 3.3, это же в 3 раза больше потребление!
Но это ещё не всё. Будь у вас ИО хоть 3.3, хоть 1.8, но если вы питаетесь даже от одной литиевой банки, то всё равно должны держать включенный всегда внешний линейник или импульсник, который из 4.2 (условно) делает 3.3. Даже если это линейник, то у него потребление 10-50 мкА, что отсылает коту под хвост и Stop mode, и Standby mode с их потреблением ~1мкА. Конечно, в принципе существуют линейники с потреблением 1 мкА, но это большая редкость, может не подойти по другим параметрам. Да и вообще там импульсник должен быть.
Или может быть я просто давно не брал в руки микроконтроллеры и пропустил что-то важное?

а че за истерика то? не знаете современной элементной базы - так изучайте. LDO с потреблением менее 1мкА в активном режиме как грязи. всяких микросхем для аккумуляторного/батарейного питания тоже. импульсник вообще никому ничего не должен, особенно если 4мм2 это много
QUOTE (Dr.Alex @ Jul 15 2014, 04:44) *
мне наверное не очень нужен линейник размером 2х2х0.8 мм

не подходит stm - выберете другой - блэкфин wink.gif
QUOTE (Dr.Alex @ Jul 15 2014, 04:44) *
Допустим, мы таки нашли ваш волшебный ЛДО.
TPS782xx - я маг! santa2.gif
изучайте современные Power Mаnаgement IC, потом уж за процессор беритесь. ну и если на сайте TI забанили, а параметрический поиск использовать религия не позволяет, подскажу - TPS62080 - step-down с собственным потреблением 6.5мкА
Прошу прощения за язвительность, но уж сильно топик навеял maniac.gif
Dr.Alex
Цитата(dac @ Jul 15 2014, 21:21) *
а че за истерика то? не знаете современной элементной базы - так изучайте. LDO с потреблением менее 1мкА в активном режиме как грязи. TPS782xx - я маг!
изучайте современные Power Mаnаgement IC, потом уж за процессор беритесь.


Научитесь сперва читать, а потом уж писать беритесь.
dac
QUOTE (Dr.Alex @ Jul 15 2014, 23:41) *
Научитесь сперва читать, а потом уж писать беритесь.
ну нормальный инженерный аргумент, когда обосновать нечем. а можно было и спасибо сказать за решение проблемы.
ЗЫ - для "умеющих читать" - в документации ясно написано, при питании от Vbat GPIO все отключены, поэтому либо нормально делайте питание, либо меняйте процессор. Вас извиняет только качество документации от ST sm.gif - тот еще квест
еще намек для "умеющих читать" - TPS782xx есть в SON-корпусе.
Dr.Alex
Цитата(dac @ Jul 15 2014, 22:03) *
а можно было и спасибо сказать за решение проблемы.
еще намек для "умеющих читать" - TPS782xx есть в SON-корпусе.


Не, ну чё тут сказать... Могу только повторить:: не научившись читать, не пишите. А лучше не пишите в мою тему вообще.
kan35
Вы наверное ожидаете от general purpose mcu каких то процессорных наворотов в плане управления питания. Это не тот продукт. Новые STM32F4 потребляют 100мкА/МГц, на 100МГц - 10мА, так что городить сложное питание не так уж критично важно.
adnega
Цитата(Dr.Alex @ Jul 15 2014, 02:44) *
Как должно быть::
Проц запитан только от Vbat, работает RTС. По аларму от часов на некоем пине появляется "1", которая включает импульсные источники 1.2В (ядро) и 1.8В (ИО).

Вроде, ноги PC13, PC14, PC15 и PI8 питаются от батарейки через ключ.
PC14 и PC15 - ноги для часового кварца.
На ногу PC13 можно вывести в том числе один из будильников. Думаю, на пине будет смена уровня при сработке будильника даже при отключенном основном питании. Вас такой вариант устроит? Нужно проверять в железе?
Dr.Alex
Цитата(kan35 @ Jul 15 2014, 22:26) *
Вы наверное ожидаете от general purpose mcu каких то процессорных наворотов в плане управления питания. Это не тот продукт. Новые STM32F4 потребляют 100мкА/МГц, на 100МГц - 10мА, так что городить сложное питание не так уж критично важно.


Как это вам удалось всё с ног на голову перевернуть.. В "процессорах" как раз обычно никаких наворотов и нет, всё это с однокристалок началось, а там уж поползло и в чипы посложнее. Неужто было трудно сделать один лишний пин WAKE, который, работая в батарейно-часовом повер-домене, включит питание других доменов?
Ну хотя бы для того, чтобы в доке не было позорной сноски
"When the microcontroller is supplied from VBAT, RTC alarm/events do not exit it from VBAT operation."
Или вот этой:
"The standby mode is not supported when the embedded voltage regulator is bypassed and the 1.2 V domain is controlled by an external power."

А насчёт потребления.... Ну я же привёл данные из доки - от 50 до 100 мА на максимальной частоте, а далеко не 10.

Цитата(adnega @ Jul 15 2014, 22:40) *
Вроде, ноги PC13, PC14, PC15 и PI8 питаются от батарейки через ключ.
PC14 и PC15 - ноги для часового кварца.
На ногу PC13 можно вывести в том числе один из будильников. Думаю, на пине будет смена уровня при сработке будильника даже при отключенном основном питании. Вас такой вариант устроит? Нужно проверять в железе?


Про это уже тут писали, насколько я понял, нужный пин называется TAMP_1 или RTC_AF1, но мне непонятно, кто включит питание после того как юзер к примеру заменит батарейку, ведь этот пин нужно сначала сконфигурировать, чтобы он что-то выдавал.
adnega
Цитата(Dr.Alex @ Jul 15 2014, 22:45) *
Про это уже тут писали, насколько я понял, нужный пин называется TAMP_1 или RTC_AF1, но мне непонятно, кто включит питание после того как юзер к примеру заменит батарейку, ведь этот пин нужно сначала сконфигурировать, чтобы он что-то выдавал.

"Тампер" - это вход. Я говорю, про ALARM_A и ALARM_B это выходы.
После замены батарейки подаем питание с кнопки. Софт может увидеть факт замены/сбоя конфигурации и все восстановить.
Я в уважаемом вами процессоре как сделано (сбой после замены батарейки)?
Dr.Alex
Цитата(adnega @ Jul 15 2014, 23:03) *
"Тампер" - это вход. Я говорю, про ALARM_A и ALARM_B это выходы.


Да понятно, просто пин так в доке называется. По-разному в 417 и 439.


Цитата(adnega @ Jul 15 2014, 23:03) *
А в уважаемом вами процессоре как сделано (сбой после замены батарейки)?


Элементарно. Там этот пин "железный", конфигурить его не надо. Он выдаёт единицу по сбросу (подаче питания) всегда, а там уж прога может навесить на него другие события типа алармов или внешних прерываний.

Цитата(adnega @ Jul 15 2014, 23:03) *
После замены батарейки подаем питание с кнопки. Софт может увидеть факт замены/сбоя конфигурации и все восстановить.


Ну можно конечно жать технологическую кнопку после установки батареи, но это не очень хорошо, непонятно куда этафсё приведёт
dac
QUOTE (Dr.Alex @ Jul 16 2014, 00:21) *
Не, ну чё тут сказать... Могу только повторить:: не научившись читать, не пишите. А лучше не пишите в мою тему вообще.
а Вы яснее выражайте свои мысли, пока одни эмоции - "почему в 4хх не сделано как в блэкфине" и на каждый совет взаимоисключающие ответы.
ну и последний пост, больше не буду sm.gif
Вы идете от мк и его особенностей, а надо от задачи, может и потребление такое не надо, и LDO выше крыши, а может процессор в принципе эту задачу решить не может

имхо надо считать от условий: прибор должен работать Х месяца от аккумулятора Y ач в режиме 1/N. отсюда видно потребление и выбор схемы питания и процессора.
вариант задачи "как можно дольше" сводится к вышеуказанному добавлением формулировки "но не менее"

Для примера: при потреблении 10мкА (STOP режим, даже не sleep) от аккумулятора емкостью 1000мАч (имхо для 4хх меньше смысла нет) прибор будет жить 10 лет. при соотношении времени 1/100 и 100мА в активном режиме - 40 дней. т.е потребление в спячке до 100мкА уменьшение срока работы на 4 дня вообще пофиг. разброс емкости от аккумуляторов будет больше. а импульсников с потреблением 100мкА в активном режиме выбор немаленький.
при маленьком времени активной работы 1/1000 например - уже LDO рулит и уже можно забить на потребление в активном режиме. Соотношение оптимальности посчитаете сами. эксель поможет.

и не забываем схему внешних потребителей, например кнопка/внешний сигнал с подтяжкой 100кОм будет есть 180мкА при питании 1.8В. это все решаемо, но учитывать тоже надо. на всякий случай - сейчас и ОУ есть с потреблением меньше мкА, только тормозные.
учитываем что минимальная площадь LDO для собственного тока менее 1мкА - 4мм2, от 8мкА и выше есть 1мм2.

ЗЫ: в 4хх RC13 доступен даже если использовать кварц, я забыл про него, и может включать внешний источник питания. хотя имхо бесполезный вариант по вышеуказанным причинам
Dr.Alex
Цитата(dac @ Jul 15 2014, 23:27) *
имхо надо считать от условий: прибор должен работать Х месяца от аккумулятора Y


Ну вот, хоть какое-то дело начинаете говорить. Я даже могу с этим согласиться.

Но я сознательно поставил вопрос по-другому:: какого хрена ST потратили усилия, чтобы сделать спящий режим при работающих часах с потреблением 0.66 мкА, но сделали так, что это невозможно использовать?? Хотя как это сделать - совершенно понятно и давно сделано в ДРЕВНИХ блэкфинах например. (Справедливости для, блэкфин будет десятки мкА хавать при работающих часах.)

А если так как вы рассуждать, то зачем вообще существует тот же линейник 0.5 мкА или часики 0.35 мкА? Кому-то нужно значит.
adnega
Короче, опыт нас рассудит.
Попробовал - получилось.
Настроил часы и будильник. Ногу PC13 на выход будильника ALARM_A после 20 сек работы. По умолчанию вывод с open-drain, сделал push-pull.
Подаю питание, сбрасываю часы, счет начинается с нуля. Затем отрубаю внешнее питание, остается только батарейка. Через 20 секунд от момента сброса часов вижу замечательные 3.11В на выводе PC13. В настройках модуля можно выбрать тип выхода (open-drain или push-pull) и активный уровень.
Мир?

PS. Вытащил-вставил батарейку вывод PC13 ушел в HiZ.

PS2. @ STM32F427ZGT6
Dr.Alex
Цитата(adnega @ Jul 16 2014, 00:08) *
PS. Вытащил-вставил батарейку вывод PC13 ушел в HiZ.


Так то-то и оно, что батарейку вытащил и опа..

Или вы предлагаете подтянуть его резюком к единице?
adnega
PS3. MASTECH MY62 показывает 0мкА при идущих часах и взведенном будильнике. При сработке будильника показывает 3мкА - при этом вывод PC13 нагружен на вход вольтметра MASTECH M-832.

Цитата(Dr.Alex @ Jul 16 2014, 00:12) *
Так то-то и оно, что батарейку вытащил и опа..
Или вы предлагаете подтянуть его резюком к единице?

Вариантов масса, но мне кажется замена батарейки событие редкое, и запуск с ручника вполне допустим.
Типа, заменил батарейку, подал питание с кнопки (т.е. кнопка заведена не только на проц, но и на включение DC-DC).
Подержал кнопку, пока RTC не проинициализируется. Самый дешевый способ в плане мкА.
Следующий этап для поднятия "юзерфрэндли" решить какую батарейку меньше жалко (часовую или аккумулятор) и следать подтяжку резистором.
dac
QUOTE (Dr.Alex @ Jul 16 2014, 01:41) *
Ну вот, хоть какое-то дело начинаете говорить. Я даже могу с этим согласиться.
Но я сознательно поставил вопрос по-другому:: какого хрена ST потратили усилия, чтобы сделать спящий режим при работающих часах с потреблением 0.66 мкА, но сделали так, что это невозможно использовать?? Хотя как это сделать - совершенно понятно и давно сделано в ДРЕВНИХ блэкфинах например. (Справедливости для, блэкфин будет десятки мкА хавать при работающих часах.)

да можете даже не соглашаться и дальше натягивать концепцию применения ДРЕВНИХ блэкфинов на совершенно другие 4хх. им это просто не надо, БФ поди пол-ампера в активном режиме жрет. смените образ мышления и все станет на свои места, от Вас чесно говоря не ожидал такого, опытный же человек
QUOTE (Dr.Alex @ Jul 16 2014, 01:41) *
А если так как вы рассуждать, то зачем вообще существует тот же линейник 0.5 мкА или часики 0.35 мкА? Кому-то нужно значит.
ну TI только и думает о том, как будут их LDO прикручивать к STM32F4xx, а у меня они вполне неплохо смотрятся в комплект с STM32L с потреблением в 150мкА в активном режиме от батареи и 3мкА в спячке. да и MSP430 вроде им рады.
adnega
Или рассмотреть замену батарейки только при включенном питании.
Dr.Alex
Цитата(dac @ Jul 16 2014, 00:24) *
и дальше натягивать концепцию применения ДРЕВНИХ блэкфинов на совершенно другие 4хх. им это просто не надо, БФ поди пол-ампера в активном режиме жрет. смените образ мышления


А что! Логично! Поламперному блэкфину экономить микроамперы нужно, а миллиамперному Ф4хх — совершенно ни к чему.
Буду знать.
adnega
Господа, не устраивайте войну)) меж собой и процессорами))
Цитата
Как должно быть:
Проц запитан только от Vbat, работает RTС. По аларму от часов на некоем пине появляется "1", которая включает импульсные источники 1.2В (ядро) и 1.8В (ИО). Так, например, сделано в блэкфинах.

В F4xx есть такой пин - PC13. Работает в точном соответствии с вышеозвученным ТЗ. Я не понял: ТЗ по ходу изменилось?
Как рулить источниками питания - тема аналоговая и к f4xx отношение имеет паралельное. Ровно как и процесс обслуживания изделий (замена батарейки).
Или я не прав, и действительно есть основания "возмущаться кривым дизайном" самых свежих процов от ST ?
Dr.Alex
Цитата(adnega @ Jul 16 2014, 00:38) *
Господа, не устраивайте войну)) меж собой и процессорами))

В F4xx есть такой пин - PC13. Работает в точном соответствии с вышеозвученным ТЗ. Я не понял: ТЗ по ходу изменилось?
Как рулить источниками питания - тема аналоговая и к f4xx отношение имеет паралельное. Ровно как и процесс обслуживания изделий (замена батарейки).
Или я не прав, и действительно есть основания "возмущаться кривым дизайном" самых свежих процов от ST ?


Пока не ясно.
ТЗ не менялось. Но "в точном соответствии" это громко сказано, ведь в доке ничего не сказано о возможности управлять питанием.
Надо ещё попробовать реально это делать, вдруг вылезет что-то. Например, в режиме внешнего питания ядра там вроде супервизор не работает, придётся внешний ставить что ли..
adnega
Цитата
Пока не ясно.
ТЗ не менялось. Но "в точном соответствии" это громко сказано, ведь в доке ничего не сказано о возможности управлять питанием.

И не будет. Вы на свое усмотрение можете использовать доступный функционал.
Цитата
Надо ещё попробовать реально это делать, вдруг вылезет что-то. Например, в режиме внешнего питания ядра там вроде супервизор не работает, придётся внешний ставить что ли..

Я вас огорчу: errata у F42x/43x не самая приятная. Хотя под определение f4xx много чего попадает. Вы конкретно к какому камушку пригляделись?
Примеры из файла косяков:
- нельзя подключать ногу PA12 иначе при некоторых условиях плохо читается flash.
Цитата
When PA12 is used as GPIO or alternate function in input or output mode, the data read
from Flash memory can be corrupted.
- доступ к внешней памяти через FMC можно делать только через DMA. При обращениях со стороны CPU возможны сбои в данных и hard fault))
Цитата
When the FMC is used as stack, heap or variable data, an interrupt occurring during a CPU
read access to the FMC may results in read data corruption or hard fault exception. This
problem does not occur when read accesses are performed by another master or when
FMC accesses are done when the interrupts are disabled.

Это мои любимые)) Впечатляет?
... а вы про настройку пинов...
Dr.Alex
Мда, ужасненько.
Это получается, внешняя память фактически вообще неработоспособна?
adnega
Цитата(Dr.Alex @ Jul 16 2014, 01:32) *
Мда, ужасненько.
Это получается, внешняя память фактически вообще неработоспособна?

Почему же? Можно разместить там video-ram для LTDC-контроллера.
Можно складывать данные при помощи DMA. Или запрещать прерывания на время работы CPU с внешней памятью. И все только в ревизии A - в остальных поправлено.
Ситуация с ножкой PA12 поправлена только в ревизии 3. Сейчас разрабатываю изделие на МК ревизии Y (такие приехали от Поставщика). После нее есть еще ревизии 1, 2 и 3.
Текущая версия errata v8.0 (на 33 страницах).

Я это все к чему - в железе много что может вылезти. Например, прием-передача по SPI5 (через DMA) на пинах PF7-PF9 у меня не заработала. Прием вообще
странный: цепляю ножку MISO на 1 в младшем разряде первого принятого байта 0. Сам первый бит первого байта транслируется на первый бит второго байта. Точно не помню, но какая-то чертовщина. Errata про SPI5 молчит, значит сам дурак. Переписал все на SPI2 - заработало без вопросов.

С f40x попроще, но там и "вкуснях" меньше.

Вы какую серию хотите задействовать?
SasaVitebsk
Цитата(Dr.Alex @ Jul 15 2014, 22:45) *
Про это уже тут писали, насколько я понял, нужный пин называется TAMP_1 или RTC_AF1, но мне непонятно, кто включит питание после того как юзер к примеру заменит батарейку, ведь этот пин нужно сначала сконфигурировать, чтобы он что-то выдавал.

Я уже писал об этом в другом посте. )) У меня наоборот проблемы были. Альтернативная функция порта включена. Инициализация порта, при отключенном питании не имеет значения. Поэтому мне приходится перед выключением питания выключать эту функцию RTC.
Иными словами, если вы запустите будильник, то при выключенном питании он сработает независимо от того, как будет сконфигурирован пин.
Хотя, если честно, я считаю, что врятли вам удастся этим существенно увеличить работу от батарейки. У меня тоже подсветка дисплея жрёт в 10 раз больше чем всё остальное устройство. Я нашёл индикаторы в 2 раза менее потребляющие. Как обычно надо искать самый потребляющий элемент и в этой области проводить работы. Как правило, сейчас процессор не этот элемент.
PS: Прошу прощения, а что у блэкфинов, если батарейку вынимаешь, часы продолжают идти, как ни в чём не бывало? И будильники звонить продолжают? Не пойму чем замена батарейки в блэкфине отличается от оной в stm4x?
Golikov A.
Я чего то видать не понимаю...

Делаете схему управления питанием которая в нормальном состоянии включена полностью, когда нет никакого питания...
Вставляете батарейку - все заводиться, инициализируется, и так далее... после чего проц ножками выключает необходимые части схемы питания и засыпает.

Кнопка или будильник его будит, и уже проц проснувшись решает какой режим питания включить. Если вы делаете устройство в котором пытаетесь экономить микроамперы на фоне потребляемых миллиампер, так уж пошевелитесь со схемой питания.


Вопрос зачем нужен ЛДО размером 2мм^2 если проц. 4? Ну затем чтобы жрать микроампер, был бы проц 100 схема была бы больше, чем с процом 4 мм. Тоже не понятные стенания....

Да и в целом СТМ у меня ассоциируется с некой фирмой которая операжает свои возможности... То есть продукты шлепают быстрее чем можно позволит с условием достаточных проверок. Продукт не дорогой, интересный по функционалу, но всегда что-то немного не тянет... надо мириться
adnega
Цитата(Golikov A. @ Jul 16 2014, 12:49) *
Делаете схему управления питанием которая в нормальном состоянии включена полностью, когда нет никакого питания...
Вставляете батарейку - все заводиться, инициализируется, и так далее... после чего проц ножками выключает необходимые части схемы питания и засыпает.

К тому же есть возможность вывода такого сигнала типа open-drain. Просадит вывод на землю с минимальными потерями мкА со стороны батарейки.
Да, через подтяжечку будет течь ток в выключенном состоянии (его можно сделать наноамперным?).


Цитата(Golikov A. @ Jul 16 2014, 12:49) *
Да и в целом СТМ у меня ассоциируется с некой фирмой которая операжает свои возможности... То есть продукты шлепают быстрее чем можно позволит с условием достаточных проверок. Продукт не дорогой, интересный по функционалу, но всегда что-то немного не тянет... надо мириться

А у меня долго складывалось впечатление, что преемственность очень мешает... Взять к примеру альтернативные функции в F10x серии.
Это только недавно появился "нормальный" ремап. Ждем FIFO в USART)))
Dr.Alex
Цитата(adnega @ Jul 16 2014, 10:26) *
Вы какую серию хотите задействовать?


Хочу STM32F437IIH.
А ведь ревизию пока не купишь - не узнаешь?

Цитата(SasaVitebsk @ Jul 16 2014, 10:50) *
PS: Прошу прощения, а что у блэкфинов, если батарейку вынимаешь, часы продолжают идти, как ни в чём не бывало? И будильники звонить продолжают? Не пойму чем замена батарейки в блэкфине отличается от оной в stm4x?


Да очень просто, я уже говорил. Часы конечно идти не будут, но это и не нужно. Есть специальный выход EXT_WAKE, который безо всяких условий встанет в '1' при подаче дежурного напряжения на проц, и тем самым включит всё остальное. Затем программа может сконфигурить его поведение, добавив срабатывание по часам или по внешнему прерыванию. И выключить всё до лучших времён.
Golikov A.
вы спокойно можете сделать внешнюю схему которая сделает все тоже самое если так привыкли, ооочень маленькую...
SasaVitebsk
А зачем вы сравниваете 2 совершенно разных изделия? По-моему это контрпродуктивно. Если он вас не устраивает, посмотрите в другую сторону. Сейчас процов завались. Зато у него 11 таймеров, к примеру. Короче куча достоинств и куча недостатков. Некоторые нравятся, а некоторые просто убивают. Usart действительно убогий, а RTC в f4x подправили и он достаточно красивый. Напрмер 2к памяти есть с батарейным питанием. Но в целом, работа с камнем вполне комфортная. Действительно опережают события, недостаточно тестируют, много кривых или не совсем красивых периферийных блоков, правят на живую, библиотеки сырые и тусуют они их ну и так далее... Зато огромный ряд совместимых с хорошей ценой, очень богатой комплектацией, хорошо разводятся за счёт ремапа и устойчиво работают. По embeded перекрыли практически весь диапазон. За что и в фаворе. )
Dr.Alex
Цитата(SasaVitebsk @ Jul 16 2014, 15:27) *
А зачем вы сравниваете 2 совершенно разных изделия? По-моему это контрпродуктивно. Если он вас не устраивает, посмотрите в другую сторону. Сейчас процов завались.


Думаю что сравниваю адекватно. Эффективное управление питанием для контрошки важнее чем для дспшника.

Завались, только нету нихрена. Мне очень нужны 2 метра флеши (толстые прошивки для других микросхем там будут), и при этом весьма мелкие корпуса.
adnega
Есть данные, что батарейной памяти все-таки 4КБ. С успехом ими всеми пользуюсь.
Насчет 11 таймеров только добавлю: "и каких!!!".
Часы мне больше нравились старые, где тупо счетчик секунд от начала эпохи.
SDRAM очень давно ждал, жаль в LQFP100 не задействуешь.
LTDC не может не радовать.
Самое интересное - все плюшки по гуманной цене. Создается впечатление, что платишь только за число ног и килобайты.
Смысла нет использовать в новых средних и крупных разработках f10x. Сразу f42x или f43x (где нужен дисплей/монитор).
Мелочевку перехожу делать на f0xx (f042, f072, f030).
Integro
Цитата(Dr.Alex @ Jul 16 2014, 14:40) *
Думаю что сравниваю адекватно. Эффективное управление питанием для контрошки важнее чем для дспшника.

Завались, только нету нихрена. Мне очень нужны 2 метра флеши (толстые прошивки для других микросхем там будут), и при этом весьма мелкие корпуса.

Ну так используйте что-то другое.... Складывается такое ощущение, что все участники форума вас заставляют юзать STM32.
Вы разработчик, а разработка это в первую очередь решение проблем, тем более embedded это не та сфера где можно взять уже что-то полностью готовое и вылизанное, судя из вашего опыта, вы должны это понимать...
kan35
Цитата(Dr.Alex @ Jul 15 2014, 22:45) *
А насчёт потребления.... Ну я же привёл данные из доки - от 50 до 100 мА на максимальной частоте, а далеко не 10.

Именно 10мА на 100МГц в режиме вычислений, STM32F411
www.st.com/web/en/catalog/mmc/FM141/SC1169/SS1577/LN1877
Вы видимо смотрите контроллеры 3-4 года назад вышедшие, надо было указать какой.

До сих пор не сказали что за задачу вы хотите решать. Почему именно STM32F4 а не какой нибудь другой, например F3?
Семейство F4 специально создано для задач, требовательных к производительности и при этом низкому потреблению в активном режиме. Не для сна, забудьте про это уже!
Нужен контроллер, работающий годами от батарейки - берите STM32L - и будет сон с сохранением RAM и часами за 1мкА.
Dr.Alex
Цитата(kan35 @ Jul 16 2014, 21:15) *
Именно 10мА на 100МГц в режиме вычислений, STM32F411
www.st.com/web/en/catalog/mmc/FM141/SC1169/SS1577/LN1877
Вы видимо смотрите контроллеры 3-4 года назад вышедшие, надо было указать какой.

До сих пор не сказали что за задачу вы хотите решать. Почему именно STM32F4 а не какой нибудь другой, например F3?
Семейство F4 специально создано для задач, требовательных к производительности и при этом низкому потреблению в активном режиме. Не для сна, забудьте про это уже!
Нужен контроллер, работающий годами от батарейки - берите STM32L - и будет сон с сохранением RAM и часами за 1мкА.


Мужэки, я устал с вами спорить.

Мой вопрос был о том, почему автомобиль привязан к лошади, хотя у него есть всё чтобы ехать самому, и не хватает лишь руля.
А вы говорите "эта марка автомобилей предназначена для гужевой тяги". НО Я И САМ ЭТО ВИЖУ! Именно в этом вопрос: зачем нужно было так делать в 2014 году, когда руль есть даже у Руссо-Балт 1909 года выпуска?? Зачем нужно было делать двигатель и трансмиссию если руля всё равно нет??
А вы отвечаете - возьми запорожец, там всё ок.
DASM
А нас зачем спрашивать, СТМ и спрашивайте. На ваши вопросы ответы дали, может хватит троллинга?
Golikov A.
Ну тогда на ваш конкретный вопрос отвечу другим вопросом.
Знаете почему собака лижет свои яйца?...

Да потому что может, вот и они сделали процессор так, потому что могут. Напишите в поддержку свои мысли и доводы, гляди появиться новое семейство где все будет по другому. Что делать в этой конкретной ситуации тоже уже вам написали, так что воду то в ступе толочь?
Dr.Alex
Цитата(DASM @ Jul 16 2014, 23:04) *
Если я на форуме начну спрашивать «чего у вас, русских, все через *опу и так плохо - думаете это понравится кому-нибудь?


Ты часто так и спрашиваешь.. :-)))))

Не хочешь рид-онли - так и не лезь если нечего по делу сказать.

Цитата(Golikov A. @ Jul 16 2014, 23:05) *
что воду то в ступе толочь?


Да потому что каждый зашедший в тему начинает одни и те же вопросы задавать, не прочитав ничего и не разобравшись. Впрочем, в этом ничего удивительного нет. Всегда так.
KnightIgor
Цитата(Dr.Alex @ Jul 16 2014, 19:55) *
Мужэки, я устал с вами спорить.
Именно в этом вопрос: зачем нужно было так делать в 2014 году, когда руль есть даже у Руссо-Балт 1909 года выпуска??
Зачем нужно было делать двигатель и трансмиссию если руля всё равно нет??
А вы отвечаете - возьми запорожец, там всё ок.

Здесь на форуме никто не спорит. Здесь задают конкретные технические вопросы и получают бесплатно технические советы.
На явно же риторические вопросы и стенания типа "возмущен до глубины души" могут быть только житейские советы-ответы:
- облеките праведное возмущение буржуями в хороший английский и направьте не сюда, а по адресу, то есть прямо в ST.
- не нравится - не ешь, на вкус и цвет, бачили очi, що купували и т.п. мудрости.
- перетрите тему с Миландром. Может они выпустят Руссо-Балт ревизии 2014.

Вспоминается анекдот:
- Вася, а ты мою жену-то того, тра...ешь! Мне это никак не нравится!
- Петя, мне нравится, ей нравится, ну а всем не угодишь!
Dr.Alex
Цитата(KnightIgor @ Jul 16 2014, 23:27) *
Здесь на форуме никто не спорит.


Меня не очень интересуют лично ваши мысли о том, что по вашему мнению граждане делают на форумах.
kan35
Если основной вопрос "зачем так нужно было делать", то ответы такие:

Потому что это мало кому нужно, маркетинг решает
- усложнение обвязки
- целесообразность задачам сомнительна
- потому что удорожает продукт

Уверен, что продажи STM32 на порядок выше продаж блэкфина, в этом и есть главный ответ на вопрос "зачем". Можно конено говорить, что все идиоты вокруг, но это не так :-)
Golikov A.
Капризный вы какой-то...

Зачем вы на форуме то писали если вам ни ответы, ни мысли, ни возражения не нравятся?


Давай-те еще раз попробуем

ВЫ: Я до глубины души ... какие они там все в СТ козлы!

МЫ: Да вы правы! мы скорбим вместе с вами, в знак солидарности даже сожгли пару процов!!!


Так пойдет? тему можно закрывать?
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.