AVRA компилятор языка Ассемблера для микроконтроллеров AVR фирмы ATMEL. Установка в Linux и Windows и пример использования.

tn13def.inc файл заголовок для микроконтроллеров ATtiny13. Включаемый файл tn13def.inc содержит директивы ассемблера объявляющие символические имена регистров и флагов микроконтроллера ATtiny13, принятые в документации ATMEL. Комментарии на русском языке.

Язык Ассемблера для RISC микроконтроллеров AVR

Переходы

Условный и безусловный переход, вызов подпрограмм. Команды RJMP, IJMP, ICALL, RCALL, RET, RETI, BRBS, BRBC и другие.
Команды типа test&skip. Команды CPSE, SBRC, SBRS, SBIC, SBIS, SRBS.
Пересылка данных

Копирование РОН. Команды MOV, MOVW.
Загрузка константы в РОН. Команда LDI.
Загрузка в РОН из ОЗУ. Команды LD, LDD, LDS.
Запись в ОЗУ из РОН. Команды ST, STD, STS.
Чтение и запись Flash памяти (программ). Команды LPM, SPM.
Чтение и запись регистров ввода/вывода. Команды IN, OUT.
Работа со стеком. Команды PUSH, POP.
Логические, арифметические и битовые

Регистр состояния SREG и его флаги.
Команды сравнения и проверки регистров TST, CP, CPC, CPI.
Команды выполняющие логические операции с регистрами AND, ANDI, EOR, OR, ORI.
Команды выполняющие арифметические операции с регистрами ADD, ADC, ADIW, SUB, SUBI, SBC, SBCI, SBIW, DEC, INC.
Команды выполняющие операцию сдвига с регистром ASR, LSL, LSR, ROL, ROR.
Команды изменяющие отдельные биты регистра COM, NEG, SWAP, CLR, SER, SBC, SBR, CBI, SBI, BCLR, BSET и другие.
Управление системой

Нет операции. Команда NOP.
Управление энергопотреблением. Команда SLEEP.
Сброс сторожевого таймера. Команда WDR.
Работа с внутрисхемным отладчиком. Команда BREAK.

Периферийные устройства микроконтроллеров AVR

Таймер - счетчик T0 микроконтроллера ATtiny13. T0 8-ми разрядный таймер/счетчик может использоваться для отсчета временных интервалов, как счетчик внешних событий или в качестве двухканального генератора 8-ми битного ШИМ сигнала.