МИКРОКОНТРОЛЛЕР AVR - МИКРОКОНТРОЛЛЕР AVR

Даже без такого сокращения система команд AVR является довольно понятной, хотя есть ряд вещей, на которые следует обратить внимание, когда вы пользуетесь документацией фирмы Atmel или данным мной описанием для создания прикладных программ. Первое, на что надо обратить внимание, это адреса регистров и диапазон данных, с которыми оперирует команда. Многие команды могут обращаться только к 16-ти старшим РОН и не имеют доступа к 16-ти младшим. Значения смещений и констант могут быть ограничены и оказаться не в том диапазоне, который вы ожидали. Вы должны знать обо всех этих ограничениях, когда будете планировать, какие РОН использовать и какие значения констант являются допустимыми в структурах данных.

Фирма Atmel делает следующее заявление по поводу микроконтроллера AVR 8515: «120 мощных команд, большинство из которых выполняется за один такт». Это подразумевает, что микроконтроллер позволяет гораздо проще создавать программы, критичные ко времени: если для любой команды требуется один цикл, вычисление времени значительно облегчается. Но лично у меня возникло много сомнений по поводу этого утверждения после того, как я подробно ознакомился с системой команд. Хотя большая часть команд действительно выполняется за один такт, многие все же требуют нескольких тактов. Что еще хуже, реальное время выполнения для многих команд трудно предсказуемо, например, команда «cpse» может выполняться за 1, 2 или 3 такта. Это не значит, что архитектура AVR плохо подходит реализации приложений, критичных ко времени. В большинстве случаев это не так, однако, данные приложения не так просто реализовать, как можно ожидать при первом знакомстве с документацией.

Go to Top