Белов, А.В. Микроконтроллеры AVR: от азов программирования до создания практических устройств

Шаг 5. Переходим непосредственно к разработке устройств и программ 177 программа более наглядна и гораздо лучше читается. Поэтому привы ­ кайте писать программы правильно. Итак, мы рассмотрели общие принципы построения программы на Ассемблере. Теперь пора приступать к подробному описанию конкрет ­ ной программы, приведенной в листинге 5.1. И начнем мы с описания входящих в нее команд. Директивы .include _______________________________________________________ Присоединение к текущему тексту программы другого программного текста. Подобный прием используется практически во всех существу ­ ющих языках программирования. При составлении программ часто бывает как, что в совершенно разных программах приходится приме ­ нять абсолютно одинаковые программные фрагменты. Для того, чтобы не переписывать эти фрагменты из программы в программу, их принято оформлять в виде отдельного файла с таким расчетом, чтобы этот файл могли использовать все программы, где этот фрагмент потребуется. В языке Ассемблер для присоединения фрагмента к программе используется псевдоопера тор include. В качестве параметра для этой директивы должно быть указано имя присоединяемого файла. Если такой оператор поставить в любом месте программы, то содержащийся в присоединяемом файле фрагмент в процессе трансляции как бы встав ­ ляется в то самое место, где находится оператор. Например, в программе на листинге 5.1 в строке 1 в основной текст программы вставляется текст из файла tn2313def . inc. Кстати, подробнее об этом файле. Файл tn2313def . inc — это файл описаний. Он содержит описание всех регистров и некоторых других параметров микроконтроллера ATtiny2313. Это описание понадобится нам для того, чтобы в программе мы могли обращаться к каждому реги ­ стру по его имени. О том, как делаются такие описания, мы поговорим при рассмотрении конкретных программ. . list _________________________________________________________ Включение генерации листинга. В данном случае листинг — это спе ­ циальный файл, в котором отражается весь ход трансляции программы. Такой листинг повторяет весь текст вашей программы, включая все при ­ соединенные фрагменты. Против каждой строки программы, содержащей реальную команду, помещаются соответствующие ей машинные коды. Там же показываются все найденные в процессе трансляции ошибки. По умолчанию листинг не формируется. Если вам нужен листинг, включите данную команду в вашу программу.

RkJQdWJsaXNoZXIy MTExODQxMg==