ПП перевода десятичного числа в семисегментный код.

Автор: Super User Просмотров: 979

 

;----------------------------------------------------------------------------
; ПП перевода десятичного числа в семисегментный код.
; с защитой  от превышения "прыжка"
;----------------------------------------------------------------------------
PER_10_7   mullw               .2 ; Умножаем W на 2.
           movlw              .27 ; Максимальный "прыжок"
           movwf             Temp ; Копируем в Temp
           movf           PRODL,0 ; Результат умножения в W
           cpfsgt            Temp ; Сравниваем с Temp
           movlw              .20 ; В случае превышения "прыжок" на (символ потушен)
           addwf              PCL ; Увеличение PCL на величину содержимого W.
           retlw      b'00111111' ; Символ "0".
           retlw      b'00000110' ; Символ "1".
           retlw      b'01011011' ; Символ "2".
           retlw      b'01001111' ; Символ "3".
           retlw      b'01100110' ; Символ "4".
           retlw      b'01101101' ; Символ "5".
           retlw      b'01111101' ; Символ "6".
           retlw      b'00000111' ; Символ "7".
           retlw      b'01111111' ; Символ "8".
           retlw      b'01101111' ; Символ "9".
           retlw      b'00000000' ; Символ потушен 10
           retlw      b'00000001' ; Символ прочерк  (верхний)  11
           retlw      b'00001000' ; Символ прочерк (нижний) 12
           retlw      b'01000000' ; Символ прочерк  (средний) 13      
      

 

Таблица должна располагаться в памяти программ в пределах 256- байтного блока.


Все права принадлежат ChipMK.ru. При копировании материала ссылка обязательна. 2011-2017 © ChipMK.ru

ChipMk.ru Яндекс.Метрика
PRCY.ru