![]() Я долго думал, как бы получше завершить начатый мною цикл. У меня было несколько вариантов. Сначала я планировал написать очередную рядовую программу, потом хотел сотворить какой-то большой и фееричный проект. Но в итоге остановился на том, что собственно вы сейчас и прочтете.
А решил я на этот раз заняться просто разговорами без всяких программ. Будем считать, что мы одолели хоть и маленькую, но вершину и можем теперь немного передохнуть и расслабиться. Все дело в том, что возможности используемой нами платы уже почти полностью исчерпаны, а высасывать из пальца никому не нужные задачи тоже неохота. На протяжении всех девяти шагов я потихоньку сообщал вам новые директивы ассемблера, описывал необходимые нам команды. Настало время узнать вам ВСЁ. На самом деле полное описание всех команд и директив ассемблера с примерами занимает всего несколько страниц текста. Чтобы вам долго не искать это описание на просторах интернета, я выкладываю его здесь. Вы можете ознакомиться с ним, перейдя по этой ссылке. Возможно, оно покажется вам слишком сокращенным либо наоборот более понятным, чем мои многословные и пространные описания — тут дело зависит от субъективного восприятия. Давайте же оглянемся назад и подытожим то, что мы уже изучили за это время. Во-первых, несмотря на мое изначальное намерение не останавливаться на рассмотрении модулей и узлов контроллера, я не удержался и довольно немалую часть времени уделил описанию работы с ними. Хочу заметить, что все вышесказанное на 100% соответствует только контроллеру ATtiny13. В других контроллерах названия регистров или расположение битов в них может отличаться, поэтому перед использованием их необходимо свериться либо с даташитом, либо с рекомендованными мною книгами Евстифеева. Во-вторых, мы рассмотрели довольно большое количество команд ассемблера, которых будет достаточно в 70-80 процентах случаев для написания программ. Команды эти охватывают: — работу с битами регистров ввода-вывода (cbi, sbi, cbis, sbis, sei); Не рассмотренными оказались команды косвенного чтения и записи в память данных, команды установки и сброса битов статусного регистра, большинство команд логических операций. С ними вы можете ознакомиться в упомянутом выше описании. Там же вы можете прочитать и об оставленных за пределами нашего внимания директивах ассемблера. Что же ожидает нас в будущем? Если данный цикл покажется интересным читателям, у меня уже есть задумки по его продолжению, но уже на другом контроллере (ATmega8) и с рассмотрением более продвинутых алгоритмов, таких как: динамическая индикация с использованием 7-сегментых светодиодных индикаторов, работа с цифровыми интерфейсами 1-wire, I2C, SPI, UART, работа с ЖК-дисплеем. Кроме того, есть задумка написать похожие циклы статйе, только для контроллеров PIC и MSP430. Поэтому, не ленитесь оставлять комментарии, задавать вопросы и писать замечания — от этого будет зависеть, появятся ли последующие статьи или нет, потому как тратить уйму и без того краткого свободного времени на написание никому не нужных статей как-то печально. Но не будем слишком пессимистичными. Если хоть кому-то этот цикл помог приобщиться к программированию микроконтроллеров, значит моя цель достигнута и время потрачено не зря. Вот, собственно, и все, что я хотел поведать в этот раз. Что-то я сегодня немногословен вопреки обыкновению, но отсутствие обратной связи как-то сильно поубавило энтузиазма. Желаю успехов в конструкторской деятельности! До скорой, надеюсь, встречи! Автор: Сергей Сокол, материал взят с его сайта https://sokolsp.at.ua/ No comments yet.
|
|