Вивчення режимів роботи портів вводу/виводу на прикладі мікроконтролера PIC16C56. Робота з пакетом MPLAB

Страницы работы

Содержание работы

МІНІСТЕРСТВО ОСВІТИ УКРАІНИ

Національний Технічний Університет „ХПІ”

Кафедра обчислювальної техніки та програмування.

Лабораторна робота №1

з мікроконтролерів та мікроЕОМ

тема:

Робота з портами вводу / виводу.

Вивчення пакету MPLAB.

Виконала:

Студентка групи КІТ-11б

Крашеніннікова Вікторія

Перевірили:

Скородєлов В.В.

Даниленко О.Ф.

Харків 2004,

Тема:         Робота з портами вводу/виводу. Вивчення пакета MPLAB

Мета:         На прикладі мікроконтролера PIC16C56 вивчити режими роботи портів

вводу/виводу, способи й особливості їх ініціалізації. Розглянути ввід/вивід

дискретних сигналів. Набути практичні уміння роботи з пакетом MPLAB,

засвоїти способи задання зовнішніх впливів на виводи портів

мікроконтролера.

Індивідуальне завдання:     

Ініціалізувати порти вводу/виводу. Настроїти порт A на вивід (регістр TRISA), настроїти порт B на ввід (регістр TRISB). Виконується ввід інформації з датчиків дискретних сигналів.

Увести через порт B число M ( М = 89 = 59h = 1011001b)

Записати введене число в комірку пам'яті даних з адресою A ( A = 9 = 9h = 1001b )

Виконати вивід дискретних сигналів із мікро контролера : вивести молодшу тетраду введеного числа в порт A, вивести старшу тетраду введеного числа в порт A.

Схема одного розряду порту вводу/виводу:

   Защелка для бита данных                                                          

 D     Q

 C    /Q

C

 
От шины данных                                                                           

   Vdd

XOR

 
                                                                                                     p

Вывод

порта

 
Запись (WR Port )

 


        Это один из бит рег. TRIS

От регистра W

 D      Q

 C

 R     /Q

C

 


 AND

 
По команде"TRIS f"

                                                                                                          n

Сброс

 

  1

 
На шину данных                                                                     Vss

 


         Чтение ( RD  TRIS)

Рис.1. Схема одного розряду порту в/в.

Алгоритм програми:

 


Рис.2 схема алгоритму роботи програми.

Порядок дій:

1.  Секція заголовку де описуються всі змінні, адреса регістру в пам`яті.

2.  Далі йде робоча секція де:

2.1.  Налаштовується на вивід порт А (записуємо 0 )

2.2.  Конфігурування порту А

2.3.  Налаштовуємо порт В на ввід, записуємо туди подане число 89

2.4.  Конфігурування порту В

2.5.  Те , що записано у порт В переписується в робочий регістр W

2.6.  З регістру W число переписується в подану комірку пам`яті (9)

2.7.  Вивід з порту А дискретного сигналу (молодша тетрада)

2.8.  Обмін тетрад місцями та запис у W

2.9.  Вивід у порт А дискр. Сигналу (старша тетрада).

3.  Секція завершення. Тут відбувається завершення програми.

Текст програми:

;  Секція заголовку:

PORTA           equ      0x05

PORTB           equ      0x06

MEM              equ      0x9                             ;адреса регістра у пам`яті – 9h

;  Робоча секція:

ORG                           0x00                           ; код, що випливає за цим виразом, починається з

; нульової адpеси ППЗП

goto                BEGIN

ORG    0x100

BEGIN

            movlw             b'0000'                                               ; програмуємо порт А на вивід

            tris                  PORTA                                  ; конфігурування порту А

            nop                                                                 ; невелика затримка

movlw             b'1011001'                              ; програмуємо порт А на ввод, у порт В – число 89

            tris                  PORTB                                   ; конфігурування порту В

nop

            movf               PORTB,0                                ; Переписуемо з порту В в регістр W

            movwf             MEM                                      ; Запис в подану комірку пам`яті (9)

            nop

            movwf             PORTA                                  ; Вивід молодшої частини у порт А з регістру W

            nop

wapf                MEM,0                                   ; Обмін тетрад місцями та запис у регістр W

Похожие материалы

Информация о работе