AFON // радиотехник affonya@mail.ru
← все инструменты

Симулятор AVR ATmega8

Программная модель ядра AVR: все команды ATmega8, 32 регистра общего назначения, 1 КБ ОЗУ, таймеры Timer0, Timer1 и Timer2 с ШИМ, прерывания, UART с терминалом, АЦП на шести каналах и EEPROM. Загрузите .hex — свой, из проекта раздела или готовое демо — и выполняйте программу по шагам, наблюдая выводы, регистры и память.

Загрузка программы

Демо Проект раздела

Программа не загружена — начните с готового демо.

Управление

Скорость Fosc
Тактов: 0 Время: 0.000 с Остановлено F8 шаг · F9 пуск/стоп · F10 сброс

Выводы микроконтроллера

PORTB · PB7 … PB0  (PB1 = OC1A, PB2 = OC1B, PB3 = OC2)
PORTC · PC6 … PC0  (входы АЦП)
PORTD · PD7 … PD0  (PD0/PD1 = UART, PD2 = INT0, PD3 = INT1)

Вывод, настроенный на выход, горит как светодиод; при ШИМ яркость соответствует скважности. Вывод-вход подсвечен пунктиром — нажмите на него, чтобы переключить уровень (имитация кнопки). По умолчанию входы подтянуты к «1».

Терминал UART

буфер приёма пуст

АЦП — напряжения на входах

Ползунки задают код АЦП 0…1023, что при опорном напряжении 5 В соответствует показанному напряжению на выводе ADC0…ADC5 (PC0…PC5).

Регистры r0 … r31

ОЗУ 0x0060 … 0x015F

Программа

Загрузите .hex, чтобы увидеть код.

Щелчок по строке ставит или снимает точку останова. Текущая команда подсвечена. Адреса — в словах, как в дизассемблере AVR.

Регистры ввода-вывода

Что моделируется

Ядро — ATmega8: полный набор команд (включая MUL, MOVW, LPM, косвенную адресацию через X, Y, Z со смещением), стек в ОЗУ, все флаги SREG. Периферия: порты B, C, D с регистрами направления и подтяжками; Timer0; Timer1 в режимах Normal, CTC и Fast PWM с выходами OC1A и OC1B; Timer2 с OCR2; система прерываний с полной таблицей векторов ATmega8, включая INT0 и INT1 по фронту или уровню; UART на передачу и приём; АЦП на шесть каналов; EEPROM на 512 байт.

Не моделируются: SPI, TWI (I²C), аналоговый компаратор, сторожевой таймер и режимы энергосбережения глубже простого SLEEP. Программы для ATmega16, ATmega32 и ATmega328 обычно выполняются, но их дополнительные регистры и выводы отсутствуют.

Связанные инструменты: симулятор PIC16F84A, расчёт UBRR, разбор Intel HEX, конструктор регистра.