Автор: Пользователь скрыл имя, 19 Февраля 2013 в 02:43, курсовая работа
Значні досягнення у галузях обробки інформації, машинного зору, теорії керування та цифрової обробки сигналів як на апаратному, так і на програмному рівнях дають можливість представлення, аналізу та розуміння динамічно змінюваних дорожніх умов, а також реагування на ці умови автономних транспортних засобів. Розробка систем керування автономними транспортними засобами є актуальною задачею тому що забезпечує значно більшу безпеку та зручність ніж ручне керування..
CLRF CCPR2L
RETURN
;_____________________________
CHOOSE_1
BCF PORTC,RC3
BCF PORTC,RC4
BSF PORTC,RC5
RETURN
;_____________________________
CHOOSE_2
BCF PORTC,RC3
BSF PORTC,RC4
BCF PORTC,RC5
RETURN
;_____________________________
CHOOSE_3
BCF PORTC,RC3
BSF PORTC,RC4
BSF PORTC,RC5
RETURN
;_____________________________
CHOOSE_4
BSF PORTC,RC3
BCF PORTC,RC4
BCF PORTC,RC5
RETURN
;_____________________________
CHOOSE_5
BSF PORTC,RC3
BCF PORTC,RC4
BSF PORTC,RC5
RETURN
ORG 100H
BEGIN
CLRF INTCON
CLRF PORTC
BANK1
;=============================
;ИНИЦИАЛИЗАЦИЯ USART
;Скорость передачи данных 9600 бит/сек
MOVLW .129
MOVWF SPBRG
;_____________________________
;Установка высокоскоростного режима
BSF TXSTA,TXEN ;Разрешаем передачу
BSF TXSTA,BRGH ;Высокоскоростной режим
BCF TXSTA,TX9 ;8-ми разрядный приём
;_____________________________
;ИНИЦИАЛИЗАЦИЯ ПОТРОВ ВВОДА-ВЫВОДА
BCF TRISC,1
BCF TRISC,2
BCF TRISC,3
BCF TRISC,4
BCF TRISC,5
BSF TRISC,6
BSF TRISC,7
;_____________________________
;ИНИЦИАЛИЗАЦИЯ ШИМ
movlw B'00000000'
movwf TRISB
movlw B'11111111'
movwf PR2 ; период ШИМ - максимальный
clrf INTCON
BANK0
movlw B'00001100'
movwf CCP2CON
movlw B'00000000'
movwf CCPR2L
bsf T2CON, 1
bsf T2CON, TMR2ON
;ОЖИДАЕМ ДАННЫЕ ОТ ЭВМ
BSF PORTB,1
BSF RCSTA,7 ;РАЗРЕШАЕМ РАБОТУ
BSF RCSTA,CREN ;РАЗРЕШАЕМ ПРИЁМ
MAIN
BTFSS PIR1,RCIF
GOTO $-1
MOVF RCREG,W
MOVWF DIGIT
;__________________________
; Если данные приняты то проверяем команду на стоп
T_STOP BCF PIR1,RCIF
MOVF DIGIT,W
SUBLW 13h
BTFSS STATUS,Z
GOTO T_REW
CLRF CCPR2L
GOTO OTWET
;____________________________
; Если данные приняты то проверяем команду на реверс
T_REW MOVF DIGIT,W
SUBLW 028h
BTFSS STATUS,Z
GOTO T_UP
CALL REWERS
GOTO OTWET
;_____________________________
; Если данные приняты
то проверяем команду на
T_UP MOVF DIGIT,W
SUBLW 0Fh
BTFSS STATUS,Z
GOTO T_DOWN
MOVF CCPR2L,W ;ПРОВЕРКА НА ПЕРЕПОЛНЕНИЕ
SUBLW .255
BTFSC STATUS,Z
GOTO OTWET ;Z=1
MOVLW .1
ADDWF CCPR2L,1
GOTO OTWET
;_____________________________
; Если данные приняты
то проверяем команду на
T_DOWN
MOVF DIGIT,W
SUBLW 0F0h
BTFSS STATUS,Z
GOTO T_OFF
MOVF CCPR2L,W ;ПРОВЕРКА НА 0 ШИМ
BTFSC STATUS,Z
GOTO OTWET ;Z=1
MOVLW .1
SUBWF CCPR2L,1
GOTO OTWET
;_____________________________
; Если данные приняты то проверяем команду на отмену выбора модуля ШИП
T_OFF
MOVF DIGIT,W
BTFSS STATUS,Z
GOTO T_S1
CALL RESET_CHOOSE
GOTO OTWET
;_____________________________
; Если данные приняты то проверяем команду на выбор ШИП№1
T_S1
MOVF DIGIT,W
SUBLW 01h
BTFSS STATUS,Z
GOTO T_S2
MOVF CCPR2L,W
BTFSS STATUS,Z
GOTO ERROR_CHOOSE
CALL CHOOSE_1
GOTO OTWET
;_____________________________
; Если данные приняты то проверяем команду на выбор ШИП№2
T_S2
MOVF DIGIT,W
SUBLW 02h
BTFSS STATUS,Z
GOTO T_S3
MOVF CCPR2L,W
BTFSS STATUS,Z
GOTO ERROR_CHOOSE
CALL CHOOSE_2
GOTO OTWET
;_____________________________
; Если данные приняты то проверяем команду на выбор ШИП№3
T_S3
MOVF DIGIT,W
SUBLW 03h
BTFSS STATUS,Z
GOTO T_S4
MOVF CCPR2L,W
BTFSS STATUS,Z
GOTO ERROR_CHOOSE
CALL CHOOSE_3
GOTO OTWET
;_____________________________
; Если данные приняты то проверяем команду на выбор ШИП№4
T_S4
MOVF DIGIT,W
SUBLW 04h
BTFSS STATUS,Z
GOTO T_S5
MOVF CCPR2L,W
BTFSS STATUS,Z
GOTO ERROR_CHOOSE
CALL CHOOSE_4
GOTO OTWET
;_____________________________
; Если данные приняты то проверяем команду на выбор ШИП№5
T_S5
MOVF DIGIT,W
SUBLW 05h
BTFSS STATUS,Z
GOTO RX_ERROR
MOVF CCPR2L,W
BTFSS STATUS,Z
GOTO ERROR_CHOOSE
CALL CHOOSE_5
GOTO OTWET
;_____________________________
OTWET BCF PIR1,RCIF
MOVLW 0AAh
MOVWF TXREG
GOTO L_1
; Ошибка выбора ШИП
ERROR_CHOOSE BCF PIR1,RCIF
MOVLW 0DDh
MOVWF TXREG
GOTO L_1
RX_ERROR BCF PIR1,RCIF
MOVLW 0FFh
MOVWF TXREG
L_1 BTFSS PIR1,TXIF
GOTO $-1
BCF PIR1,TXIF
GOTO MAIN
END
Информация о работе Додаток призначений для передачі керуючих команд на МК