Требуется программист в Зеленограде
- обработка данных с датчиков; ColdFire; 40 тыс. e-mail:jobsmp@pochta.ru |
Ситуация следующая: есть простая схема, батарейка 5В, преобразователь в 3.3В MC78LC33 (собственный ток потребления 2 мкА), ATMEGA165P и подключенные к ней пару светодиодов.
Пробую уменьшить ток потребления всей схемы хотя бы до 50 мкА. Для этого выключаю на меге все что можно и перевожу ее в режим Power Down. Но ток все равно ниже 1.5 мА не падает. В фьюзах BOD, OCD и SPI отключены.
Вот код:
DDRA=0x00; PORTA=0x00;
DDRB=0x00; PORTB=0x00;
DDRC=0x00; PORTC=0x00;
DDRD=0x00; PORTD=0x00;
DDRE=0x00; PORTE=0x00;
DDRF=0x00; PORTF=0x00;
WDTCR=0x00;
// Выключаем буферы на AIN0, AIN1
DIDR1=B(AIN1D)|B(AIN0D);
// Выключаем буферы на ADC7-ADC0
DIDR0=0xFF;
// Выключаем периферию
PRR = B(PRTIM1) | B(PRSPI) | B(PRUSART0) | B(PRADC);
// Выключаем компаратор
ACSR = B(ACD);
// Выбираем режим Power Down
SMCR = B(SM1) | B(SE);
asm("sleep");