Урок №1. Пишем программный код мигания светодиодом используя Assembler на микроконтроллере Atmega8.

preview_player
Показать описание
Пишем программный код для мигания светодиодом с помощью языка программирования Assembler на микроконтроллере Atmega8.

Рекомендации по теме
Комментарии
Автор

Очень интересная тема!
Продолжайте!
Далеко не всё понятно ( это от того что только первый урок ). Расскажи в следующих уроках поподробнее о регистрах !
И такие маленькие примеры очень хороши для понимания темы.
Спасибо за работу!

СергейЛитовченко-рц
Автор

Добрый день! В принципе правильный разбор программирования на ассемблере, мне нравится. Есть одно замечание - ошибка в расчете тактов выполнения цикла WLOOP2 (начиная с 13 мин 10 сек). Цикл выполняется 199*3+2, а не так как сказано в видео 199*2+3. Т.к. именно в случае перехода на начало цикла WLOOP2 (повтор выполнения цикла) команда brne WLOOP2 выполняется 2 такта, а при выходе из цикла (нулевой результат), обычный инкремент программного счетчика PC - переход на следующую команду - 1 такт.
В итоге: внутренний цикл WLOOP2 выполняется 3х199+2=599 тактов, средний цикл WLOOP1 - (599+1+3)х49+599+1+2=30149 тактов, внешний цикл WLOOP0 - тактов. Вся подпрограмма задержки, включая команды вызова rcall (3 такта) и возврата ret (4 такта) - 1507649+3+4=1507656 тактов. При тактовой частоте МК Atmega8 4МГц это будет c.
Для получения задержки свечения светодиодов 1 сек надо увеличить время выполнения внешнего цикла - 50Х(1/0.377)=133. Таким образом .equ Delay = 133.

marina
Автор

Ассемблер мне как-то легче заходит, чем Си. Будет ли продолжение?

yuraholod
Автор

Добрый день ! У меня почему то получается ошибка . : Error 1 Missing include file name. Ошибка 1. Отсутствует включаемое имя файла.

Леонидандреев-щщ
Автор

Очень нужная тема, ждем продолжения. Я так понял что библиотека m8def содержит дефайны, а можно сделать то же самое но без нее?

ciklomat
Автор

Александр, приветствую вас... Покажите как сделать что бы процессор засыпал при отключение " к примеру если отключили с PINB + 5В и просыпается если подали +5В.

maxim
Автор

У меня один вопрос, как это всё выучить по статьям и видеоурокам. Наткнулся на язык "дракон" это где лепишь блоксхему а потом каждый блок описываешь на языке программирования С или АСМ и оно выплёвывает готовый код, к которому надо дописать заголовки и дефайны. Казалось бы это не может работать как ИДЭЕ, но это может дать понимание новичку, типа подводящее упражнение, когда ты в этом не в зуб ногой

MAGDEBACH
Автор

Что за подход за такой? Я всё понимаю, но 90% урока надо искать инфу со стороны поисковой системы, так не делают!

okami
Автор

А что надо поменять чтоб в атмеге 328 работало, очень интересное видео 👍

kosmos
Автор

Вполне адекватная подача, а читать даташит и др. инф. никто не отменял.

yuraholod