AVR - Power management или как правильно спать

AVR
Когда начинаешь задумываться о снижении потребления камня — обычно все остальное уже вылизано. И светодиод мигает как надо, и RTOS исправно щелкает задачами, и экранчик подмигивает курсором. Соответственно, этот раздел можно рассматривать как мини-квалификационный экзамен на AVR-джедая. После него остается только всякая экзотика — вроде асинхронных счетчиков или External Memory Interface у старших мег.

Как вообще мы можем влиять на энергопотребление кристалла? Что там вообще потребляет?

Основной элемент кристалла — полевой транзистор. Он в стабильном режиме практически не потребляет энергии — емкость затвора изолирована и практически не разряжается, сопротивление в открытом состоянии мало. А вот при переключении нам надо очень быстро перезарядить эту емкость. Соответственно, чем быстрее, тем больше тока надо вдуть в затвор. А чем больше ток при постоянном сопротивлении, тем больше потери. И поэтому, чем выше тактовая частота, тем больше энергопотребление. Отсюда вывод — если хотим экономить, то сразу надо снижать частоту.

Память. То же самое — в стабильном режиме практически ничего не потребляет (наноамперы). Основные затраты — при чтении и записи.

Отсюда вывод — остановив процессор, затормозив его часы до нуля, можно снизить энергопотребление кристалла до минимума. Попробуем достичь его.



Читать дальше

Программирование FLASH

Часто необходимо сохранять конфигурационные параметры или еще что либо при отключении питания. В stm32 для этой цели возможно использовать либо backup регистры либо встроенную flash память. 20 регистров backup домена по 2 байта часто недостаточно. Кроме того для поддержания бекап домена нужна отдельная батарейка. Флеш лишена этих недостатков, но имеет свои собственные.

Читать дальше
  • +6
  • 27 апреля 2011, 20:15
  • OlegG

Простейший тактовый генератор для разлочки AVR от неверных фьюзов.

Недавно я собрал себе USBasp, и перешел с Uniprof на USBASP AVRDUDE PROG. ГУИшка, конечно, хорошая, но мне пока трудно перестроиться на обратную нотацию фьюз-бит. И вот этот момент настал: я залочил свою мегу16 на внешний тактовый сигнал.


Читать дальше
  • -1
  • 24 апреля 2011, 17:18
  • enq

LabVIEW. Учебный курс. Статья 2: Типы данных, Структуры.

Начало
Сегодня мы поговорим о типах данных, затем об структурах.

Типы данных
В LabVIEW имеет богатый набор типов данных разделим их для простоты на группы:
  • Логический — классический тип Bool, принимает два значения — Истина (True) или Ложно (False), Отображаются на БД зеленым цветом.
  • Целочисленные — делятся на знаковые ( I8, I16, I32, I64) и беззнаковое (U8, U16, U32, U64). Цифра после буквы, это число бит которые занимает тип. Отображаются на БД синим цветом.
  • Числа с плавающей точкой — делятся на по точности представления (а значит и количеству битов) на расширенной, двойной, одинарной точности и тип называемый Fixet-Point, в котором можно задать нужную точность для дробной и целой части. Отображаются на БД оранжевым цветом, а Fixet-Point серым
  • Комплексные числа — числа с мнимой единицей, также делятся на по точности представления. Отображаются на БД оранжевым цветом.
  • Строковые — очень часто применяемый тип данных, замечу что символ и строка в LabVIEW понятия тождественны, точнее символов в принципе и нет. Отображаются на БД розовым цветом.
  • Массивы — тип, который представляет из себя объединение одинаковый типов. Отображаются на БД тем цветом элементами которого образован, но более толстыми линиями. Если же размерность массива двойная (массив из массивов) или тройная, то отображается двойной или тройной линией цветом элементов.


Читать дальше

Заряжатор начало. (перенесено из гибнущих интырнетов)

Пояснение: Возможно, кому-нибудь эта статейка покажется излишне панковской, маргинальной и преисполненной излишне радикальных и грубых высказываний. Однако, таковы не слова, использованные автором для описания реалий, а сами реалии, подмеченные зорким оком наблюдателя. Слова же… Слова только обертка для мыслей. Посудите сами, надо быть настоящим Наполеоном из палаты №6, чтобы назвать простенькое устройство, собранное из чего попало, грандиозным проектом; Следует открыть глаза пошире и признать, что это самое натуральное

Говноляпство

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

Читать дальше

Освоение ПЛИС с использованием языка Verilog

Давненько мне приходили мысли о том, что засиделся я на платформе AVR и пора бы уже освоить что-то новое для себя. В качестве кандидатур рассматривались AVR32, ARM и FPGA. И вот, когда на горизонте замаячил новый проект, я стал думать, на чём бы его сделать. В принципе, проект этот можно реализовать на любой платформе, но желание расширить кругозор победило и было принято решение попробовать поработать с ПЛИС. Далее я с практически нулевыми знаниями в этой области погрузился в выбор камня для проекта. Почесав репу и прочесав инет я решил, что делать схему самому без опыта работы с этими штуками не стоит, а лучше найти подходящую стартёр плату.

Читать дальше