You are on page 1of 20

Komunikacije kod

mikroračunala
UART
USART
SPI
I2C
One wire
(UART)
Universal Asynchronous Receiver and Transmitter
Ova vrsta komunikacije namjenjena je za razmjenu podataka između
dvaju TTL ili CMOS sklopova koji imaju ugrađene komunikacijske
protokole. Ako se komunikacija vrši između mikroračunala i PC
računala potrebno je izvršiti određenu prilagodbu standarda i nivoa
napona.
UART ili USART je hardverski sustav ugrađen u mikroračunalo. Zahvaljujući
tom protokolu moguće je ostvariti komunikaciju na slijedećim relacijama:
•Mikroračunalo  mikroračunalo
•Mikroračunalo  TTL
•Mikroračunalo  PC računalo

Osim hardverskog UARTA-a postoje i tzv softverski UART-i. Koja je razlika?


Hardverski UART je ugrađen u mikroračunalo u obliku sklopova(pretežno
registara, logičkih sklopova i točno određenih pinova). Softverski UART-i
mogu se primijeniti na gotovo svaki slobodni pin mikroračunala. To su ustvari
gotove programske rutine koje se nalaze ugrađene u kompajlerima viših
jezika za mikroračunala(npr . BASCOM AVR).
SPI --brza sinkrona komunikacija između dvaju AVR
uređaja.

Sekundarna primjena SPI je ISP sistem transfera programa iz PC


računala u AVR.
Česta primjena SPI je kod komunikacije AVR-a sa senzorima koji mogu raditi
samo kao SLAVE komponente. Tada AVR radi kao MASTER:
I2C komunikacija
Osmišljena je 90-tih godina za komunikaciju između memorija i sličnih
komponenti u raznim vrstama TV prijemnika i ostalih proizvoda
komercijalne elektronike. Danas mnogi kontroleri s popratnim
kompajlerima imaju ugrađene I2C naredbe i rutine. Ova kominkacija je kao i
One wire primjenjiva na svakom pinu. Odvija se premama načinu
MASTER=>SLAVE , gdje MASTER može biti jedan ,a SLAVE komponenti je
više ili jedna.

Slave komponente:
•Temp senzori
•RTC satovi
•Memorije
•AD konvertori
UART i SPI su hardverski dizajnirani komunikacijski protokoli:
Pinovi za UART su Tx i Rx pinovi. Pinovi za SPI su MISO, MOSI i SCK pinovi.
1W i I2C su komunikacije riješene samo na softverskoj razini te mogu koristiti bilo
koje pinove. Nedostatak im je da ih je teško ostvariti asemblerskim procedurama.
UART se može ostvariti i softverski onda kada su Tx i RX pinovi već zauzeti drugim
funkcijama.
UART

Komunikacija je razmjena podataka između dvije digitalne


naprave. Razmjena može jednosmjerna , dvosmjerna i
poludvosmjerna.

Smjer prijenosa podataka:


•Slanje podataka Tx
•Prihvat podataka Rx

Odvija se između:
•Dva mikrokontrolera
•Mikrokontrolera i PC-a
•Mikrokontrolera i memorije
•Mikrokontrolera i ADC
•ADC – mikrokontroler – PC računalo

Protokol je skup pravila i ponašanja na liniji


komunikacije. To je jezik komunikacije. Sačinjen je od
bajtova , riječi, bitova. Neki bitovi mogu označavati
sart ili stop komunikacije,reset linije…bajtovi sadržr
podatak koji se prenosi. Ponekad se tako uokvireni
paketi podataka zovu FRAME-ovi.
Mikroračunalo ima sklopovlje koje je
zaduženo za izvođenje takve
komunikacije. To sklopovlje sačinjeno je
od registara, zastavica , logičkih vrata.

Serijski registar iz kojega se


odašilja podatak.

Kontrolni registar koji


određuje protokol, početak
i kraj komunikacije.
SCON registar

SM0 – služi za određivanje načina rada


SM1 služi za određivanje načina rada kao i prethodni bit.
SM2 – Omogućuje multiprocesorsku komunikaciju
REN – Omogućuje prihvat signala Rx.
TB8 – Omogućuje komunikaciju u načinu rada 2 i 3 kada je podatak 9.bitan
RB8 – omogućuje prihbat devetog bita u načinu 2 i 3.
TI – interrupt zastavica koja označava kraj odašiljanja jednog bajta
RI – interrupt zastavica koja označava trenutak kad je jedan bajt prihvaćenj
*(Prisjetimo se lekcije Prekidni sustavi)

Načini rada ili modovi komunikacije: Sinkrona


komunikacija
Način rada 0:

Ovakav se način može


koristiti za komunikaciju s
TTL ili CMOS
komponentama(najčešće
registri)

U ovom načinu rada koristi se sinkrona


komunikacija. Tx se koristi kao davač impulsa
takta za komunikaciju a Rx se koristi i za
odašiljanje i za prihvat signala. Frekvencija
takta određena je glavnim generatorom takta i
vanjskim kristalom (1/12).
Način rada 0:

Odašiljanje se inicira odmah čim u SBUF


registar dospiju podaci kad je slanje gotovo
uključi se TI zastavica.

Prihvat signala odvija se kad je


REN u stanju 1 i RI u stanju 0. Kad
je prihvat gotov onda se upali
zastavica RI=> 1.
Način rada 1:

Kod načina rada 1 prenose se paketi koji su


sačinjeni od Startnog bita log. 0, 8 bita podatka i
STOP bita log. 1. Kad je prijam bajta gotov STOP bit
se zapisuje u RB8. Prijenos započinje s LSB bitom.
START bit služi da bi inicirao prijam podatka.
Način rada 1:

TRANSMIT
Odašiljanje se inicira čim se u SBUF registar upiše podatak.
Kad je TI u jedinici odašiljanje je gotovo.

RECEIVE

Start bit 0 inicira prihvat podatka , kad je


prihvat gotov RI se postavlja u jedinicu.
Kod ovog načina rada postoji tzv 9. bit u
prijenosu podatka. Taj bit se koristi za kontrolu
točnosti prijenosa. Kad 9 bit stigne na prijemnu
stranu bilježi se u TB8 u SCON registru.
Način rada 2 i 3 razlikuju se
Kod multiprocesorskog
samo po izvoru frekvencije
rada 9. bit se koristi za
za rad komunikacije. U
prijenos adrese pojedinog
načinu 3 izvor takta je
terminala. Naime kod
timer1 koji se postavlja u
ovog načina imamo jedan
reload način rada i uključuju
transmiter ili master i više
se interupt-i od tog tajmera.
prijemnika (slave). Da bi
se mogao determinirati
kojem prijemniku se
master obraća mora se
prvo poslati adresa pa
onda podatak.
Način biranja brzine prijenosa pomoću tajmera1. Vrijednost iz
tablice upisuje se u TH1 dio tajmera. Npr. za brzinu 2400 b/s u
TH1 upisujemo vrijednost F3 H ako je kristal 12MHz.

You might also like