Поделюсь опытом первой работы. Меня пока больше всего интересовал вывод информации из регистров на ноги микроконтроллера. Так вот первый блин получился с тем, что при записи команды out я задавал название порта "DDRA" и "PORTA", а надо было соответственно $1a и $1b, тоесть так: out $1a, R16. (В 16 предварительно записывается код 11111111 то есть код 255 (ldi R16, 0b11111111)). Это означает, что вы открываете все 8 битов порта А на вывод ("DDRA"). А дальше выведем в порт А на все восемь ног сигналы логической единицы (11111111). Записываем тоже самое с командой out но уже указываем номер порта другой - $1b, то есть: out $1b, R16 (Это соответствует записи в порт "PortA", по идее после этого должны загореться все 8 светодиодиков, которые подключены на выходе канала А микроконтроллера AVR)
(номер порта можно увидеть справа внизу если щелкнуть справа сверху в окошке I/O Viev на вкладочке PortA. Если щелкнуть на него то внизу справа в другом окошке отобразится состояние портов канала А.) Если теперь откомпилировать программу и потом пошагово запускать код (клавиша F11) то можно увидеть как исполняется код.![]()





Ответить с цитированием