Выполнил студент гр. Э-42 Осиюк Д.Г.
Лабораторная работа №4
ОРГАНИЗАЦИЯ ПОДСИСТЕМЫ ВВОДА-ВЫВОДА С ПАРАЛЛЕЛЬНЫМ ДОСТУПОМ
Цель работы: Получить практические навыки в программировании портов ввода-вывода микроконтроллеров с архитектурой PICmicro (MCS-51).
Вариант №15
Порядок выполнения работы:
1. Индивидуальное задание.
Таблица 1 – Индивидуальное задание
Вариант |
Функция |
Выходной порт |
15 |
min((PORTA&PORTE)-PORTC; PORTD) |
PORTB |
2. Листинг работы программы:
#include <p16f877a.inc>
#define a1 20h;
#define b1 21h; Обьявляем переменные
#define c1 22h;
#define d1 23h;
#define e1 24h;
#define f1 25h;
org 0x00;
start
NOP; Инициализация порта А
BCF STATUS, RP0
CLRF PORTA;
BSF STATUS, RP0;
MOVLW 0xFF;
MOVWF TRISA;
MOVLW 0x06;
MOVWF ADCON1;
NOP; Инициализация порта В
BCF STATUS,RP0;
CLRF PORTB;
BSF STATUS, RP0;
MOVLW 0x00;
MOVWF TRISB;
NOP; Инициализация порта C
BCF STATUS, RP0;
CLRF PORTC;
BSF STATUS, RP0;
MOVLW 0xFF;
MOVFW TRISC;
NOP; Инициализация порта Е
BCF STATUS,RP0;
CLRF PORTE;
BSF STATUS, RP0;
MOVLW 0xFF;
MOVWF TRISE;
NOP;Инициализация порта D
BCF STATUS,RP0;
CLRF PORTD;
BSF STATUS,RP0;
MOVLW 0xFF;
MOVWF TRISD;
NOP; Программа дальше
BCF STATUS,RP0;Выбор банка
MOVF PORTA,W; Пересылаем PORTА в Аккумулятор
MOVWF a1; Пересылаем акумулятор в а1
MOVF PORTE,W; Пересылаем PORTE в Акумулятор
RLF W,5; Сдвигаем в лево
ADDWF a1; Слаживаем а1 с акумулятором
MOVF PORTC,W; Пересылаем PORTE в Акумулятор
MOVWF c1; Ответ обратно в с1
SUBWF a1; Вычитаем а1 от аккумулятора
MOVF a1,W;пересылаем а1 в аккумулятор
MOVWF b1;аккумулятор в b1
MOVF PORTD,W;принимаем информацию с порта D
MOVWF d1;записываем аккумулятор d1
MOVWF f1; записываем аккумулятор f1
SUBWF a1; Вычитаем а1 от аккумулятора
BTFSC STATUS,C; Проверяем флаг переноса
GOTO M1;если 1 меньше
GOTO M2; если 2 меньше
M1
MOVF b1,W;записываем b1 в аккумулятор
MOVWF PORTB; принимаем информацию с порта B
GOTO M3; метка на конец программы
M2
MOVF f1,W; записываем f1 в аккумулятор
MOVWF PORTB; записываем b1 в аккумулятор
GOTO M3; ; метка на конец программы
M3
END
Рисунок 1 Выполнение программы
Вывод: В ходе данной лабораторной работы были получены практические навыки в программировании портов ввода-вывода микроконтроллеров с архитектурой PICmicro (MCS-51). Была произведена работы с портами, флагами переноса и наложением маски, а также изучено на практике применение переход по меткам. Листинг программы и скрин подтверждающий ее безошибочную компиляцию прилагается.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.