75188 Untitled37

75188 Untitled37



66 7. Porty

Dzięki temu że można dokonywać operacji na wybranych bitach portów, różne linie tego samego portu mogą równocześnie pracować jako linie wejściowe i wyjściowe

Poniżej jest podany przykład zastosowania portu PI do odczytu klawiatury, rysunek 7-6. Klawiatura zawiera 16 przycisków oznaczonych od KO do K15. Na liniach P1.0 * PI.3 jest kolejno generowany stan 0. Naciśnięcie klawisza przenosi ten stan na linie PI.4 -r P1.7. Jeżeli żaden klawisz nie jest naciśnięty, to na liniach PI.4 + PI.7 jest stan 1 wymuszony źródłami prądowymi układów' wyjściowych portu. Program, który ma odczytać stan klawiatury, musi kolejno zadawać stany 0 na poszczególne linie P1.0 * PI.3, odczytywać stan linii PI.4 * PI.7 i na podstawcie tej informacji określić numer naciśniętego klawisza.

K3<

K2<"

Kl<

KO r

K7 r"

K6^

K5^

K4 '

:<n ■ '

K10<

K9<

K8 ;

KI5 r

K14<

K13<

K12-


P1.0 Pl.l PI.2 51    P1.3

PI.4 PI.5 PI.6 PI.7

Rys. 7-6. Schemat połączenia klawiatury z portem PI.

******iM»**»»****»***#*******if***********************ł***********»****

Program odczytu klawiatur)'

Wykorzystane rejestry: R2 - numer klawisza R3 - licznik pętli

Po wyjściu z programu w rejestrze R2 znajduje się numer naciśniętego klawisza lub wrartość OFFh, jeżeli żaden klawisz nie został naciśnięty.

***#.»*»*inm-******#***if*******4*********>nł*ił***************»**********

MOV

R2,#0

;zerowranie rejestru z numerem klawisza

MOV

R3,#4

;licznik pętli

MOV

Pl,#0FEh

;ustawienie w stan zera linii P1.0

MOV

A,PI

;odczyt końcówek portu PI

PĘTLA 1:

;początek pętli w której kolejno są testowane stany ;linii P1.7 + P1.4

RLC

A

; rotacja w lewo zawartości akumulatora. Przy ;pierwszym wejściu do pętli do znacznika C jest ;wpisywany stan linii PI.7

JNC

WYJŚCIE

;testowanie stanu znacznika C. Jeżeli C=0, tzn. że ;został naciśnięty któryś z klawiszy KO 4-K3 i

Jeżeli C = l, tzn. testowany klawisz nie został ;naciśnięty, to jest zwiększana zawartość rejestru R2 ;(numer kolejnego klawisza)

INC

R2

DJNZ

R3,PETLA1

MOV

R3,#4

MOV

Pl,#0FDh

MOV

A,PI

PETLA2:

RLC

A

JNC

WYJŚCIE ^

DJNZ

R3,PETLA2

MOV

R3,#4

MOV

Pl,#0FBh

MOV

A,PI

PETLA3:

RLC

A

JNC

WYJŚCIE <

DJNZ

R3,PETLA3

MOV

R3,#4

MOV

Pl,#0E7h

MOV

A,PI

PETLA4:

RLC

A

JNC

WYJŚCIE

DJNZ

R3,PETLA4

MOV

R2,#0FFh

WYJŚCIE:

tML ĆT-

;zero na linii P1.2

;zero na linii PI.3

END


;odliczanie, czy zostały sprawdzone wszystkie linie ;P1.7 PI.4. Jeżeli nie, to następuje skok do etykiety ;PETLA1 - testowanie kolejnej linii, a jeżeli tak, to ;przejście do sprawdzania klawiszy K4 -i- K7. ;ponowne ustawienie licznika pętli ;zero na linii Pl.l

wc et


;żaden klawisz nie jest naciśnięty ;konicc programu


Wyszukiwarka

Podobne podstrony:
JAXB a SAX i DOM« Zalety w stosunku do DOM-a: o mniejsze wymagania pamięciowe, dzięki temu, że nie m
Można podzielić odesłania na odesłania zewnętrzne i odesłania wewnętrzne-w ramach tego samego
46795 str 4 dla programistów * Dzięki temu, że używamy dwóch pętli, można wprowadzić animację czy zm
Dzięki temu, że są dostępne publicznie można je wykorzystywać również jako bezpieczne źródło styli
Rozmowy a nie inny ruch. Dzięki temu, że film daje szansę, aby pewne techniki przedstawić obrazowo,
22890 obraz0 (35) dźców, a więc Libijczyków, Nubijczyków, A-syryjczyków i Persów. Mogła się ostać d
wadzona jest w Danii z pozytywnymi wynikami dzięki temu, że grunty podlegają specjalnemu oszacowaniu
skanuj0002 UNIA EUROPEJSKA - PODSTAWOWE INSTYTUCJE Realizacja wspólnych zamierzeń jest możliwa dzięk
test wyklad 5 bmp Optymizm może zwiększać efektywność radzenia sobie w sytuacji trudnej dzięki temu,
CCF20090605053 zawartej w Starym i Nowym Testamencie. Dzięki temu, że teoria ta chroniła przed zabo
27 (456) 52 i drugim, po dwie niewiadome, z których Jedną jest również reakcja Rg. Uzyskaliśmy to dz
Lachur zarys jezykoznawstwa ogolnego 2 wykorzystywany. Dzięki temu, że każda jednostka leksykalna po

więcej podobnych podstron