Movlw ‘11111100’b
Movwf TRISC
Movlw 0ffh
Movwf TRISB
Bcf STATUS,RPO
START clrf test_sl ; Начальное ТС для Е1 = 0
movlw 0FFh ; Значение ЭТ для запрещенной
movwf etal ; работы DC
CALL PTS
movlw 10h ; Начальное ТС для = 1
movwf test_sl
CALL PTS
movlw 8h ; Начальное ТС для = 1
movwf test_sl
CALL PTS
movlw 20h ; Начальное ТС для Е1 = 100
movwf test_sl
movlw 0FEh
movwf etal
CALL PTS
NO_ERR bsf PORTC, 0
sleep
ERROR bsf PORTC, 1
sleep
PTS movlw 8h
movwf par_c
bsf STATUS, C
m1 movf etal, w
xorwf PORTB, w ; PORTB – входной порт
btfss STATUS, Я
goto ERROR
incf PORTD ; PORTD – выходной порт
btfss PORTD, 5
goto m2
btfsc PORTD, 4
goto m2
btfsc PORTD, 3
goto m2
rrf etal, а
m2 decfsz par_c
goto m1
return
МК AT90S4414
Порт РА и порт С настраиваются на вывод информации, порт РВ - на ввод.
Разряды РА.2- 0 подключаются к адресным входам дешифратора, разряды РА.5 - 3 подключаются к его управляющим входам .Выходы дешифратора подключаются к порту РВ. Разряды РС.1 - 0 подключаются к светодиодам.
Org 0h
; Настройка портов
LDI R1, #00000000b
OUT DDRB, R1 ; Настройка порта В на ввод
LDI R1, #11111111b
OUT DDRA, R1 ; Настройка порта А на вывод
OUT DDRC, R1 ; Настройка порта C на вывод
; Основная программа
Start: LDI R22, #00000000b; нач. ТС при запрете по Е1
LDI R23, #0FFh: эталон при запрете
RCALL PTS;
LDI R22, #10H нач. ТС при запрете по Е2
RCALL PTS
LDI R22, #08H; нач. ТС при запрете по Е3
RCALL PTS
LDI R22, #20H; нач. ТС при разрешении
LDI R23, #0FEh; нач. эталон при разрешении
RCALL PTS
No_err: LDI R1, #1h; GREEN
OUT PORTC,R1
SLEEP
Err: LDI R1, #2h; RED
OUT PORTC,R1
SLEEP
; Подпрограмма перебора ТС
PTS: LDI R2,#8h
M1: OUT PORTA,R22;вывод очередного ТС
IN R24,PORTB
CP R24,R23
BRNE Err
INC R22; очередное ТС
SBRS R22,5; пропустить, если Е1=1
RJMP M2
SBRC R22,4; пропустить, если Е2=0
RJMP M2
SBRC R22,3; пропустить, если Е3=0
RJMP M2
SEC C
ROL R23; эталон для следующего ТС
M2: DEC R2
BREQ M1
RET
МК MC68HC11E9 фирмы MOTOROLA
Порты РВ и РС используются в режиме вывода, порт РЕ - в режиме ввода.
Разряды РВ.2- 0 подключаются к адресным входам дешифратора, разряды РВ.5 - 3 подключаются к его управляющим входам . Выходы дешифратора подключаются к порту РЕ. Разряды РС.1 - 0 подключаются к светодиодам.
T_Sl: equ $40
Par_c: equ $41
Etalon: equ $42
Org 0
; Настройка портов
LDAA #11111111b
STAA DDRB
BSET DDRC, #3
; Порт E настраивать не надо, т.к. он является входным
LDAA #8 ; параметр цикла
; Основная программа
Start: LDAA #$0
STAA T_Sl; начальное ТС при запрете по Е1
LDAB #$0FF; эталон при запрете работы DC в регистр В
JSR PTS
LDAA #$10
STAA T_Sl; начальное ТС при запрете по Е2
JSR PTS
LDAA #$08
STAA T_Sl; начальное ТС при запрете по Е3
JSR PTS
LDAA #$20
STAA T_Sl; начальное ТС при разрешении работы DC
LDAB #$0FE ; начальный эталон при разрешении работы DC
JSR PTS
No_err: BSET PORTC,#$1; GREEN
STOP
Err: BSET PORTC,#$2; RED
STOP
; Подпрограмма перебора ТС
PTS: LDAA #$8
STAA Par_c
M1: LDAA T_Sl
STAA PORTB ; Вывод очередного ТС на входы ИМС
CMPB PORTE
BNE Err
INC T_Sl ; формирование следующего ТС
BRCLR T_Sl,#$20,M2
BRSET T_Sl,#$10,M2
BRSET T_Sl,#$8,m2 ; проверка на запрет
SEC
ROLB
M2: DEC Par_c
BNE M1
RTS
рекомендуемая литература.
1. Сташин В.В. Проектирование цифровых устройств на однокристальных микроконтроллерах - М.: 1991.
2. Нерода В.Я.,Торбинский В.Э.,Шлыков Е.Л. Однокристальные микро-ЭВМ MCS-51.-М.:Диджитал Компонентс,1995.
3. Бродин В.Б., Калинин А.В. Системы на микроконтроллерах и БИС программируемой логики – М: Издательство ЭКОМ, 2002
4. Бродин В.Б., Шагурин И.И. Микроконтроллеры:справочник- М:ЭКОМ, 1999.
5. Шагурин И.И. Микропроцессоры и микроконтроллеры фирмы MOTOROLA- М: Радио и связь, 1998.
6. Ульрих В.А. Микроконтроллеры PIC16C7X: справочник - СПб: Наука и техника, 2000.
7. Евстифеев А. В. Микроконтроллеры AVR семейства Classicфирмы ATMEL
- М.: “Додэка-ХХI”, 2002
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.