Рейтинг
37.52
голосов: 39
avatar

AVR

О блоге

Описание ядра и периферии контроллеров AVR. Все, что касается работы с AVR семейством.

Администраторы (1)

Модераторы (0)

Модераторов здесь не замечено

Читатели (267)

dcoder vvzvlad ploop hexFF foxit _YS_ Vasil Tabke XANDER marvin_yorke Ultrin WildCat hexanaft zb3k Vga Alatar t0x193n mzw Reverb tda2030

Все читатели блога

Документация по AVR микроконтроллерам, все на русском.

AVR
За время программирования AVR микроконтроллеров, нарыл я вагон книг в интернете

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

Мегаклон программатор AVRISP MKII для микроконтроллеров AVR.

AVR
Долгое время я программировал микроконтроллеры AVR клоном программатором STK500. Он прекрасно уживается с AvrStudio4. И работает прямо из среды этой программы. Так что я программировал AVR чипы и был очень счастлив. Но время шло и появилась AtmelStudio5, потом AtmelStudio6

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

Математика на ассемблере в AVR.

AVR
За время программирования чипов AVR, нарыл я разных математических подпрограмм для этих чипов. Может кому пригодятся. Что мне жалко этого добра? Пущай народ чесной пользуется. Если у кого то есть что то еще, то можно добавить это в статью.

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

Мистер "Х" или ATXmega (на примере ATXmega32A4) быстрый старт.

AVR
Отмазки

Около года назад понадобилось мне соорудить девайс на основе ATXmega32A4, что в общем-то удалось, правда при изготовлении его я был дико огорчён полным отсутствием статей по данной серии МК, что спешу исправить. Сразу скажу, что статья из разряда «быстрый старт», так что на очень подробное описание тут рассчитывать не стоит. Отдельно хочу поблагодарить наших лающих товарищей за отличный перевод документации по серии Xmega. Ну к сути.


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

Реализация кольцевого буфера на ассемблере AVR

AVR
Для очередного эксперимента понадобился мне такой вот буфер. Что это такое, можно почитать в Википедии, а также здесь, поэтому углубляться не буду.
Оговорки:
  1. я не профессиональный программист и наверное им не стану, поэтому возможно, что нижеприведенное потребует оптимизации/переработки;
  2. на Сях и прочих высокоуровневых языках не пишу — не умею;
  3. долго искать готовое решение на ассемблере не стал, а изобретать колесо вроде как и не запрещено (хоть иногда и глупо), зато интересно.
Ниже будет краткое описание того, что я наделал.

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

Преобразователь USB/UART, совмещенный с программатором для микроконтроллеров AVR (APU-2M)

AVR
Похожие устройтсва:

APU-2,
APU-2N (Narrow)
APU-2MM (Module Mini-USB)

Продолжаю цикл заметок «Проекты-малыши»

В данной заметке будет кратко рассмотрено устройство, позволяющее преобразовывать данные, поступающие по интерфейсу USB, в данные, съедобные для UART-модуля обычного микроконтроллера (и в другую сторону, естественно, тоже). Преобразование упомянутых интерфейсов производится посредством широко известной (в узких кругах) микросхемы FT232RL (линии шины CBUS которой также выведены для удобства пользователя на выходной разъем). У рассматриваемого устройства есть еще одна полезная фича – в него встроен программатор для микроконтроллеров AVR конторы Atmel. Внешний вид преобразователя показан на рисунке ниже:






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

AVR под Mac OS X - это просто!

AVR

Всё течёт — всё меняется.


Казалось бы совсем не давно наличие самостоятельно собранного PC считалось нормой высоких технологий, а постоянный «апгрейд» доставлял игровое удовольствие — как процесс творчества. Да и чувствовалась какая-то законченность, так как если не PC — то что? В то прекрасное время, как правило, все PC имели настоящие COM и LPT порты, что упрощало «до нельзя» изучение и освоение AVR. Чем, собственно многие и баловались. Ну как не побаловаться? PC — вот он под рукой, купил AVR-ку «за не дорого» и шей её сколько душе угодно, «скрутив» один единственный шнурок :))



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

Timers Capture mode или ПРАВИЛЬНАЯ работа с таймером в режиме захвата

AVR
Сказано об этом в сети много, но на примере дремучих камней и без особых разъяснений. По этому напишу своё.
Есть у АВР такая фишка — захват. Суть в том, что по фронту или спаду (настраивается битом) сигнала на специальной ноге ICRx, делается снимок регистра TCNT и сохраняется в bmp формате и копируется в регистр ICRx. Опосля чего вызывается прерывание, если оно разрешено. В прерывание мы можем входить не спеша — данные из регистра никуда не денутся. Главное успеть обработать до следующего «снимка».
Всё красиво, всё хорошо. Но вот беда. Атмельцы не сделали возможность сбрасывать/запускать таймер по событию! Таймер крутится в цикле, снимается его мгновенное значение, а дальше делай с ним что хочешь.
Самый секас начинается, когда нам надо отслеживать опускание частоты сигнала ниже порога переполнения таймера. Был бы аппаратный ресет — всё понятно. Мониторь бит OVF при считывании результата и не парься! Но, увы и ах.


Читать дальше
  • +2
  • 04 января 2013, 19:47
  • Dikoy
  • 1

USB программатор для микроконтроллеров AVR с преобразователем интерфейса USB/UART (встраиваемый модуль)

AVR
Похожие программаторы:

APU-2,
APU-2N (Narrow),
APU-2M (Module USB)

Продолжаю цикл заметок «проекты-малыши»

На днях собрал себе еще один вариант USB программатора для микроконтроллеров AVR на базе чипа FT232RL (назвал я этот программатор APU-2MM):



Данное устройство совмещает в себе функции программатора и преобразователя USB-UART. Т.е., при использовании рассматриваемого модуля через один и тот же интерфейсный шнур (в данном случае, видимо, USB A – Mini USB B) можно:

— осуществить связь компьютера с исполняющим устройством, выполненном, в частности, на базе микроконтроллера AVR (т.е., преобразовать данные шины USB в данные «шины» UART),

— прошить микроконтроллер AVR, на базе которого выполнено исполняющее устройство.

Сразу хочу оговориться, что в камень заливается «оригинальная» прошивка, т.е. hex-файл, сгенерированный (обычно) средой разработки. Никаких шифрований и прочих изысков не подразумевается. Прошивка микроконтроллера по USB идет точно так же, как если бы мы просто вставили программатор в разъем “ISP” на таргет-плате.



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

Измерение напряжения питания

AVR
В различных батарейных и аккумуляторных девайсах бывает не лишним отображать оставшийся заряд и/или иметь возможность вовремя отрубиться, чтобы не переразряжать аккумулятор. Для этого нужно измерять напряжение питания, что обычно делается с помощью встроенного ADC. Впрочем, ADC может отсутствовать (например, в тиньке 2313) или быть недоступен — заниматься более важным делом, либо в качестве опоры может использоваться то самое напряжение питания, etc.

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

Схемка измерения напряжения


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