SERIJSKA KOMUNIKACIJA RAČUNARA I USART MODULA MIKROKONTROLERA PIC16F877A Elektronski fakultet Niš

Download Report

Transcript SERIJSKA KOMUNIKACIJA RAČUNARA I USART MODULA MIKROKONTROLERA PIC16F877A Elektronski fakultet Niš

Elektronski fakultet Niš
Katedra za elektroniku
SERIJSKA KOMUNIKACIJA
RAČUNARA I USART MODULA
MIKROKONTROLERA PIC16F877A
Dejan Lazić 10520
Ivan Novaković 10305
Prenos podataka (osnovne podele)




(I)
Serijski
Paralelni
(II)
Asinhroni
Sinhroni
Serijski prenos podataka



Prenose se podaci preko jedinstvene linije
Laka detekcija grešaka
Razvijeni su brojni pouzdani protokoli za serijski prenos
Paralelni prenos podataka



Veliki broj potrebnih veza (jedna linija po bitu podatka)
Prenosi se n bitova istovremeno
Koristi se, kada se prenose podaci na kraćim rastojanjima (sistemska magistrala procesora, GPIB magistrala itd.)
Asinhroni prenos podataka



Predajnik može da pošalje podatak bilo kada
Asinhroni prijemnik ne regeneriše takt na osnovu dolazećeg signala
Start-stop metodom se utvrđuje početak i kraj podatka
Sinhroni prenos podataka



Predajnik i prijemnik su sinhronizovani
Predajnik generiše taktni signal koji se prenosi do prijemnika preko posebnog kanala ili je direktno regenerisan od
strane prijemnika iz dolazećeg signala
Princip regenerisanja takta kod ovog načina prenosa prikazan je na Slici
Sinhroni prenos podataka –
ram podatka


Uobičajeno se podaci predaju kao okviri, tj. ramovi
(frame) fiksnog obima
Svaku informaciju na početku i kraju prate preambule
(preamble).
Serijski port



Bidirekcioni komunikacijski (COM) port
Duplex ili half-duplex prenos
Ima ugrađene FIFO bafere
Serijski port – EIA standard
PARAMETAR
način rada
EIA 232
RS 423-A RS 422-A
RS 485
nebalansirani
nebalansirani
diferencijalni
diferencijalni
1 drajver
1 prijemnik
1 drajver
10 prijemnik
1 drajver
10 prijemnik
32 drajvera
32 prijemnika
15
1200
1200
1200
maksimalna brzina prenosa
podataka [bps]
20 K
100 K
10 M
10 M
maksimalni napon na
zajedničkim krajevima [V]
+ 25
+6
6 do –0.25
12 do –7
broj drajvera i prijemnika
maksimalna dužina kabla [m]
Serijski port – DSUB konektori
Serijski port – signali 1/2
DSUB-25
DSUB-9
Signal
Opis signala
pin 2
pin 3
TD
Transmit Data
pin 3
pin 2
RD
Receive Data
pin 4
pin 7
RTS
Request To Send
pin 5
pin 8
CTS
Clear To Send
pin 6
pin 6
DSR
Data Set Ready
pin 7
pin 5
SG
Signal Ground
pin 8
pin 1
CD
Carrier Detect
pin 20
pin 4
DTR
pin 22
pin 9
RI
Data Terminal Ready
Ring Indicator
Serijski port – signali 2/2
Signal
Značenje signala
Opis signala
TD
Transmit Data
Serijski izlaz podataka (TXD)
RD
Receive Data
Serijski ulaz podataka (RXD)
RTS
Request ToSend
Indicira spremnost modema za razmenu podataka
CTS
Clear To Send
Kada modem detektuje signal "Carrier" od modema
sa druge strane linije, onda ona postaje aktivna
DSR
Data Set Ready
DCE signalizira da je spreman za rad
SG
Signal Ground
Masa
CD
Carrier Detect
DCE javlja da je veza uspostavljena
DTR
RI
Data Terminal Ready Indicira DCE uređaju da je DTE spreman
Ring Indicator
Signalizira detekciju signala "zvona" na tel. liniji
USART
Univerzalni sinhroni i asinhroni prijemnik/predajnik
(USART) čine:









Takt generator,
Delitelji frekvencije,
Ulazni pomerački registar,
Izlazni pomerački registar,
Kontrolna logika čitanja i upisa,
Kontrolna logika slanja i prijema,
Bafer prijemnika (opciono),
Bafer predajnika (opciono),
FIFO (opciono).
USART – blok-šema čipa Intel 8251A
USART – prenos podatak preko
modema i telefonske linije
Mikrokontroler PIC16F877A
PIC16F877A – osnovne karakteristike
1/3












RISC mikroprocesor visokih performansi
35 instrukcija obima jedne reči
Radna frekvencija do 20 MHz
Trajanje taktnog intervala 200 ns, pri frekvenciji 20 MHz
Opkôd obima 14 bita
Harverski magacin sa osam nivoa
Tri načina adresiranja (direktno, indirektno i relativno)
Programska flash memorija kapaciteta 8 k X 14-bitnih reči
Memorije za podatke tipa RAM kapaciteta 368 X 8 bita
Memorije za podatke EEPROM tipa kapaciteta 256 X 8 bita
Prekidi (do 14 izvora prekida)
U/I portovi: A, B, C, D, E
PIC16F877A – osnovne karakteristike
2/3










Tri tajmera:
- Timer0 (TMR0): 8-bitni tajmer/brojač_događaja
- Timer1 (TMR1): 16-bitni tajmer/brojač_događaja
- Timer2 (TMR2): 8-bitni tajmer/brojač_događaja
10-bitni 8-kanalni analogno-digitalni (A/D) konvertor
Serijska komunikacija: MSSP, USART
Paralelna komunikacija: PSP
Power-on Reset - reset pri uključenju napajanja (POR)
Power-up timer - unošenje kašnjenja nakon uključenja
napajanja (PWRT)
Oscillator Start-up Timer - unošenje kašnjenja nakon
stabilizovanja radne frekvencije oscilatora (OST)
PIC16F877A – osnovne karakteristike
3/3








Sleep mode - režim rada sa malim utroškom energije
Watchdog tajmer sa sopstvenim integrisanim RC
oscilatorom za nezavisan rad
Izbor tipa oscilatora
Radni napon od 2V do 5.5V
Mala potrošnja energije:
<0.6 mA pri naponu od 3V i radnoj frekvenciji od 4 MHz
20µA pri naponu od 3V i radnom taktu od 32kHz
<1µA u standby režimu rada.
PIC16F877A – arhitektura
PIC16F877A – programska memorija
PIC16F877A – registri
PIC16F877A – izbor kristala kvarca i
keramičkih kondenzatora
PIC16F877A – blok šema A/D
konvertora
mikroC – softver za PIC
mikrokontrolere





Kvalitetan editor sa automatskom kontrolom
Jasan asemblerski kôd i standardna kompatibilnost
generisanih HEX datoteka
Preglednost strukture programa (kôda)
Veliki broj integrisanih biblioteka i rutina, koje značajno
ubrzavaju pisanje programa
Detaljni izveštaji i grafičko predstavljanje mape RAM i
ROM memorija, statistike kôda i slično.
mikroC – osnovni prozor
mikroC – UART terminal
mikroC – parametri UART terminala
Parametri koji se podešavaju:








Serijski port (COM1, COM2, COM3)
Brzina prenosa
Broj stop bitova (1, 1.5 ili 2)
Izbor parnosti (bez, parna, neparna itd.)
Broj bitova koji čine karakter (5, 6, 7 ili 8)
Uključivanje/isključivanje handshaking signala (RTS i DTR)
Izbor formata podatka koji se šalje (ASCII, HEX ili DEC)
Način slanja.
mikroC – tablica ASCII simbola
Programiranje mikrokontrolera

Za programiranje mikrokontrolera potrebni su

Bootstrap loader (na primer ALLPIC) i
Softver (na primer IC-Prog).

ALLPIC bootstrap loader



Jednostavan i jeftin (do 10 evra)
Pripada grupi JDM loadera
Programiranje preko serijskog porta.
ALLPIC – električna šema
IC Prog – softver za programiranje


Jednostavan za korišćenje
Kompatibilan sa 10-ak bootstrap loadera
Projekat – električna šema
VDD
U2
LED1
LED2
VDD
D1
D2
LED
LED
R2
R3
1 0K
1 0K
SW2
P1
R4
R5
4 K7
4 K7
SW3
AD1
Gn d
1 0K
VDD
C4
Gn d
1 00 n F
7 -1 5 V
F1
1
2
1
Gnd
J1
U1
LM7 80 5
Vin
FUSE
CON2
Vo ut
Gn d
3
C2
R1
1 0K
C3
2
C1
VDD
1 00 0 u F
MCLR PB7
PA0
PB6
PA1
PB5
PA2
PB4
PA3
PB3
PA4
PB2
PA5
PB1
RD
PB0
WR
VDD
CS
VSS
VDD
PD7
VSS
PD6
OSC1
PD5
OSC2
PD4
PC0
PC7
PC1
PC6
PC2
PC5
PC3
PC4
PD0
PD3
PD1
PD2
X1
X2
1 00 n F
SW1
Gn d
Gn d
Gn d
C8
Gn d
Gn d
C5
2 7p F
Gn d
C6
2 7p F
1 00 n F
Gn d
C1 0
1 00 n F
C1 1
1 00 n F
Gn d
RXD
RTSD
TXD
CTSD
C7
1 00 n F
MAX2 32
Gn d
1
6
2
7
3
8
4
9
5
Gn d
CON6
DB9
Gn d
VDD
VDD
PD0
PD1
PD2
PD3
16
15
Gn d
14
RXD
13
TXD
12
TX
11
RX
10
CTS
9
RTS
1
2
3
4
5
6
C9
1 00 n F
C1 +
Vcc
V+
Gn d
C1 T1o u t
C2 +
R1 in
C2 R1 ou t
VT1in
T2o u t T2in
R2 in R2 ou t
Gn d
J2
U3
1
2
3
4
5
6
7
CTSD
8
RTSD
40
39
38
37
36
35
34
33
RTS
32
VDD
31
Gn d
30
29
28
27
26
TX
25
RX
24
23
22
PD3
21
PD2
PIC1 6F8 7 7A
Y1 4 MHz
MCLR
1 00 u F
1
MCLR
2
AD1
3
LED1
4
LED2
5
6
7
8
9
10
11
12
Gn d
13
X1
14
X2
15
16
17
CTS
18
19
PDO
20
PD1
Projekat – štampana ploča
Projekat – osnovne komponente







Napajanje preko linearnog regulatora napona LM7805
Kvarc od 4MHz
Mikrokontroler PIC16F877A.
Kolo za prilagođenje MAX232
Dve LED (žuta i crvena)
Tri tastera
Potenciometar.
Projekat – komande 1/2








Isključivanje/gašenje obe LED
Uključivanje/paljenje crvene LED (D1)
Paljenje žute LED (D2)
Paljenje obe LED
Naizmenično paljenje žute i crvene LED u
ukupnom trajanju od 2s
Generisanje sekvence_1 na D1 (prati se osciloskopom)
Generisanje sekvence_2 na D1 (prati se osciloskopom)
Generisanje sekvence_3 na D1 (prati se osciloskopom)
Projekat – komande 2/2





Generisanje sekvence_4 na D2 (prati se osciloskopom)
Generisanje sekvence_5 na D2 (prati se osciloskopom)
Generisanje sekvence_6 na D2 (prati se osciloskopom)
Merenje napona na potenciometru (P1)
Pritisak tastera SW2.
Projekat – ilustracija slanja komandi
Zaključak






Opisani su prenos podataka, serijski port i USART čip
Detaljno je obrađen mikrokontroler PIC16F877A
Dat je prikaz softvera mikroC
Ilustrovan je proces programiranja mikrokontrolera
PIC16F877A
Realizovano je električno kolo koje omogućava komunikaciju računara i PIC16F877A preko USART-a
Formirana je laboratorijska vežba koja demonstrira
USART komunikaciju
Biografija prvog autora










Prezime: Lazić
Ime: Dejan
Datum rođenja: 30.03.1982.
Nacionalnost: Srbin
Bračno stanje: Neoženjen
Vozačka dozvola: C kategorija
Adresa: selo Stanjevo, 37230 Aleksandrovac
E-mail: [email protected]
Telefon: 037759207
Mobilni telefon: 064 24 23 102
Biografija prvog autora

Obrazovanje: Elektrotehnička škola Kruševac
Smer: Elektrotehničar energetike, IV stepen

Menadžerske veštine:

Preduzimljivost, usredsređenost na razvoj, pregovaračke
sposobnosti, samosvest, samopouzdanje, realističnost o
svojim sposobnostima, sposobnost prihvatanja nejasne
komunikacije, motiv za uspehom.
Biografija prvog autora

Sopstvene veštine:
Orjentisanost ka ostvarenju zadatih ciljeva, postavljanje
prioriteta, preuzimanje problema na sebe i rešavanje istih,
komunikativnost, kreativnost, inovacije, spremnost na saradnju i rad pod stresom.

Poznavanje jezika:
Engleski jezik – osrednje, Ruski jezik – osrednje.

Iskustvo sa kompjuterom:
Operativni sistemi: Windows NT, XP.
Programski paketi: MS Office, AHDL, Protel 2004 (DXP).
Biografija drugog autora

Prezime: Novaković
Ime: Ivan
Datum rođenja: 13.10.1981.
Nacionalnost: Srbin
Bračno stanje: Neoženjen

Vozačka dozvola: B kategorija








Adresa: Kneza Pavla 36, 37000 Krusevac
E-mail: [email protected]
Telefon: 037490860
Mobilni telefon: 064 21 71 329
Biografija drugog autora

Obrazovanje: Elektrotehnička škola Kruševac
Smer: Elektrotehničar automatike, IV stepen

Menadžerske veštine:

Preduzimljivost, usredsređenost na razvoj, pregovaračke
sposobnosti, samosvest, samopouzdanje, sposobnost
prihvatanja nejasne komunikacije, motiv za uspehom.
Biografija drugog autora

Sopstvene veštine:
Preuzimanje inicijative, orjentisan ka ostvarenju rezultata,
definisanje prioritetnih ciljeva i njihovo ostvarenje, rešavanje
problema različite težine, komunikativnost, kreativnost, uvek
spreman na saradnju i rad pod manjim stresom, međukulturalna osetljivost.

Poznavanje jezika:
Engleski jezik – dobro.

Iskustvo sa kompjuterom:
Operativni sistemi: Windows 95, 98, 2000, NT, XP.
Programski paketi: MS Office, AHDL, OrCad 9.2.