Требуется программист в Зеленограде
- обработка данных с датчиков; ColdFire; 40 тыс. e-mail:jobsmp@pochta.ru |
;**************************************************
ANQLOMER:
IFNBIT LIR_ROT_FLAG ;ЕСЛИ ЛИР НЕ ПОВЕРНУЛСЯ НА ЗУБ
RETURN ;НИЧЕГО НЕ ДЕЛАЕМ ВО ИЗБЕЖАНИЕ ДРЕБЕЗГА.
BCF LIR_ROT_FLAG
MOVF PORTC,W
MOVWF OLD_C
IFBIT OLD_C,0
GOTO AN_DEC
AN_INC:
INCF AN_LOW,F
IFBIT Z_
INCF AN_HI,F
GOTO AN_COMMON
AN_DEC:
MOVF AN_LOW,F
IFBIT Z_
DECF AN_HI,F
DECF AN_LOW,F
IFNBIT AN_HI,7
GOTO AN_D1
MOVLW LOW(.1799)
MOVWF AN_LOW
MOVLW HIGH(.1799)
MOVWF AN_HI
AN_D1:
AN_COMMON:
IFNBIT PORTC,3
GOTO NOINDEX
INDEX:
CLRF AN_HI
CLRF AN_LOW
NOINDEX:
MOVF AN_HI,W
MOVWF TBUF4
MOVF AN_LOW,W
MOVWF TBUF5
RETURN
;****************************************************
в мейне, если он быстро крутися:
CHECK_LIR_ROTATE:
MOVF PORTC,W
XORWF OLD_C,W
ANDLW B'00000001'
IFNBIT Z_
BSF LIR_ROT_FLAG
goto MainLoop