.
;************************************ ; Регистры общ. назначения ;************************************ Bit2_10 ; байт двоичного числа (для преобразования) Led_U ; верхний байт результата. Led_H ; старший байт результата. Led_L ; младший байт результата. Temp ; ;---------------------------------------- ;ПП преобразования однобайтного двоичного ; числа в трёхзначное десятичное число ;---------------------------------------- BIN2_10 clrf Led_U ; Очистить верхний байт clrf Led_H ; Очистить старший байт clrf Led_L ; Очистить младший байт incf Led_U ; +1 movlw 9Ch ; Отнимаем .100 addwf Bit2_10 ; bc $-.6 ; Продолжаем отнимать. decf Led_U ; Коррекция movlw .100 ; Выделяем остаток десятков.. addwf Bit2_10 ; incf Led_H ; +1 movlw 0F6h ; Отнимаем .10 addwf Bit2_10 ; bc $-.6 ; Продолжаем отнимать. decf Led_H ; Коррекция movlw .10 ; Выделяем остаток единиц. addwf Bit2_10 ; movff Bit2_10,Led_L ; Загружаем остаток в единицы. return ; Возврат из ПП.
Все права принадлежат ChipMK.ru. При копировании материала ссылка обязательна. 2011-2021 © ChipMK.ru
![]() |
|