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

AVR

О блоге

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

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

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

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

Читатели (269)

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

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

Таймеры и задержки: сборник рецептов

AVR
Увидел в статье DI HALT "Простой программный таймер для конечных автоматов" некий кусок кода и решил накатать статью…

bool MainTimerIsExpired(const uint32_t Timer)                      // ???
{                                                                  // ???
   if ((TimeMs - Timer) < (1UL << 31)) return (Timer <= TimeMs);   // ???
   return false;                                                   // ???
}                                                                  // ???

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


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

attiny817 twi manual

AVR

Как работать с TWI новых тинь?


К сожаленю, даташит на процессоры стеснительно умалчивает об этой мелочи. Немного описаны биты в регистрах, состояния интерфейса — и всё. Стартовые решения по этой теме тоже отсутствуют, в аппликешн нотах — гордо перемаркированные старые атмеловские аппноты, совершенно неподходящие к новой аппаратуре.
Наверное, в Микрочипе ждут, пока Горнист за них мануал напишет.

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

Program Stick

AVR
programstick view
Для чего он нужен? PgmStik это простой и дешевый «одноразовый» программатор для AVR.

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

Машина времени для крошек.

AVR
При программировании микроконтроллеров часто требуется отслеживать временные промежутки. Даже банальное «помигать светодиодом» требует учета времени погашенного состояния и времени светимости.

В Си есть функция delay_ms(X), которая выполняет пустой цикл X ms, то есть по сути вешает проц на X*fcpu/1000 тактов, так как ничего иного в это время он делать не может.

Многие прогеры, намучившись с этой функцией (или ей подобными), переходят на использование прерываний и аппаратных таймеров, но тут другая засада — их всегда мало.

Каждый выкручивается как может, например навешивает на один таймер несколько функций, использует биты счетчика как флаги, впрягает в нарты сторожевую собаку… вариаций много, но всегда новый проект означает новые выеживания, поиски решения в ограниченном пространстве.

Пройдя все эти стадии, я наконец-то дорос до понимания, что «что-то тут не так». Нарисовалась необходимость диспетчеризации задач по таймеру.
Прочитав AVR. Учебный Курс. Архитектура Программ Часть 2 в очередной раз убедился, что изобрел велосипед… ну и пусть, это просто еще один вариант решения.


Читать дальше
  • +2
  • 24 января 2018, 13:02
  • iva
  • 1

Первые впечатления от tiny817

AVR

А чего ещё можно было ожидать от людей, сделавших в своё время контроллер с двенадцатибитной шиной? С тех пор стало ясно всем, что они извращенцы сумрачно гениальные.

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

Modbus RTU для AVR на Assembler. часть2

AVR
Ну так сказать «дембельский аккорд по АВРам» часть2. Если что то начало можно глянуть здесь



Читать дальше
  • +2
  • 16 августа 2016, 15:25
  • deses
  • 2

Modbus RTU для AVR на Assembler. часть1

AVR
Понадобилось мне недавно разобраться с Модбасом. А точнее освоить подключение панели оператора к Меге.
Приглашаю всех желающих посмотреть мою реализацию такого решения


Читать дальше
  • +3
  • 02 августа 2016, 22:27
  • deses

Microchip купила Atmel.

AVR
Вроде как плохо, но с другой стороны обещают продолжать выпуск контроллеров, к тому же с LifeTime у Микрочипа всё хорошо.
Документ
Письмо

Мультимастер на USI

AVR
Это логическое продолжение предыдущей статьи «USI в двухпроводном режиме».
В этой статье пойдет рассказ о построении системы связи нескольких микроконтроллеров в составе одного устройства, на основе аппаратного модуля USI. Описаны «грабли» и «подводные камни» USI, а так же пути их обхода, на основе реального кода.
Все это реализовано и отлажено на двух микроконтроллерах ATtiny44A, один из которых работал на 8МГц, а другой на 1МГц. Размер кода 408 байт (204 слова).

Читать дальше
  • +2
  • 21 марта 2016, 12:30
  • iva

Новость

AVR
Насколько я понял Микрочип купил Атмел.
Но производство АВР будет продолжено.
www.microchip.com/pagehandler/en-us/aboutus/acquisitions/atmel-acquisition.html