Считати значение регистра(команда)

Низкоуровневое программирование портов, микроконтроллеров и т.д.

Модератор: Andy

Ответить
konstantin_04
Сообщения: 1
Зарегистрирован: 12 авг 2009, 12:46

Считати значение регистра(команда)

Ситуация следующая, пишу светофор на assambler но не в этом соль.
Я немогу найти нужную команду для того чтоби спросить что за переменная стоит в регистре.
Вот так это выглядит в C

Код: Выделить всё

if(PORTB==1)
        {
           PORTB=3;
        }
        else if(PORTB==3){
           PORTB=4;
        
        }else if(PORTB==4)
        {
           PORTB=2;
Я пытался пременить cpi, но симулятор выдаёт ошибку.

Код: Выделить всё

 
cpi PORTB,1
breq if1
cpi PORTB,3
breq if2
cpi PORTB,4
breq if3
Прошу вашей помощи.

Процессор : Atmega8
--------------------------------------------------------------------------------
Добавлено сообщение
--------------------------------------------------------------------------------
Ошибку я нашел,
сначала надо было вписат звачение в r16 а потом спросит его значение

Код: Выделить всё

in r16,PORTB
cpi r16, 1
breq if1
Ответить