Например TDA7294

Форум РадиоКот • Просмотр темы - PIC12F1822 SLEEP. Большой ток в спящем режиме
Форум РадиоКот
Здесь можно немножко помяукать :)

Текущее время: Ср сен 24, 2025 19:50:39

Часовой пояс: UTC + 3 часа


ПРЯМО СЕЙЧАС:



Начать новую тему Ответить на тему  [ Сообщений: 17 ] 
Автор Сообщение
Не в сети
 Заголовок сообщения: PIC12F1822 SLEEP. Большой ток в спящем режиме
СообщениеДобавлено: Ср сен 10, 2025 14:29:27 
Собутыльник Кота
Аватар пользователя

Карма: 21
Рейтинг сообщений: 252
Зарегистрирован: Ср янв 16, 2008 08:34:04
Сообщений: 2536
Откуда: KMV
Рейтинг сообщения: 0
Второй день пытаюсь бороться с этим микроконтроллером.
Исходные данные. К микроконтроллеру подключен часовой кварц на 32768 Гц, светодиод и кнопка.
Инициализация портов:
Спойлер
Код:
    TRISA = 0x3F; // input
    ANSELA = 0x0; // digital I/O
    LATA = 0x0;
    WPUA = 0x04; // Pullup WPUA2
    OPTION_REGbits.nWPUEN = 0; //Weak pull-ups are enabled by individual WPUx latch values
    //IOCx registers
    IOCAP = 0x0;
    IOCAN = 0x0;
    IOCAF = 0x0;


Инициализация осциллятора:
Спойлер
Код:
//    OSCCONbits.SCS = 0b00;      // SCS FOSC
//    OSCCONbits.SCS = 0b01;      // SCS Timer1
    OSCCONbits.SCS = 0b10;      // SCS Internal
    OSCCONbits.IRCF = 0b0000;   // IRCF 31KHz_LF
    OSCCONbits.SPLLEN = 0;      // 4x PLL is disabled
    // Oscillator module is running at the factory-calibrated frequency
    OSCTUNE = 0x0;
    // SBOREN disabled;
    BORCON = 0x0;

Тут видно, что пытался играться с тактированием от часового кварца в режиме LP, от Timer1 и от внутреннело LF генератора на 31 кГц. Но все эти режимы в конечном итоге не влияют на ток потребления в спящем режиме.
Подтягивающий резистор включен один для кнопки. Её задача вывести микроконтроллер из сна по внешнему прерыванию, переключить светодиод и опять уйти в спячку. Ток спячки измеряю при ВЫКЛЮЧЕННОМ светодиоде! Вся остальная периферия выключена. WDT и BORCON не работают и выключены!

При этом ток потребления примерно 50 мкА, хотя по ДШ он должен быть не более 15-20 мкА.

PS. на измерение тока в спящем режиме сильно влияет программатор. Приходится отключать микроконтроллер от него. При чем зачастую после отключения программатора ток подрастает на 10-15 мкА, а не снижается. С чем связано я не понимаю.
PS2. на плате утечки тока нет. При отключении от платы микроконтроллера и программатора ток потребления нулевой на моём тестере в режиме мкА.

Добавлено after 1 hour 24 minutes 7 seconds:
В общем виновником светодиод оказался. Хоть при выключении светодиода я перевожу пин в Z состояние, но через него все равно течет ток. Без светодиода 19 мкА. Получается нельзя напрямую на вывод порта включать светодиод??? Неправильно! Нельзя было этот вывод переводить в Z состояние. Надо было отставлять как выход и записать в него 0.


Последний раз редактировалось serg_svd Ср сен 10, 2025 14:39:50, всего редактировалось 1 раз.

Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: PIC12F1822 SLEEP. Большой ток в спящем режиме
СообщениеДобавлено: Ср сен 10, 2025 14:37:23 
Друг Кота
Аватар пользователя

Карма: 26
Рейтинг сообщений: 777
Зарегистрирован: Сб янв 28, 2006 22:47:24
Сообщений: 5271
Рейтинг сообщения: 0
В общем виновником светодиод оказался. Хоть при выключении светодиода я перевожу пин в Z состояние, но через него все равно течет ток. Без светодиода 19 мкА. Получается нельзя напрямую на вывод порта включать светодиод???

А что там с подтягивающими резисторами порта?

_________________
Астролябия-сама меряет, было бы что мерять!!!


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: PIC12F1822 SLEEP. Большой ток в спящем режиме
СообщениеДобавлено: Ср сен 10, 2025 14:41:22 
Друг Кота
Аватар пользователя

Карма: 139
Рейтинг сообщений: 2922
Зарегистрирован: Чт янв 10, 2008 22:01:02
Сообщений: 24129
Откуда: Московская область, Фрязино
Рейтинг сообщения: 0
Получается нельзя напрямую на вывод порта включать светодиод???

Наверное нужно опубликовать схему своего устройства...

Добавлено after 2 minutes 11 seconds:
А что там с подтягивающими резисторами порта?

Утечка порта в Z состоянии по даташиту - 125 нА максимум. Типовое значение - 5 нА


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: PIC12F1822 SLEEP. Большой ток в спящем режиме
СообщениеДобавлено: Ср сен 10, 2025 14:53:16 
Собутыльник Кота
Аватар пользователя

Карма: 21
Рейтинг сообщений: 252
Зарегистрирован: Ср янв 16, 2008 08:34:04
Сообщений: 2536
Откуда: KMV
Рейтинг сообщения: 0
А что там с подтягивающими резисторами порта?

Да все нормально! Один включен в регистре WPUA для кнопки. Возможно с внешним резистором ток будет меньше, надо экспериментировать.
КРАМ писал(а):
Наверное нужно опубликовать схему своего устройства...

До можно и опубликовать, если нарисовать её :) . А так я в первом сообщении поправил. Нельзя было пин со светодиодом переключать в Z состояние. Об этом ДШ говорит, я читал, но картинка в мозгу сразу не сложилась. Искал утечку в другом месте.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: PIC12F1822 SLEEP. Большой ток в спящем режиме
СообщениеДобавлено: Ср сен 10, 2025 15:40:17 
Друг Кота
Аватар пользователя

Карма: 139
Рейтинг сообщений: 2922
Зарегистрирован: Чт янв 10, 2008 22:01:02
Сообщений: 24129
Откуда: Московская область, Фрязино
Рейтинг сообщения: 0
Об этом ДШ говорит

ДШ так же говорит об величине тока утечки Z состояния. И это не десятки микроампер. Это всего 0,1 мкА.
Так что было бы интересно узнать как у вас включен светодиод.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: PIC12F1822 SLEEP. Большой ток в спящем режиме
СообщениеДобавлено: Ср сен 10, 2025 16:08:14 
Собутыльник Кота
Аватар пользователя

Карма: 21
Рейтинг сообщений: 252
Зарегистрирован: Ср янв 16, 2008 08:34:04
Сообщений: 2536
Откуда: KMV
Рейтинг сообщения: 0
Так что было бы интересно узнать как у вас включен светодиод.

Катод светодиода к выводу 8 микроконтроллера, то есть на GND
Анод через резистор 1 кОм к РА1.

Добавлено after 9 minutes 44 seconds:
Вот! Набросал схемку...
Изображение


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: PIC12F1822 SLEEP. Большой ток в спящем режиме
СообщениеДобавлено: Ср сен 10, 2025 17:14:09 
Друг Кота
Аватар пользователя

Карма: 139
Рейтинг сообщений: 2922
Зарегистрирован: Чт янв 10, 2008 22:01:02
Сообщений: 24129
Откуда: Московская область, Фрязино
Рейтинг сообщения: 0
Вот!

Диод создает плавающий потенциал на входе (третье состояние - это вход). Поэтому на выходе входного буфера наблюдается сквозной ток в наблюдаемой разнице токов потребления. Либо нужен параллельный светодиоду резистор примерно 10 кОм, либо нулевой выход.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: PIC12F1822 SLEEP. Большой ток в спящем режиме
СообщениеДобавлено: Чт сен 11, 2025 10:57:04 
Собутыльник Кота
Аватар пользователя

Карма: 21
Рейтинг сообщений: 252
Зарегистрирован: Ср янв 16, 2008 08:34:04
Сообщений: 2536
Откуда: KMV
Рейтинг сообщения: 0
Надо пробовать и остальные неиспользуемые пины переввести на выход и установить в ноль. Может и через них еще утечка идет? 20 мкА тоже много, если в ДШ указан совсем мизерный ток. Про 20 мкА, к которым я стремился, это я невнимательно ДШ прочел. 20 мкА - это ток в рабочем режиме самого микроконтроллера с LP тактировпнием. А в спячке то тактировпние выключено. Значит надо искать, как еще можно снизить ток


Вернуться наверх
 
В сети
 Заголовок сообщения: Re: PIC12F1822 SLEEP. Большой ток в спящем режиме
СообщениеДобавлено: Чт сен 11, 2025 11:26:39 
Говорящий с текстолитом

Карма: 25
Рейтинг сообщений: 456
Зарегистрирован: Сб май 05, 2012 20:24:52
Сообщений: 1666
Откуда: KN34PC, Болгария
Рейтинг сообщения: 0
Попробуйте в обратном порядке: создайте настройки нужного генератора, выключите вся периферия и убедитесь, что в спящем режиме потребление низкое и соответствует документации. Затем постепенно включайте периферии, функции и т.д., пока не получите желаемые функции. Так будет легче найти "виновника". В прошлом с подобным PIC12 у меня как идея осталась: WDTE OFF, BOREN OFF -> на простом измерительном приборе с минимальным ток. диапазоном: 2 mA в выключенном состоянии PIC12 показание: 0,000 :). Некоторые PIC12x на это более способны. Напр. любимый: PIC12LF1571 /но нет генератора с внешним кварцем/.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: PIC12F1822 SLEEP. Большой ток в спящем режиме
СообщениеДобавлено: Чт сен 11, 2025 15:18:19 
Открыл глаза
Аватар пользователя

Зарегистрирован: Вт фев 28, 2017 08:13:31
Сообщений: 47
Откуда: Свердловская обл.
Рейтинг сообщения: 0
Надо пробовать и остальные неиспользуемые пины переввести на выход и установить в ноль. Может и через них еще утечка идет? 20 мкА тоже много, если в ДШ указан совсем мизерный ток. Про 20 мкА, к которым я стремился, это я невнимательно ДШ прочел. 20 мкА - это ток в рабочем режиме самого микроконтроллера с LP тактировпнием. А в спячке то тактировпние выключено. Значит надо искать, как еще можно снизить ток


Перечитал ДШ и вопрос

если у вас PIC12F1822 - то это минимум - 20мкА

а вот если PIC12LF1822 - то там действительно мизерные токи !


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: PIC12F1822 SLEEP. Большой ток в спящем режиме
СообщениеДобавлено: Чт сен 11, 2025 15:45:13 
Собутыльник Кота
Аватар пользователя

Карма: 21
Рейтинг сообщений: 252
Зарегистрирован: Ср янв 16, 2008 08:34:04
Сообщений: 2536
Откуда: KMV
Рейтинг сообщения: 0
если у вас PIC12F1822 - то это минимум - 20мкА

Похоже так и есть! LF кушает намного меньше. Верхний результат для LF, нижний для F
Изображение

Добавлено after 2 minutes 36 seconds:
Попробуйте в обратном порядке

Да я так и делал. Поэтому и нашел проблему с Z-состоянием портов.


Вернуться наверх
 
В сети
 Заголовок сообщения: Re: PIC12F1822 SLEEP. Большой ток в спящем режиме
СообщениеДобавлено: Пт сен 12, 2025 11:01:50 
Говорящий с текстолитом

Карма: 25
Рейтинг сообщений: 456
Зарегистрирован: Сб май 05, 2012 20:24:52
Сообщений: 1666
Откуда: KN34PC, Болгария
Рейтинг сообщения: 0
Сегодня осталось немного свободного времени. Тест с PIC12F1822. VDD +5.0V, SLEEP -> 0,021 mA.
Программатор не подключен.

Спойлер
Код:
#include <xc.h>

#pragma config FOSC = INTOSC
#pragma config WDTE = OFF
#pragma config PWRTE = OFF
#pragma config MCLRE = OFF
#pragma config BOREN = OFF
#pragma config CP = OFF, CPD = OFF
#pragma config PLLEN = OFF
#pragma config LVP = OFF

void main(void) {
  OSCCONbits.SCS = 0b10;
  OSCCONbits.IRCF = 0b0000;
  OSCCONbits.SPLLEN = 0;
  OSCTUNE = 0x00;

  ADCON0 = 0x00;
  ANSELA = 0x00;
  CM1CON0 = 0x00;
  FVRCON = 0x00;
  DACCON0 = 0x00;
  T1CON = 0x00;
  WDTCONbits.SWDTEN = 0;

  TRISA = 0x00;
  LATA = 0x00;
  WPUA = 0x00;
  OPTION_REGbits.nWPUEN = 1;

  INTCON = 0x00;

  SLEEP();

  while (1) {
  }
}


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: PIC12F1822 SLEEP. Большой ток в спящем режиме
СообщениеДобавлено: Пт сен 12, 2025 12:23:56 
Нашел транзистор. Понюхал.
Аватар пользователя

Карма: 3
Рейтинг сообщений: 21
Зарегистрирован: Чт ноя 26, 2015 23:22:35
Сообщений: 159
Откуда: не с Уфы
Рейтинг сообщения: 0
16F636 ... 3.6 вольт ... какие-то ноги выходные, какие-то входные ... подтяжка везде включена (что-то к верху, что-то к низу)
sleep - 0,6 микроампера (всё, что может кушать - отключено).

_________________
Tg


Вернуться наверх
 
В сети
 Заголовок сообщения: Re: PIC12F1822 SLEEP. Большой ток в спящем режиме
СообщениеДобавлено: Пт сен 12, 2025 13:16:25 
Сверлит текстолит когтями
Аватар пользователя

Карма: 12
Рейтинг сообщений: 66
Зарегистрирован: Вт мар 28, 2023 21:17:15
Сообщений: 1258
Откуда: Universe
Рейтинг сообщения: 2
У PIC12F1822 ядро процессора питается 1,7в, ноги от входного. А ядро кормит стабилизатор. Он и жрет те 20мкА. У PIC12LF1822 стаба нет, потому максимальное питающее 3,6в. Зато потребление в слипе - наноамперы.

:tea:

_________________
I have a dream...¯\_(ツ)_/¯


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: PIC12F1822 SLEEP. Большой ток в спящем режиме
СообщениеДобавлено: Пт сен 12, 2025 22:51:39 
Прорезались зубы
Аватар пользователя

Карма: 5
Рейтинг сообщений: 22
Зарегистрирован: Ср сен 11, 2024 10:18:53
Сообщений: 213
Рейтинг сообщения: 0
...Зато потребление в слипе - наноамперы.

При условии, что питание будет 1,8v. Sleep mode: 20 nA @ 1.8V, typical

_________________
Audiatur et altera pars !


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: PIC12F1822 SLEEP. Большой ток в спящем режиме
СообщениеДобавлено: Вс сен 14, 2025 14:52:24 
Собутыльник Кота
Аватар пользователя

Карма: 21
Рейтинг сообщений: 252
Зарегистрирован: Ср янв 16, 2008 08:34:04
Сообщений: 2536
Откуда: KMV
Рейтинг сообщения: 0
...Зато потребление в слипе - наноамперы.

При условии, что питание будет 1,8v. Sleep mode: 20 nA @ 1.8V, typical

Это для LF
Изображение


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: PIC12F1822 SLEEP. Большой ток в спящем режиме
СообщениеДобавлено: Пн сен 15, 2025 00:36:01 
Прорезались зубы
Аватар пользователя

Карма: 5
Рейтинг сообщений: 22
Зарегистрирован: Ср сен 11, 2024 10:18:53
Сообщений: 213
Рейтинг сообщения: 0
Да я разве спорил, но, наверное, кому разрешено так цитировать - тому виднее.

_________________
Audiatur et altera pars !


Вернуться наверх
 
Показать сообщения за:  Сортировать по:  Вернуться наверх
Начать новую тему Ответить на тему  [ Сообщений: 17 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 9


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y