Реверсивный счетчик Attiny-2313

Программирование микроконтроллеров AVR, PIC, ARM.
Разработка и изготовление печатных плат для модулей.

Реверсивный счетчик Attiny-2313

Сообщение arm-17 » 22 мар 2014, 15:09

Подскажите, как Сравнить на макс. и мин. значение в двоичном счетчике в самом инкременте декременте счетчика?



Forward:
cbr flags, (1__EventForward);сбросить флаг,обработали событие
;перед adiw надо сделать проверку числа на максимальное значение (0xffff), и если равно макс. значению то пропустить инкремент (adiw)

adiw CountHigh:CountLow,1 ;инкремент 16-ти битного счетчика

Покажите пример на ASM. пожалуйста. Очень надо.
Аватара пользователя
arm-17
 
Сообщения: 46
Зарегистрирован: 15 июл 2013, 15:15
Откуда: г.Москва
прог. языки: ASM

Re: Реверсивный счетчик Attiny-2313

Сообщение Radist » 23 мар 2014, 21:23

А в чем проблема? Как сравнивать 16 битные пары регистров? Сперва командой CP сравнить младшие, затем командой CPC сравнить старшие, затем переход по условию BRCC, BRCS, BRNE, BREQ.
Аватара пользователя
Radist
 
Сообщения: 2254
Зарегистрирован: 01 июл 2009, 08:59
Откуда: Екатеринбург
прог. языки: асемблер AVR

Re: Реверсивный счетчик Attiny-2313

Сообщение arm-17 » 25 мар 2014, 09:41

Это все понятно.Вот моя ограничевалка.

;*******************ограничевалка*****************************************

ldi temp1,0x36 ;6

cp temp1,tASCII4

breq equal

rjmp end_int



equal:

ldi temp1,0x35 ;5

cp temp1,tASCII3

breq equal_1

rjmp end_int



equal_1:

ldi temp1,0x35 ;5

cp temp1,tASCII2

breq equal_2

rjmp end_int



equal_2:

ldi temp1,0x33 ;3

cp temp1,cnt16a

breq equal_3

rjmp end_int



equal_3:

ldi temp1,0x35 ;5

cp temp1,tASCII2

breq equal_4



end_int:

ret

;**********************************************************************


Она работает,но мне сказали что,Сравнения на макс. и мин. значение надо делать с двоичным счетчиком получается быстрее.Нужна скорость счета. Напишите пример пожалуйста,а то я что-то ни как не пойму.
Аватара пользователя
arm-17
 
Сообщения: 46
Зарегистрирован: 15 июл 2013, 15:15
Откуда: г.Москва
прог. языки: ASM


Вернуться в Микроконтроллеры

Кто сейчас на конференции

Сейчас этот форум просматривают: Yandex [Bot] и гости: 8