Рассмотрено практическое программирование микроконтроллеров AVR, в том числе популярной платформы Arduino. Рассказано, как выйти за рамки ограничений Arduino , когда следует применять прямое программирование на ассемблере, а когда использовать языки высокого уровня. Изложены общие принципы устройства микроконтроллеров AVR и их программирования, система команд, программирование таймеров,арифметические операции, память, интерфейсы, режимы энергосбережения и сторожевой таймер, программы реального времени, обмен данными с персоналльным компьютером. Особое внимание уделено переносу типичных Arduino-проектов на ассемблер. Даны готовые рецепты для программирования большинства основных функций современной микроэлектронной аппаратуры.
Rassmotreno prakticheskoe programmirovanie mikrokontrollerov AVR, v tom chisle populyarnoy platformy Arduino. Rasskazano, kak vyyti za ramki ogranicheniy Arduino , kogda sleduet primenyat pryamoe programmirovanie na assemblere, a kogda ispolzovat yazyki vysokogo urovnya. Izlozheny obshchie printsipy ustroystva mikrokontrollerov AVR i ikh programmirovaniya, sistema komand, programmirovanie taymerov,arifmeticheskie operatsii, pamyat, interfeysy, rezhimy energosberezheniya i storozhevoy taymer, programmy realnogo vremeni, obmen dannymi s personallnym kompyuterom. Osoboe vnimanie udeleno perenosu tipichnykh Arduino-proektov na assembler. Dany gotovye retsepty dlya programmirovaniya bolshinstva osnovnykh funktsiy sovremennoy mikroelektronnoy apparatury.