Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Ультразвуковое измерение дальности на MSP430. div2 div3 div4 divl cmp.w #0 6,htX100_msw jlo div2




div2

div3 div4

divl cmp.w #0 6,htX100_msw jlo div2

; Сравнить делитель; со старшим словом; делимого

; Если меньше - переход; на div2 sub.w #0 6,htX100_msw; Вычесть б из старше-

rlc.w DIGITS jc div4 dec.w IRBT j z div3

; го слова

Сдвинуть результат влево через бит переноса Если в carry "1", то завер­шаем

Декремент счётчика цикла Если счётчик = 0:завершение

Делимое X 2

rla.w htX100_lsw rlc.w htXlOOjnsw jnc divl

Если в carry «0» переход

к divl sub.w #0 6,htX100 msw; Вычесть 6 из старше-

; го слова

setc; Установить carry в «1»

jmp div2; Повтор
clrc; Очистить carry

ret; Возврат из подпрограммы


.^■k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k-k г

Hex2bcd; Подпрограмма перевода 16-битного шестнадцате

; ричного значения

; DIGITS, в двоично-десятичное (BCD) входные

; данные 1б-бит шестнадцатеричные в выходные

; там же в BCD

г * * * * * -,

mov #16,r9
clr r8
clr r7
rla DIGITS
dadd r7,r7
dadd r8,r8
dec r9
jnz L$l
mov r7,DIGITS
ret  

в R9 число бит Обнулить R8 Обнулить R7

L$l rla DIGITS; Арифметический сдвиг DIGITS

влево

Десятичное сложение source + carry —> destination

Декремент счётчика бит Все 16 бит обработаны? Результат —> DIGITS Возврат из подпрограммы





Дата публикования: 2014-11-18; Прочитано: 299 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.007 с)...