Рубрики
Метки
C Dallas DC-DC Eagle EagleUp EEPROM Ehternet Ethernet FLASH FUSE GPIO GUI HD44780 HopeRF i-button I/O i2c IAR IDE IGBT IIC ISIS Proteus ISP JTAG Keil LabView LAN LCD Linux MC34063 MC34068 Microchip MOSFET MSC-51 MSP430 NE555 Palm Pascal PC PIC PinBoard PinBoard II PLC PLL PR PWM RC RIGOL RIGOL 1042CD RS232 RTC RTOS smd STM32 SWD TopoR TouchSreen TSOP TWI UART USART USB USI WG12864 ZIF ZigBee АРУ АЦП Авто Аккумуляторы Акселерометр Алгоритм Аналог БП БПФ Быстрый старт ВЧ Видео Выбор Газовый паяльник Генератор Гоню Дарлингтон Датчик Двигатели Демонтаж Демоплата Диод Друзья Жало Задачка Измерения Импульсные Индуктивность Инструмент Интерфейс Ионистор Клавиатура Коммерческая разработка Компаратор Компас Конденсатор Конкурс Конфигурация Корпус ЛУТ Логический анализатор Лужение МК Магнетизм Макровидео Макро язык Маленькие хитрости Манипулятор Мелочи Механика Микроволна Микроконтроллер Моддинг Модуль Монтаж Мультиметр Наводка Начинающим ОУ Обработка сигналов Операционная система Описание Оплетка Опорное напряжение Оптимизация Опторазвязка О сайте Основы Осциллограф От Автора Отверстия Отладка Пайка Память Партнерство Паяльная станция Паяльник Печатная плата Питание Порт Прерывания Прибор Прикол Проверено на себе Программатор Программирование Протокол Рабочее место Радиолюбительские Технологии Радиопередача Рацуха Реактив Регистр Резистор Робот Светодиоды Силовая электроника Симистор Сонар Сообщество Софт Схемотехника ТРИЗ Таблица переходов Таймеры Терминал Типы выходов Тиристор Транзистор Трансивер Трассировка Трюки Ультразвук Умный дом Фен Физика Фильтры Флаги Флюс Фотодиод Фототранзистор Халява ЦАП Цифра Часы ШИМ Шаговый двигатель Шасси Шунт Эксперимент Электропривод Энкодер Язык Си самопал
Архив метки: Assembler
AVR. Учебный курс. Операционная система. Установка
Ядро у нас есть, теперь осталось это все хозяйство запихать на МК. Для этого всего лишь надо рассовать нужные части кода в исходник. Показывать буду на примере ATmega8. Для других МК разница минимальная. Может быть с таймером что нибудь помудрить … Читать далее
AVR. Учебный курс. Операционная система. Таймерная служба
Третья часть марлезонского балета описалова самопальной операционной системы для AVR. Итак, у нас есть очередь задач и общая логика работы системы. Но одной очереди задач с диспетчером мало. Нужно распределять задачи по времени, задавать интервалы, запускать отложенные задачи. Всем этим … Читать далее
Рубрика: AVR. Учебный курс
Метки: Assembler, AVR, RTOS, Алгоритм, Операционная система
Комментарии (15)
AVR. Учебный курс. Операционная система. Диспетчер задач.
В прошлой части возник вопрос организации программы по задачам. Чтобы можно было разбить программу на кучу независимых частей и не заморачиваться на тот счет, что где то у нас будет затык. Затык, конечно может быть, это все же не вытесняющая … Читать далее
AVR. Учебный курс. Скелет программы
При написании прошивки надо очень внимательно подходить к процессу организации архитектуры будущей программы. Программа должна быть быстрой, не допускать задержек главного цикла и легко расширяться. Оптимально использовать аппаратные ресурсы и стараться выжать максимум возможного из имеющихся ресурсов. Вообще, архитектура программ … Читать далее
Рубрика: AVR. Учебный курс
Метки: Assembler, AVR, Макро язык, Программирование, Трюки, Флаги
Комментарии (54)
AVR. Учебный курс. Стартовая инициализация
Инициализация памяти Мало кто подозревает о том, что при включении в оперативке далеко не всегда все байты равны 0xFF. Они могут, но не обязаны. Равно как и регистры РОН не всегда равны нулю при запуске. Обычно да, все обнулено, но … Читать далее
AVR. Учебный Курс. Типовые конструкции
При написании программ постоянно приходится использовать разные стандартные конструкции вроде циклов, операторов выбора, перехода, сравнения. Всякие там if-then-else или case-switch. В высокоуровневых языках это все уже готово, а на ассемблере приходится изобретать каждый раз заново. Впрочем, такие вещи пишутся один … Читать далее
Рубрика: AVR. Учебный курс
Метки: Assembler, Макро язык, Начинающим, Оптимизация, Трюки
Комментарии (84)
AVR. Учебный курс. Ветвления на индексных переходах
Таблицы переходов Вот представь, что нам надо сделать мега CASE, когда на вход валится число от 1 до 100 и нам надо сто вариантов действий. Как будешь делать? Если лепить сто штук CPI с последующими переходами, то можно дальше убиться … Читать далее
AVR. Учебный курс. Флаги и условные переходы
Есть в AVR (да и, пожалуй, во всех остальных процессорах) особый регистр SREG. О нем я несколько раз упоминал в прошлых статьях, но не вдавался в подробности. Чтож, пришло время рассказать, что же это же SREG такой и зачем он … Читать далее
AVR. Учебный курс. Подпрограммы и прерывания
Подпрограммы Когда один и тот же участок кода часто повторяется, то разумно как то его вынести и использовать многократно. Это дает просто колоссальный выйгрыш по обьему кода и удобству программирования. Вот, например, кусок кода, передающий в регистр UDR байты с … Читать далее
AVR. Учебный Курс. Работа с памятью
Так, с работой ядра на предмет переходов и адресации разобрались. Пора обратить свой взор в другую область — память. Ее тут два вида (EEPROM не в счет т.к. она вообщет переферия, а о ней потом): RAM — оперативка ROM — … Читать далее
AVR. Учебный курс. Простейшая программа.
Итак, прежде чем что то делать надо понять как вообще выполняется программа в контроллере, как работает ядро процессора. Для этого нам хватит AVR Studio и его эмулятора. Не очень интересно, может даже занудно, но если этот шаг пропустить, то дальнейшие … Читать далее
AVR. Учебный курс. Макроассемблер
Перед изучением системы команд микроконтроллера надо бы разобраться в инструментарии. Плох тот плотник который не знает свой топор. Основным инструментом у нас будет компилятор. У компилятора есть свой язык — макроассемблер, с помощью которого жизнь программиста упрощается в разы. Ведь … Читать далее
C vs Assembler
Если ты впервые столкнулся с микроконтроллерами, то наверняка у тебя стал выбор на чем писать. На Си или на Ассемблере. Выбор не прост, не зря программисты однокристальщики раскололись на два непримиримых лагеря. Одни с пеной у рта доказывают, что те … Читать далее



