русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Виталий Гиберт


Дата добавления: 2014-11-28; просмотров: 693; Нарушение авторских прав


Я долго думал, как бы получше завершить начатый мною цикл. У меня было несколько вариантов. Сначала я планировал написать очередную рядовую программу, потом хотел сотворить какой-то большой и фееричный проект. Но в итоге остановился на том, что собственно вы сейчас и прочтете.   А решил я на этот раз заняться просто разговорами без всяких программ. Будем считать, что мы одолели хоть и маленькую, но вершину и можем теперь немного передохнуть и расслабиться. Все дело в том, что возможности используемой нами платы уже почти полностью исчерпаны, а высасывать из пальца никому не нужные задачи тоже неохота. На протяжении всех девяти шагов я потихоньку сообщал вам новые директивы ассемблера, описывал необходимые нам команды. Настало время узнать вам ВСЁ. На самом деле полное описание всех команд и директив ассемблера с примерами занимает всего несколько страниц текста. Чтобы вам долго не искать это описание на просторах интернета, я выкладываю его здесь. Вы можете ознакомиться с ним, перейдя по этой ссылке. Возможно, оно покажется вам слишком сокращенным либо наоборот более понятным, чем мои многословные и пространные описания - тут дело зависит от субъективного восприятия. Давайте же оглянемся назад и подытожим то, что мы уже изучили за это время. Во-первых, несмотря на мое изначальное намерение не останавливаться на рассмотрении модулей и узлов контроллера, я не удержался и довольно немалую часть времени уделил описанию работы с ними. Хочу заметить, что все вышесказанное на 100% соответствует только контроллеру ATtiny13. В других контроллерах названия регистров или расположение битов в них может отличаться, поэтому перед использованием их необходимо свериться либо с даташитом, либо с рекомендованными мною книгами Евстифеева. Во-вторых, мы рассмотрели довольно большое количество команд ассемблера, которых будет достаточно в 70-80 процентах случаев для написания программ. Команды эти охватывают: - работу с битами регистров ввода-вывода (cbi, sbi, cbis, sbis, sei); - работу с битами регистров общего назначения (clr, ser, sbrc, sbrs); - обмен информацией между РВВ и РОН (mov, in, out); - безусловный и условный переход (rjmp, rcall, ret, reti; brcc, brlo, brsh, brne, breq); - логические и математические операции между РОН (eor, lsl, inc, dec, add, adc, sub, sbc, cp, cpc); - логические и математические операции между РОН и константам (ldi, subi, sbci, cpi); - чтение данных из памяти программ (lpm). Не рассмотренными оказались команды косвенного чтения и записи в память данных, команды установки и сброса битов статусного регистра, большинство команд логических операций. С ними вы можете ознакомиться в упомянутом выше описании. Там же вы можете прочитать и об оставленных за пределами нашего внимания директивах ассемблера. Что же ожидает нас в будущем? Если данный цикл покажется интересным читателям, у меня уже есть задумки по его продолжению, но уже на другом контроллере (ATmega8) и с рассмотрением более продвинутых алгоритмов, таких как: динамическая индикация с использованием 7-сегментых светодиодных индикаторов, работа с цифровыми интерфейсами 1-wire, I2C, SPI, UART, работа с ЖК-дисплеем. Кроме того, есть задумка написать похожие циклы статйе, только для контроллеров PIC и MSP430. Поэтому, не ленитесь оставлять комментарии, задавать вопросы и писать замечания - от этого будет зависеть, появятся ли последующие статьи или нет, потому как тратить уйму и без того краткого свободного времени на написание никому не нужных статей как-то печально. Но не будем слишком пессимистичными. Если хоть кому-то этот цикл помог приобщиться к программированию микроконтроллеров, значит моя цель достигнута и время потрачено не зря. Вот, собственно, и все, что я хотел поведать в этот раз. Что-то я сегодня немногословен вопреки обыкновению, но отсутствие обратной связи как-то сильно поубавило энтузиазма.

 



 

Виталий Гиберт



<== предыдущая лекция | следующая лекция ==>
Ассемблер для начинающих (десятый шаг) | Моделирование будущего


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 1.179 сек.