Перейти к содержанию
    

почему так много ест?

Здравствуйте.

Осваиваю MSP430, развел и спаял простенькую платку под MSP430G2553.

Пробую режимы пониженного потребления.

Все очень странно.

Написал тест, тактирование таймера от ACLK (внешний кварц 32768), после прерывания зажигается светодиод, гаснет и снова уход в LPM).

Но потребление при это остается очень высоким (~40 мкА). Причем на плате уже ничего лишнего нет, все распаял, флюс отмыл.

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

Заметил, что от прикосновения пальцем - так же сильно плывет потребление, иногда может опустится до 2мка (только если выводы подтянуты в верх, хз), и тут же начать "плыть" куда угодно, если палец убрать.

С STM32L152 таких проблем не было, тестер показывал стабильные 2 мка.

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

упс, на схеме нет резистора 47кОм на RST, его так же припаял

int main(void) {
WDTCTL = WDTPW | WDTHOLD;	// Stop watchdog timer
ClockInit();
PeriphInit();
status = 1;
TACTL = TASSEL_1 + MC_2 + TAIE;           // ACLK, contmode, interrupt

while (1)
{
	if(status!=0)
	{
		LEDS_PxOUT &=~ LED1_PxBIT;
		Delay(500);
		LEDS_PxOUT |= LED1_PxBIT;
		//WATER_PxREN &=~ (WATER1_PxBIT | WATER2_PxBIT);
		Delay(1);
		//WATER_PxREN |= (WATER1_PxBIT | WATER2_PxBIT);
		status = 0;
	}
	else
	__bis_SR_register(LPM3_bits + GIE);
}
}

#pragma vector=TIMER0_A1_VECTOR
__interrupt void Timer_A(void)
{
switch( TA0IV )
{
case  2: break;                          // CCR1 not used
case  4: break;                          // CCR2 not used
case 10:
break;
}
status = 1;
__bic_SR_register_on_exit(LPM3_bits);
}

void PeriphInit(void)
{
// Leds
LED_PxDIR |= LED1_PxBIT;
LEDS_PxOUT &=~ LED1_PxBIT;
LED_PxDIR |= LED2_PxBIT;
LEDS_PxOUT &=~ LED2_PxBIT;
// SB1
SB1_PxDIR &=~ SB1_PxBIT;
SB1_PxOUT |= SB1_PxBIT;
// Tamper
TAMPER_PxDIR &=~ TAMPER_PxBIT;
TAMPER_PxOUT |= TAMPER_PxBIT;
// watert
WATER_PxREN |= (WATER1_PxBIT | WATER2_PxBIT);
}

void ClockInit(void)
{
DCOCTL = 0;
BCSCTL1 = XT2OFF;
DCOCTL = CALDCO_1MHZ;
BCSCTL1 |= DIVA_1; // ACLK, 32768
BCSCTL3 = XCAP_3;
}

Схема:

image-3077_54C4A46A.jpg

 

Изменено пользователем khomin

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Я настраиваю неиспользуемые ножки как выход и задаю в них "0". Только в этом случае потребление в LPM режимах у меня соответствовало паспортному.

 

Как входы с подтягивающими резисторами делать не пробовал, потому ничего не могу сказать, насколько это работает. Хотя в даташите и такой вариант предлагается. Попробуйте подтягивать резистором не к "+", а к "-" (POUTx.x=0), может что-то другое получится. Ну или на выход настроить.

 

И попробуйте режимы LPM в "чистом" виде - без какой-либо включенной периферии. Просто настроить неиспользуемые ножки чтоб "не плавали", и перевести контроллер в режим LPM. Даже внешний кварц не включать.

 

Вот мой восторженный отзыв после испытаний режима LPM3 (аж целую тему создал :biggrin: ): http://vrtp.ru/index.php?showtopic=18760

При использовании внешнего кварца идущего в комплекте с Ланчпадом и больше ничего - ток 20 мка. Если же тактировать от VLO - ток в LPM3 получался 0,5 мка.

Изменено пользователем controller_m30

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Осваиваю MSP430, развел и спаял простенькую платку под MSP430G2553.

Пробую режимы пониженного потребления.

Вы бы лучше сначала на готовой отладке попробовали. Возможно что-то в разводке/изготовлении накосячили.

У меня на отладке MSP430FR5739 вся схема в LPM3 == 7.5 мкА и не плывёт ничего, вроде. Тоже спит по таймеру от VLO.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Я настраиваю неиспользуемые ножки как выход и задаю в них "0". Только в этом случае потребление в LPM режимах у меня соответствовало паспортному.

 

Как входы с подтягивающими резисторами делать не пробовал, потому ничего не могу сказать, насколько это работает. Хотя в даташите и такой вариант предлагается. Попробуйте подтягивать резистором не к "+", а к "-" (POUTx.x=0), может что-то другое получится. Ну или на выход настроить.

 

И попробуйте режимы LPM в "чистом" виде - без какой-либо включенной периферии. Просто настроить неиспользуемые ножки чтоб "не плавали", и перевести контроллер в режим LPM. Даже внешний кварц не включать.

 

Вот мой восторженный отзыв после испытаний режима LPM3 (аж целую тему создал :biggrin: ): http://vrtp.ru/index.php?showtopic=18760

При использовании внешнего кварца идущего в комплекте с Ланчпадом и больше ничего - ток 20 мка. Если же тактировать от VLO - ток в LPM3 получался 0,5 мка.

 

Спасибо большое.

Вроде разобрался. Оказалось TMP112 работал в активном режиме. Отсюда ток "плавал".

Методом проб добился потребления всей схемы в 2 мка на VLO и ~3 мка на LFXT. Показалось странным, что потребление от внешнего 32768 выше внутреннего, но жить можно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Методом проб добился потребления всей схемы в 2 мка на VLO и ~3 мка на LFXT. Показалось странным, что потребление от внешнего 32768 выше внутреннего, но жить можно.

А что странного? VLO=8кГц, а внешний >32кГц (по-крайней мере на моём MSP430FR5739). Ясно, что будет больше.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Добавлю, что подтягивающие резисторы к +3,3V, уменьшают потребление. Прямое подключение вывода к +3,3V, находящегося в режиме ввода, также уменьшает потребление. Но в последнем случае, если на соседние порты выводиться ВЧ сигналы, потребление растёт примерно на 0,7 микроампер. Подтяжка к 0 также приводит к некоторому увеличению тока примерно на 0,2 микроамперы. Поэтому для энергосбережения лучший вариант, это установка лог.1 на портах ввода вывода или внешняя подтяжка к 3 вольтам. Измерения проводил на MSP430F417 вольтметром В7-82, в режиме накопления данных.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...