Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: PIC16LF193x
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > Все остальные микроконтроллеры > PIC
rx3apf
Что-то я в недоумении - пытаюсь перейти с 16F631+LCD с собственным контроллером на 16LF1934 и LCD без контроллера. Но потребление совершенно не радует - если ядро F631 жрет где-то порядка 500 uA на 4 MHz при 3.6V, то LF1934 - зашкаливает за 2 mA ! Причем и по даташитам (убогим, preliminary до сих пор, без графиков типового потребления) тоже примерно так получается. Что за дела ? И зачем тогда "нановаттностью" трясти ? Ну да, с ростом частоты эффективность вроде растет, причем заметно - только мне с того не легче... У кого есть опыт общения с ними, может, я что упустил ?
ar__systems
Цитата(rx3apf @ Mar 27 2011, 16:35) *
Что-то я в недоумении - пытаюсь перейти с 16F631+LCD с собственным контроллером на 16LF1934 и LCD без контроллера. Но потребление совершенно не радует - если ядро F631 жрет где-то порядка 500 uA на 4 MHz при 3.6V, то LF1934 - зашкаливает за 2 mA ! Причем и по даташитам (убогим, preliminary до сих пор, без графиков типового потребления) тоже примерно так получается. Что за дела ? И зачем тогда "нановаттностью" трясти ? Ну да, с ростом частоты эффективность вроде растет, причем заметно - только мне с того не легче... У кого есть опыт общения с ними, может, я что упустил ?

Как вы даташиты читаете? Параметр D014, теже самые 500uA. А то что у вас 2мА получается, так это однозначно у вас не вся переферия выключена, либо висящие пины остались. Ну и пуллапы-дауны могут быть включены где не надо.
rx3apf
Цитата(ar__systems @ Mar 29 2011, 02:07) *
Как вы даташиты читаете? Параметр D014, теже самые 500uA. А то что у вас 2мА получается, так это однозначно у вас не вся переферия выключена, либо висящие пины остались. Ну и пуллапы-дауны могут быть включены где не надо.

Читаю-то я глазами. 450, максимум 650 uA. Но - для 1.8V питающего ! А уже для 3.0 типично 830, и до 1100 uA. А у меня, напоминаю, 3.6V питающего (ну, не 2mA, но явно больше чем у F631, в разы). Периферия отключена, ноги не болтаются. Пока требуемый цикл прерывания сокращен до минимума - все очень скромненько, стоит его хоть nop-ами продлить - растет ощутимо, причем гораздо сильнее, чем у F631 на той же частоте. А вот если поднимаю тактовую - наоборот среднее потребление падает. Но для меня это не решение...

Дополнение - просто взял и измерил потребление на холостом цикле goto $, получилось 0.195, 0.75, 1.1, 1.86 и 3.1 mA для, соответственно, 0.5, 2, 4, 8 и 16 MHz (INTRC, питание 3.6V). Против 16F631 - сплошное разочарование...
ar__systems
Цитата(rx3apf @ Mar 29 2011, 03:28) *
Читаю-то я глазами. 450, максимум 650 uA. Но - для 1.8V питающего ! А уже для 3.0 типично 830, и до 1100 uA. А у меня, напоминаю, 3.6V питающего (ну, не 2mA, но явно больше чем у F631, в разы). Периферия отключена, ноги не болтаются. Пока требуемый цикл прерывания сокращен до минимума - все очень скромненько, стоит его хоть nop-ами продлить - растет ощутимо, причем гораздо сильнее, чем у F631 на той же частоте. А вот если поднимаю тактовую - наоборот среднее потребление падает. Но для меня это не решение...

Дополнение - просто взял и измерил потребление на холостом цикле goto $, получилось 0.195, 0.75, 1.1, 1.86 и 3.1 mA для, соответственно, 0.5, 2, 4, 8 и 16 MHz (INTRC, питание 3.6V). Против 16F631 - сплошное разочарование...

Мой рецепт минимального потребления был такой -- гнать чип на максимальной частоте, но минимальное время. В вашем случае повышенное потребление по сравнению с 631 очевидно вызвано присутсвием PLL. Используйте внешний кварц, тогда PLL будет выключена.
rx3apf
Цитата(ar__systems @ Mar 29 2011, 16:55) *
Мой рецепт минимального потребления был такой -- гнать чип на максимальной частоте, но минимальное время. В вашем случае повышенное потребление по сравнению с 631 очевидно вызвано присутсвием PLL. Используйте внешний кварц, тогда PLL будет выключена.

PLL включается старшим битом OSCCON и фьюзом, я ее не включаю. Внешний кварц и частое пробуждение по таймеру 1 (что мне требуется) несовместимо (на "разгон" кварца требуется время), минимизировать время обработки в моем случае не получится, да и "удельное потребление" даже на максимальной частоте все равно существенно больше, чем у F631. Буду еще пытаться оптимизировать, но пока очень грустно...
ar__systems
Цитата(rx3apf @ Mar 29 2011, 08:02) *
PLL включается старшим битом OSCCON и фьюзом, я ее не включаю. Внешний кварц и частое пробуждение по таймеру 1 (что мне требуется) несовместимо (на "разгон" кварца требуется время), минимизировать время обработки в моем случае не получится, да и "удельное потребление" даже на максимальной частоте все равно существенно больше, чем у F631. Буду еще пытаться оптимизировать, но пока очень грустно...

У него два PLL, одну из них вы не можете не включать потому что у него собственный внутренний РЦ -- 500КГц. 16MHz получается с помощью PLL. Смотрите схему блока. Я делал переодическое пробуждение по WDT. Можете стартовать с 500KHz, gjтом переключаться на внешний клок. Вообще надо было смотреть на потребление до выбора процессора...
@Ark
Цитата
Периферия отключена, ноги не болтаются...

Попробуйте для проверки отключить все лишнее в конфигурации - BOR, WDT и т.д.
Это тоже влияет на потребление.
rx3apf
Цитата(ar__systems @ Mar 29 2011, 17:59) *
У него два PLL, одну из них вы не можете не включать потому что у него собственный внутренний РЦ -- 500КГц. 16MHz получается с помощью PLL. Смотрите схему блока.

Согласно схеме на странице 109 - HF-генератор один, 16-MHz, и только один PLL x4, для внешнего тактового либо внутреннего 8x4=32. 500 kHz - отдельный осциллятор ("MF"), и ни слова, что HF делается из MF.
Цитата
Я делал переодическое пробуждение по WDT. Можете стартовать с 500KHz, gjтом переключаться на внешний клок.

Это мне ничего не дает, и внешнего клока нет.
Цитата
Вообще надо было смотреть на потребление до выбора процессора...

_Я_ - не выбирал. Была поставлена задача - заменить связку F631+TIC71 на LF1934. Это в общем-то не к тому, что нужен совет, как "съэкономить" (все эти трюки я прекрасно знаю, но есть особенности функционирования изделия), а просто удивило, что при том, что производитель с гордостью размахивая на каждом шагу "нановаттностью", вдруг родил новый кристалл вдвое с лишним более прожорливый. Очень не радует...

Цитата(@Ark @ Mar 29 2011, 18:29) *
Попробуйте для проверки отключить все лишнее в конфигурации - BOR, WDT и т.д.
Это тоже влияет на потребление.

Я же писал, что сделал упрощенный цикл прерывания - тогда все скромненько. Стоит набить хоть NOP-ов в этот цикл - потребление растет. И растет как раз пропорционально этим 1.1 mA @ 4 MHz.
@Ark
Цитата
Я же писал, что сделал упрощенный цикл прерывания - тогда все скромненько.

Вы не поняли. Сделайте холостой цикл goto без всяких прерываний. Затем посмотрите потребление,
например, с включенным BOR и с выключенным. И почуствуйте разницу...
ar__systems
Цитата(rx3apf @ Mar 29 2011, 09:43) *
Согласно схеме на странице 109 - HF-генератор один, 16-MHz, и только один PLL x4, для внешнего тактового либо внутреннего 8x4=32. 500 kHz - отдельный осциллятор ("MF"), и ни слова, что HF делается из MF.

Вы на какой процессор даташит смотрите?

http://ww1.microchip.com/downloads/en/DeviceDoc/41364D.pdf

на странице 69 смотрите, и там далее именно это и написано словами.

Кстати, из любопытства, а у вам среднее потребление какое хочется получить?
rx3apf
Цитата(@Ark @ Mar 29 2011, 19:00) *
Вы не поняли. Сделайте холостой цикл goto без всяких прерываний. Затем посмотрите потребление,
например, с включенным BOR и с выключенным. И почуствуйте разницу...

Да сделал я этот цикл (BOR и WDT выключены), и цифру привел (1.1 mA @4 MHz). Включать и проверять ? А к чему ? Если с теми же фьюзами, но с обработкой прерываний по-минимуму выходит 6uA (что меньше потребления BOR по-любому).
@Ark
Цитата
...BOR и WDT выключены...

А остальное?
rx3apf
Цитата(ar__systems @ Mar 29 2011, 19:06) *
Вы на какой процессор даташит смотрите?

16LF1934
Цитата
http://ww1.microchip.com/downloads/en/DeviceDoc/41364D.pdf

на странице 69 смотрите, и там далее именно это и написано словами.

Вот это номер ! У меня тот же документ, только ревизия "C", тот же 2009 год, и утянут недавно - там нет этой связки, три _отдельных_ генератора !
Цитата
Кстати, из любопытства, а у вам среднее потребление какое хочется получить?

Ну вот пока на одном и том же действии на F631 9 uA, а на LF1934 уже 13, причем еще явно прибавится. Это бы ладно, но с ростом частоты все усугубляется, и там, где я вписывался в 50 uA, уже и 80-ю не обойтись, а батарейка-то не резиновая...

Цитата(@Ark @ Mar 29 2011, 19:12) *
А остальное?

О Господи ! Я же говорю - работаю с sleep и прерываниями, получаю 6 uA. Просто зацикливаюсь после настройки портов - 1.1 uA. С ТЕМИ ЖЕ ФЬЮЗАМИ ! И потребление пропорционально (почти) зависит от тактовой, так что ничего лишнего там нет.
@Ark
Цитата
С ТЕМИ ЖЕ ФЬЮЗАМИ !

Так с какими все-таки?
rx3apf
Цитата(@Ark @ Mar 29 2011, 19:29) *
Так с какими все-таки?


__CONFIG _CONFIG1, _FOSC_INTOSC & _WDTE_OFF & _PWRTE_OFF & _MCLRE_ON & _CP_OFF & _CPD_OFF & _BOREN_OFF & _CLKOUTEN_OFF & _IESO_OFF & _FCMEN_OFF
__CONFIG _CONFIG2, _WRT_OFF & _PLLEN_OFF & _STVREN_OFF & _BORV_19 & _LVP_OFF
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.