4 MwSK Spr 1

background image

1

~K.

Data wykonania: 02.03.2010

Data oddania: 16.03.2010

Mikronapędy w systemach komputerowych

Laboratorium

Ćwiczenie 1

Komunikacja użytkownika z systemem mikroprocesorowym.

2 FDI Grupa: L-04

Cel ćwiczenia

Celem ćwiczenia było napisanie programu do obsługi wyświetlacza LCD z poziomu klawiatury z wykorzystaniem

biblioteki

lcd.h

w trzech kolejnych etapach:

1)

poprawnie interpretować wciśnięty klawisz i odpowiednio wyświetlać na LCD,

2)

poprawnie interpretować wciśnięte kolejno klawisze i odpowiednio wyświetlać je,

3)

obliczać kod ASCII i wyświetlać odpowiednią liczbę z połączenia wcześniej wpisanych cyfr.

Kod programu

#include

<reg515.sfr>

#include

<lcd.h>

unsigned

char

x;

unsigned int

i, liczba=0;

void

main(

void

){

init();

// inicjalizacja wy

ś

wietlacza LCD

put_instr(0x01);

// kasuje dane wy

ś

wietlacza i ustawia kursor pod adres 0

put_instr(0x0e);

// wł

ą

czenie całego wy

ś

wietlacza i kursora oraz wył

ą

czenie mrugania

// kursora

while

(1) {

x = get_char();

// sprawdzenie stanu poł

ą

cze

ń

i zwrócenie okre

ś

lonego znaku

// przypisanego odpowiednim klawiszom i przypisanie go do zmiennej x

if

(x !=

'\0'

){

// sprawdzenie, czy został wci

ś

ni

ę

ty jaki

ś

klawisz

if

((x !=

'e'

) && (x !=

'b'

) && (x !=

'd'

) && (x !=

'p'

) && (x !=

'l'

)

&& (x !=

'g'

)){

// sprawdzenie, czy został wci

ś

ni

ę

ty klawisz odpowiadaj

ą

cy cyfrze

put_char((

int

)x);

// wypisanie znaku w miejscu wskazanym przez kursor

for

(i=0; i<10000;i++);

// opó

ź

nienie pozwalaj

ą

ce wykona

ć

si

ę

wcze

ś

niej wywołanej

// funkcji

liczba=liczba*10+((

int

)x-48);

}

else

if

(x ==

'e'

){

// sprawdzenie, czy został wci

ś

ni

ę

ty enter

put_instr(0x01);

// asuje dane wy

ś

wietlacza i ustawia kursor pod adres 0

put_char(liczba);

// wpisanie zawarto

ś

ci zmiennej liczba na ekran

background image

2

for

(i=0; i<10000;i++);

}

}

}
}

Wnioski

Niniejsze program wymagał kosmetycznych poprawek w stosunku do tego napisanego w laboratorium. Wadą

aplikacji jest ignorowanie wszystkich przycisków poza cyframi i enterem. Opcjonalne jest dopisanie kodu, który

porawnie interpretowałby przycisk backspace.

Przy pisaniu programu w oparciu o bibliotekę

lcd.h

trzeba zwrócić szczególną uwagę na to, by rozkazy

sterownika HD44780 wyświetlacza LCD były podawane w systemie szestnastkowym oraz szczegółowo zapoznać

się z typami zwracanymi przez funkcje z których korzystamy.

We wszystkich programach należało zastosować pętlę for do opóźnienia pracy programu aby sterownik

wyświetlacza zdążył wykonać zadane mu wcześniej polecenia.


Wyszukiwarka

Podobne podstrony:
lab.1 4 MwSK Spr 1
lab.4 4 MwSK Spr 4
4 MwSK Spr 6
4 MwSK Spr 5 (2)
4 MwSK Spr 3
Spr[1] adm i uznanie adm
08 03 KPGO Spr z realizacji
17 Rozp Min Zdr w spr szk czyn Nieznany
przetworka spr ostatnie
as spr 5 id 69978 Nieznany (2)
metr spr 5
belka spr podl
078c rozp zm rozp min gosp w spr szkolenia w dziedzinie bhp
99 SPOSOBÓW OKAZYWANIA DZIECIOM MIŁOŚCI, Różne Spr(1)(4)
Spr. 4-Techniki wytw, ZiIP, sem 1
klucz do age, Różne Spr(1)(4)
Wnioski do spr z elektry 3, PW SiMR, Inżynierskie, Semestr V, syf, laborki, Lab. Ukł. Napędowych
spr kl 5 dodaw ulamkow rozne mian2, Matematyka, kl 5
spr - koag pow, Sprawozdania, oczyszczanie wody

więcej podobnych podstron