PROC7, Politechnika Lubelska, Studia, semestr 5, Sem V, Sprawozdania, Elektryczny, MIKROPROCESORY LABOLATORIUM


LABORATORIUM PODSTAW SYSTEMÓW MIKROPROCESOROWYCH

TEMAT. UKŁADY TRANSMISJI SZEREGOWEJ.

PROGRAMOWA TRANSMISJA SZEREGOWA.

CWICZENIE

NR.11

GRUPA

ED.5.1

OCENA

IMIĘ I NAZWISKO : GAWRON MARCIN

DZIKOWSKA DOROTA

DATA

18-01-1999

ZADANIE NR 1

Wykorzystując wewnętrzny układ transmisji szeregowej dokonano wizualizacji komunikacji szeregowej pomiędzy DSM-51 a komputerem PC, która jest przedstawiona w tabeli nr 2. W tabeli nr 1 zaproponowano ustawienia rejestrów dla poszczególnych prędkości transmisji:

Tabela 1:

Lp.

Prędkość transmisji

TH1

TL1

SCON

TMOD

1.

1200

D0H

D0H

40H

20H

2.

2400

E8H

E8H

40H

20H

3.

9600

FAH

FAH

40H

20H

Tabela 2:

Znak

1200

2400

9600

`7'

błąd

`7'

spacja

`5'

błąd

`5'

spacja

`9'

błąd

`9'

spacja

ZADANIE NR 2

Opierając się na przykładzie z zadania 1, dokonano modyfikacji programu p7_1.asm dla transmisji asynchronicznej w trybie odbiór przyjmując kolejno szybkości transmisji: 300, 1200, 4800, 9600 bodów. Poniżej przedstawiono propozycje ustawień rejestrów:

Tabela 3:

Lp.

prędkość transmisji

TH1

TL1

SCON

TMOD

1.

300

40H

40H

50H

20H

2.

1200

D0H

D0H

50H

20H

3.

4800

F4H

F4H

50H

20H

4.

9600

FAH

FAH

50H

20H

Poniżej przedstawiono w tabeli wyniki obserwacji poprawności transmisji:

Tabela 4:

Znak

300

1200

4800

9600

`7'

błąd

błąd

`7'

błąd

`5'

błąd

błąd

`5'

błąd

`9'

błąd

błąd

`9'

błąd

ZADANIE NR 3

Wykorzystując przykłady z zadań 1 i 2 wykonano operację transmisji szeregowej dwustronnej o parametrach jak w zadaniu 2. Poniżej przedstawiona jest propozycja programu realizujące to zadanie. Program działa w taki sposób, że DSM-51 wysyła jeden znak i przechodzi w tryb odbioru również jednego znaku. I tak na przemian.

Listing programu:

;********************************************************

;Cwiczenie7 - STEROWNIK TRANSMISJI SZEREGOWEJ

;PRZYKłAD 1 - NADAWANIE

;********************************************************

;********* Ustawienie TIMERÓW *********

;TIMER 0

T0_G EQU 0 ;GATE

T0_C EQU 0 ;COUNTER/-TIMER

T0_M EQU 0 ;MODE (0..3)

TIM0 EQU T0_M+T0_C*4+T0_G*8

;TIMER 1

T1_G EQU 0 ;GATE

T1_C EQU 0 ;COUNTER/-TIMER

T1_M EQU 2 ;MODE (0..3)

TIM1 EQU T1_M+T1_C*4+T1_G*8

TMOD_SET EQU TIM0+TIM1*16

;*************** Transmisja Szeregowa ********************

TR_M EQU 1 ;tryb transmisji (1..3)

TR_R EQU 1 ;zezwolenie na odbiór

SCON_SET EQU TR_M*64+TR_R*16

;SMOD=1

;TIMER1=57600/300bodów=192

TH1_SET EQU 256-192

TL1_SET EQU 256-192

;**************************************

LJMP START

ORG 100H

START:

MOV SCON,#SCON_SET ;port szeregowy

ORL PCON,#80H ;SMOD=1

MOV TMOD,#TMOD_SET ;Timer 1 dla

MOV TH1,#TH1_SET ;transmisji

MOV TL1,#TL1_SET

SETB TR1 ;start Timera 1

SETB TI

LCALL LCD_CLR

LOOP:

LCALL WAIT_KEY

JNB TI,$ ;czy można nadać

CLR TI ;kolejny znak

ADD A,#30H

MOV SBUF,A ;nadaj znak

LCALL WRITE_DATA ;wyświetl na LCD

CLR RI

JNB RI,$

MOV A,SBUF

LCALL WRITE_DATA

SJMP LOOP

ZADANIE NR 4.

Wykorzystując sposób programowej transmisji szeregowej dokonano wizualizacji komunikacji pomiędzy DSM-51 a PC, na przykładzie programu p7_4.hex. Poniżej zaproponowano ustawienia rejestrów:

Tabela 5:

Lp.

Prędkość transmisji

TH0

TL0

PCON

TMOD

1.

4800

F4H

F4H

02H

2.

9600

A0H

A0H

02H

Poniżej przedstawiono tabele pokazującą poprawność transmisji:

Tabela 6:

Znak

3600

4800

9600

`7'

`7'

błąd

błąd

`6'

`6'

błąd

błąd

`1'

`1'

błąd

błąd

ZADANIE NR 5.

W oparciu o zadanie 4 dokonano modyfikacji programu p7_4.asm dla transmisji asynchronicznej w trybie odbiór przyjmując kolejno szybkości transmisji: 3600, 9600 bodów. W tabeli poniżej zaproponowano wstępne ustawienia rejestrów:

Tabela 7:

Lp.

Prędkość transmisji

TH0

TL0

PCON

TMOD

1.

3600

F0H

F0H

02H

2.

9600

A0H

A0H

02H

Poniżej przedstawiono propozycję programu:

Listing programu:

;************************************************

;Źwiczenie 7 - PROGRAMOWA REALIZACJA TRANSMISJI

;PRZYKťAD 4 - NADAWANIE

;************************************************

;********* Ustawienie TIMER˘w *********

;TIMER 0

T0_G EQU 0 ;GATE

T0_C EQU 0 ;COUNTER/-TIMER

T0_M EQU 2 ;MODE (0..3)

TIM0 EQU T0_M+T0_C*4+T0_G*8

;TIMER 1

T1_G EQU 0 ;GATE

T1_C EQU 0 ;COUNTER/-TIMER

T1_M EQU 0 ;MODE (0..3)

TIM1 EQU T1_M+T1_C*4+T1_G*8

TMOD_SET EQU TIM0+TIM1*16

;******* Transmisja Szeregowa *********

;Timer/Bit = Fosc[Hz] /12 /V[bod]

BIT_TIME EQU 11059200/12/3600

T0_SET EQU 256-BIT_TIME

T0_STRT EQU 256-BIT_TIME/2

IN EQU INT0

;**************************************

LJMP START

;******PRZERWANIE INT 0****************

ORG 03H

SETB TR0

CLR EX0 ;BLOKUJ PRZERWANIE INT 0

RETI

;********* Przerwanie TIMER 0 *********

ORG 0BH

PUSH PSW

PUSH ACC

DJNZ R2,NEXT

CLR TR0

MOV TL0,#T0_STRT

MOV R2,#10

SETB EX0

MOV A,R7

LCALL WRITE_DATA

POP ACC

POP PSW

RETI

NEXT: ;kolejny bit transmisji

MOV C,IN

MOV A,R7

RRC A

MOV R7,A ;bit na port

POP ACC

POP PSW

RETI

;***************************************

ORG 100H

START:

LCALL LCD_CLR

MOV TMOD,#TMOD_SET

MOV TH0,#T0_SET

MOV TL0,#T0_STRT

MOV R2,#10

SETB EA

SETB ET0

SETB EX0

SJMP $

ZADANIE NR 6.

W oparciu o program z zadania 4 dokonano modyfikacji programu p7_4.asm tak aby poszerzyć zakres szybkości transmisji szeregowej do 300 bodów. Poniżej przedstawiono propozycje programu realizującego to zadanie. Program z braku czasu nie został przetestowany.

Listing programu:

;************************************************

;ćwiczenie 7 - PROGRAMOWA REALIZACJA TRANSMISJI

;PRZEKŁAD 4 - NADAWANIE

;************************************************

;********* Ustawienie TIMERÓW *********

;TIMER 0

T0_G EQU 0 ;GATE

T0_C EQU 0 ;COUNTER/-TIMER

T0_M EQU 1 ;MODE (0..3)

TIM0 EQU T0_M+T0_C*4+T0_G*8

;TIMER 1

T1_G EQU 0 ;GATE

T1_C EQU 0 ;COUNTER/-TIMER

T1_M EQU 0 ;MODE (0..3)

TIM1 EQU T1_M+T1_C*4+T1_G*8

TMOD_SET EQU TIM0+TIM1*16

;******* Transmisja Szeregowa *********

;Timer/Bit = Fosc[Hz] /12 /V[bod]

BIT_TIME EQU 11059200/12/300 ;=3072

TL0_SET EQU FF

TH0_SET EQU F3

IN EQU INT0

;**************************************

LJMP START

;******PRZERWANIE INT 0****************

ORG 03H

SETB TR0

CLR EX0 ;BLOKUJ PRZERWANIE INT 0

RETI

;********* Przerwanie TIMER 0 *********

ORG 0BH

PUSH PSW

PUSH ACC

DJNZ R2,NEXT

CLR TR0

MOV TL0,#TL0_SET

MOV TH0,#TH0_SET

MOV R2,#10

SETB EX0

MOV A,R7

LCALL WRITE_DATA

POP ACC

POP PSW

RETI

NEXT: ;kolejny bit transmisji

MOV C,IN

MOV A,R7

RRC A

MOV R7,A ;bit na port

POP ACC

POP PSW

RETI

;***************************************

ORG 100H

START:

LCALL LCD_CLR

MOV TMOD,#TMOD_SET

MOV TH0,#TH0_SET

MOV TL0,#TL0_SET

MOV R2,#10

SETB EA

SETB ET0

SETB EX0

SJMP $



Wyszukiwarka

Podobne podstrony:
LAB6MICR, Politechnika Lubelska, Studia, semestr 5, Sem V, Sprawozdania, Elektryczny, MIKROPROCESORY
MICRO7~1, Politechnika Lubelska, Studia, semestr 5, Sem V, Sprawozdania, Elektryczny, MIKROPROCESORY
PROCES5, Politechnika Lubelska, Studia, semestr 5, Sem V, Sprawozdania, Elektryczny, MIKROPROCESORY
M7, Politechnika Lubelska, Studia, semestr 5, Sem V, Sprawozdania, Elektryczny, MIKROPROCESORY LABOL
Mikroprocki 1kl, Politechnika Lubelska, Studia, semestr 5, Sem V, Sprawozdania, Elektryczny, MIKROPR
BLUMEN, Politechnika Lubelska, Studia, semestr 5, Sem V, Sprawozdania, Elektryczny, ENERGOELEKTRONIK
BLUMEN, Politechnika Lubelska, Studia, semestr 5, Sem V, Sprawozdania, Elektryczny, ENERGOELEKTRONIK
układy kombinacyjne, Politechnika Lubelska, Studia, semestr 5, Sem V, Sprawozdania, Elektryczny, Teo
9v3, Politechnika Lubelska, Studia, semestr 5, Sem V, Sprawozdania, ELEKTROTECHNIK, ELEKTROTECHNIKA
Regulacja impulsowa, Politechnika Lubelska, Studia, semestr 5, Sem V, Sprawozdania, Elektryczny, TEO
logo sasal, Politechnika Lubelska, Studia, semestr 5, Sem V, Sprawozdania, Elektryczny, Teoria stero
06, Politechnika Lubelska, Studia, semestr 5, Sem V, Sprawozdania, sprawozdania, Sprawozdania, Labor
20'', Politechnika Lubelska, Studia, semestr 5, Sem V, Sprawozdania, sprawozdania, Sprawozdania, Lab
10, Politechnika Lubelska, Studia, semestr 5, Sem V, Sprawozdania, sprawozdania, Sprawozdania, Labor
14'''''''''', Politechnika Lubelska, Studia, semestr 5, Sem V, Sprawozdania, sprawozdania, Sprawozda
protokółćw4.elektra, Politechnika Lubelska, Studia, semestr 5, Sem V, Sprawozdania, Laborka, Elektro
Laboratorium Elektroniki, Politechnika Lubelska, Studia, semestr 5, Sem V, Sprawozdania, V semestr
09'', Politechnika Lubelska, Studia, semestr 5, Sem V, Sprawozdania, sprawozdania, Sprawozdania, Lab

więcej podobnych podstron