SlideShare a Scribd company logo
1 of 11
Elektrotehnički fakultet, Univerzitet u Beogradu
Predmet : Namenski računarski sistemi
Domaći zadatak : Asinhroni serijski prenos.
Hardver i formati razmene podataka
Profesor : Student:
Dr. Lazar Saranovac Vlajić Jovan 2008 / 321
Septembar 2015
2
Sadržaj
1.Uvod………………………………………………………………………………3
2.UART……………………………………………………………………………..4
3.CAN……………………………………………………………………………….6
Literatura…………………………………………………………………………...11
3
1. Uvod
Najčešći metod komunikacije između mikroprocesora i periferija u namenski računarskim
sistemima je putem asinhrone serijske magistrale. Ovakva magistrala se sastoji od jednog
simetričnog para žica koje povezuju mikrokontorler koji predstavlja Master na magistrali i
periferije koje predstavljaju Slave uređaj na magistrali. Kad god mikrokontroler ima podatak koji
želi da pošalje periferiji on to čini tako što šalje kodovan niz bitova preko svoje linije za slanje
(TX-transmit wire). Podaci se prenose do periferije koja ih prima preko svoje prihvatne linije (Rx-
receive wire). Komunikacija od periferije ka mikrokontroler se obalja na sličan način samo u
suprotnom pravcu. Na slici 1. je prikazan blok dijagram asinhronog serijskog prenosa.
Slika1. Blok dijagram asinhronog serijskog prenosa
Ovaj vid komunikacije se nazia asinhroni zato što Master i Slave uređaj ne rade po istom taktu
odnosno ne postoji CLK signal na magistrali. Umesto toga koriste se posebnibitovi koji su
kodovani u samoj poruci koji se šalju od predajnika ka prijemniku i moraju biti dekodovani u
prijemniku. Najčešće korišćeni uređaj za kodovanje i dekodovanje poruka na asinhronoj serijskoj
magistrali je UART (Universal Asynchronous Receiver/Transmitter) U daljem tekstu
bavićemo se tipovima asinhronih magistrala,kao i hardverom i formatima razmene
podataka.
4
1. UART (Universal Asynchronous Receiver/Transmitter)
UART predstavlja uređaj za konvertovanje paralelnog tipa podataka u serijski tip podataka i
obrnuto. Komunikacioni standard je implementiran još 60-ih godina i do danas je ostao
najjednostavniji,univerzalni,najbolje razumljiv i najbolje hardverski podržan standard. Kablovi za
komunikaciju imaju jedan par žica,jedan za slanje podataka,drugi za primanje podataka(Tx,Rx).
Serijski portšalje povorku bitova,bit po bit.Serijski tip podataka se u periferiji ponovo pretvara u
paralelni tip podataka da bi mikrokontroler mogao da obrađuje podatke.Podacikoji se šalju preko
UART-a su organizovani u bajtovima što je konvencionalno i podudarase sa veličinom ASCII
karaktera. Osim konverzije tipa podataka koji je njegov osnovnizadatak,UART takođe menja
nivoe logičkih jedinica i nula prilikom prenosa preko magistrale. Na 8-bitni podatak koji se šalje
dodaju se dodatnibitovi koji se nazivaju start i stop bit,kao i bit koji vodi o računa o parnosti
podatka. Brzina prenosa podataka je mnogo sporija nego kod paralelnog prenosa unutar
mikrokontrolera. Zbog toga postojestandardne brzine prenosa podataka koje mogu da se koriste
na ovakvoj magistrali.
Format poruke koji se prenosi preko UART-a data je na slici 2.
Stop
8-bitni podatak bit
D0 D1 D2 D3 D4 D5 D6 D7
Start Bit Parnosti
bit
Slika2. Formatporuke koja se prenosi preko UART-a
Definisaćemo bitove u formatu poruke koja je prikazana na slici 2.
- Start bit predstavlja početak poruke podataka.Uglavnom se koristi da je start bit vrednosti 0 i
na taj način se zna da je to početak nove poruke.
- Stop bit predstavlja kraj poruke podataka.Uglavnom se koristi da je stop bit vrednosti 1 i na taj
način se zna da je to kraj tekuće poruke.
- Bit parnosti predstavlja bit za detekciju grešaka prenošene poruke. Može se računati kao bit
parne parnosti i kao bit neparne parnostina osnovupodataka prenošene poruke.
- Bitovi podataka D0..D7 predstavljaju prave podatkekoji trebaju da budu prenešeni.
Brzina prenosa jednog bita preko serijskog porta naziva se Baud rate. Ako se prenosi 8 bitova
podataka sa jednim start i jednim stop bitom, bez bita parnosti, može se ostvariti sledeća brzina
prenosa (115200 baud rate =115200bits/sec ,efektivna brzina prenosa iznosi 92160 bits/sec)
5
UART se najčešće koristi zajedno sa RS-232 standardom za prenos podatka koji specificira
električne,mehaničke,funkcionalne i proceduralne karakteristike komunikacione opreme.
Kao što smo ranije napomenuli UART se sastoji od predajnika i prijemnika.
Predajnik u suštini predstavlja specifični shift registar u koji se upisuju podaciu paralelnom obliku
a ispisuju se bit po bit pomeranjem određenom brzinom prenosa.
Prijemnik prima podatkeu serijskom obliku koje zatim rekonstruiše u poslate paralelne podatke.
Ovakav način komunikacije se koristi uglavnom gde je potrebno ostvariti male troškove
povezivanja mikrokontrolera i periferija u sistem.Blok dijagram UART sistema je dat na slici 3.
UART
predajnik
RS-232 RS-232
UART
prijemnik
Serijski podaciParalelni podaci
8 8
Paralelni podaci
Slika 3. Blok dijagram UART sistema
Na serijskoj liniji kada nema prenosa signala prisutan je nivo logičke jedinice.Prenos podataka
počinje kada se detekutje start bit čija je vrednost jednaka nuli.
Na slici 4 su prikazane strukture UART predajnika i prijemnika.
TDR
TSR
Transmitter control
1
1
Ld
Baud rate
generator
BClk BClkx8
TxD
RDR
RSR
Receiver control
RxD
8
DATA BUS
Transmiter Receiver
Slika 4. Struktura UART predajnika i prijemnika
U registar predajnika TDR upisuje se osmobitni podataka sa magistrale podataka . Zatim se taj
osmobitni podataka upisuje u šift registar TSR. Prvo se iz šift registra generiše start bit čija je
standardna vrednost jednaka nuli a zatim se podacipomeraju udesno 8puta bit po bit. Na kraju
generiše se i stop bit čija je vrednost jednaka 1. UART prijemnik očekuje na svom ulazu RxD start
bit,kada ga detekuje serijski podacise smeštaju u registar RSR zajedno sa start,stop bitom. Nakon
6
primljenog stop bita koji označava kraj poruke svi podacise iz RSR registra upisuju u RDR. Zatim
se ti podacišalju na magstralu podataka ka mikrokontroleru. Na UART magistrali moraju unapred
postojati određeni uslovi između prijemnika i predajnika a to su :
- Brzina prenosa podataka (Baud rate)
- Broj bita podataka i stop bitova
- Upotreba bita parnosti
UART se vrlo često koristi za veliki broj perifernih uređaja. Navešćemo neke od njih koji se
koriste u namenski računarskim sistemima :
1. GSM/GPRS modemi
2. Bluetooth modemi
3. GPS prijemnici
2. CAN (Controller Area Networking )
CAN magistrala je definisana kasnih 80-ih godina od strane firme Boschkoja se prvobitno
koristila u automobilskoj industriji. Kasnije se otkrilo da može biti veoma korisna i široko
primenljiva i u industrijskim sistemima. Ova magistrala podržava više master uređaja na njoj za
povezivanje elektronskih kontrolnih sistema.Svaki sistem može da šalje i prima poruke ali ne
simultano. Poruka se uglavnom sastoji od identifikatora (ID) koji predstavljaju prioritet poruke i 8
bajtova podataka. Poruka se prenosi serijski na magistralu. Uređaji koji koriste CAN magistralu su
uglavnom senzori,aktuatori i drugi kontrolni uređaji.Ovi uređaji nisu direktno vezani na magistralu
već preko CAN kontrolera.CAN kontroler je sofisticiran uređaj,preko njega skoro sve funkcije
CAN protokola se automatski odrađuju bez potrebe uticaja mikrokontrolera. Najbitnije je da se na
početku on konfiguriše upisivanjem podataka u njegove register dok on kasnije vrši operacije
samostalno I šalje poruke na magistralu.Struktura CAN kontrolera je prikazana na slici 5.
Interface
Management
Logic
Transmit
Buffer
Receive
FIFO
Acceptance
Filter
CAN Core
Block
TransceiverMicrocontroller
CAN controller
Slika 5. Struktura CAN kontrolera
7
Prema slici 5 možemo primetiti da se CAN kontroler sastoji od više blokova koje ćemo objasniti.
CAN Core Block – ima ulogu da kontroliše prijem i slanje CAN poruka prema CAN specifikaciji.
Interface ManagementLogic - ima ulogu povezivanja CAN kontrolera sa mikrokontrolerom
preko multipleksirane magistrale adresa i podataka.
Transmit Buffer – služi za skladištenje cele CAN poruke.Kada je prenos podataka od strane
mikrokontrolera u toku poruka se upisuje u bafer na jednoj strani i zatim se čita iz njega od strane
CAN Core Block-a.
Acceptance Filter – ima ulogu da filtrira i prosleđuje poruku konvertovanu iz serijskog u
paraleleni tip podataka ka mikrokontroleru.
Receive FIFO – služi za skladištenje poruka koje su prihvaćene od strane Acceptance Filter-a koje
se zatim šalju ka mikrokontroleru.
Uređaji na CAN magistrali se nazivaju čvorovima i u zavisnosti od njihove funkcije primaju ili
šalju specifične poruke. CAN čvortreba da sadrži mikrokontroler,CAN kontroler,primopredajnik.
Mikrokontrolerodlučuje koje poruke su relevantne za njega i koje on želi da pošalje.
Senzori,akutatori i kontrolni uređaji mogu biti povezani na mikrokontroler.
CAN kontroler ima dvojaku ulogu,slanje i primanje poruka sa magistrale. Prilikom primanja
poruke kontroler prima serijski podataksa magistrale dok cela poruka ne bude dostupnaa zatim je
prosleđuje mikrokontroleru. Prilikom slanja podataka,mikrokontroler prosleđuje poruku CAN
kontroleru koji zatim šalje bitove na serijsku magistralu.
Primopredajnik prilagođava nivoe signala sa magistrale na CAN kontroler i obratno.Takođeon
ima i zaštitnu ulogu kojom štiti kontroler od spoljnih uticaja.
Na sledećoj slici prikazano je povezivanje CAN uređaja na magistralu.
8
CAN
Device
CAN Bus
CAN
Device
GND
CAN_L
CAN_H
120R
120R
Slika 6. Blok šema povezivanja CAN uređaja na magistralu
Karakteristike CAN magistrale :
- Moristi upreden kabl
- Maksimalna frekvencija signala do 1Mbit/sec
-Dužina se obično kreće 40m
-Velika pouzdanosti efikasan sistem kontrole grešaka
-Uređaji nemaju specifične adrese
Funkcionisanje CAN magistrale
Svakom čvoru dodeljen je jedinstveni idnetifikacioni broj koji predstavlja binarnu prezentaciju
broja čvora.(na primer ako je čvor 5,dodeljen je identifikacioni broj 101) Svi čvorovikoji žele da
pošalju poruku bore se za svoje mesto na magistrali tako što šalju binarni signal koji predstavlja
njihov identifikacioni broj.Čvor sa najmanjim identifikacionim brojem pobeđuje i dobija pravo na
korišćenje magistrale.
9
Format poruka na CAN magistrali
Format poruka na CAN magistrali prikazan je na slici 7.
SOF MID RTR CONTROL DATA CRC ACK EOF
Slika 7. Format poruka na CAN magistrali
SOF – Početak poruke (Start Of Frame )
MID – Identifikator poruke ( Message Identifier ) Što je manja vrednost to poruka ima veći
prioritet. Dužina je od 11 do 29 bita u zavisnosti od standard koji se koristi.
RTR - Remote Transmission Request. Zahtev za slanje,inicijalna vrednost jednaka nuli.
CONTROL- Specificira brojbajtova poruke koja sledi
DATA - Podacidužine 0-8 bajtova
CRC – Sadrži 15-bitni CRC kod
ACK- Predstavlja prazan slot koji će biti popunjen bilo kojim čvorom koji prihvata poruku
EOF – Kraj poruke
Vreme trajanja jednog bita (Bit timing)
Svaki čvor u CAN magistrali ima svoj lokalni CLK ali CLK ne postoji na magistrali pošto je ona
serijska asinhrona magistrala. Međutim na magistrali mora postojati neki način sinhronizacije kako
bi predajnik i prijemnik pravilno čitali poruke.
Sinhronizacija je urađena deljenjem svakog bita u porucina nekoliko segmenata :
- Sinhronizacija
- Propagacija
- Faza 1 i faza 2
Dužina svakog faznog segmenta može se podesiti u skladu sa trenutnim stanjem na mreži i u
čvoru. Na slici 8 je prikazan trajanje jednog bita.
10
Next bitPhase 2Phase 1PropSyncPrevious bit
Nominal Bit Time
Slika 8. Vremenski dijagram trajanja jednog bita
Primena CAN magistrale je najveća u auto industriji. Na slici 9 je prikazana CAN magistrala u
automobilu sa svim magistralama i ona predstavlja glavnu magistralu u sistemu.
Slika 9. Primer korišćenja CAN magistraleu auto indistriji
11
Literatura
1. Embedded Systems and Applications (Serial)Buses, Cristinel Ababei ,Department of
Electrical Engineering, University at Buffalo ,Spring 2013
2. Vehicle Applications of ControllerArea Network , Karl Henrik Johansson,Lars Nielsen
3. Serial Communications, Silicon Labs
4. SJA1000Stand-alone CAN controller, Philips semiconductors

More Related Content

Viewers also liked

Pc to pc optical fibre communication mini project
Pc to pc optical fibre communication mini projectPc to pc optical fibre communication mini project
Pc to pc optical fibre communication mini projectPadmakar Mangrule
 
RitZBox-A file Sharing system
RitZBox-A file Sharing systemRitZBox-A file Sharing system
RitZBox-A file Sharing systemSubham Sahu
 
8051 serialp port
8051 serialp port8051 serialp port
8051 serialp portTeju Kotti
 
Synchronous and asynchronous clock
Synchronous and asynchronous clockSynchronous and asynchronous clock
Synchronous and asynchronous clockNallapati Anindra
 
Asynchronous Serial Communication and standards
Asynchronous Serial Communication and standardsAsynchronous Serial Communication and standards
Asynchronous Serial Communication and standardsMathivanan Natarajan
 
intelligent street light system using gsm Report
intelligent street light system using gsm Reportintelligent street light system using gsm Report
intelligent street light system using gsm Reportdarshangowda679
 
Netty: asynchronous data transfer
Netty: asynchronous data transferNetty: asynchronous data transfer
Netty: asynchronous data transferVictor Cherkassky
 
B.Tech.Final Year ECE Project Report on Ultrasonic distance measure robot
B.Tech.Final Year ECE Project Report on Ultrasonic distance measure robotB.Tech.Final Year ECE Project Report on Ultrasonic distance measure robot
B.Tech.Final Year ECE Project Report on Ultrasonic distance measure robotSushant Shankar
 

Viewers also liked (10)

Pc to pc optical fibre communication mini project
Pc to pc optical fibre communication mini projectPc to pc optical fibre communication mini project
Pc to pc optical fibre communication mini project
 
RitZBox-A file Sharing system
RitZBox-A file Sharing systemRitZBox-A file Sharing system
RitZBox-A file Sharing system
 
8051 serialp port
8051 serialp port8051 serialp port
8051 serialp port
 
Synchronous and asynchronous clock
Synchronous and asynchronous clockSynchronous and asynchronous clock
Synchronous and asynchronous clock
 
Asynchronous Serial Communication and standards
Asynchronous Serial Communication and standardsAsynchronous Serial Communication and standards
Asynchronous Serial Communication and standards
 
Data transferschemes
Data transferschemesData transferschemes
Data transferschemes
 
intelligent street light system using gsm Report
intelligent street light system using gsm Reportintelligent street light system using gsm Report
intelligent street light system using gsm Report
 
Netty: asynchronous data transfer
Netty: asynchronous data transferNetty: asynchronous data transfer
Netty: asynchronous data transfer
 
Interrupts
Interrupts Interrupts
Interrupts
 
B.Tech.Final Year ECE Project Report on Ultrasonic distance measure robot
B.Tech.Final Year ECE Project Report on Ultrasonic distance measure robotB.Tech.Final Year ECE Project Report on Ultrasonic distance measure robot
B.Tech.Final Year ECE Project Report on Ultrasonic distance measure robot
 

Similar to Asynchronous serial data transfer, UART and CAN controller

sinhroni i asinhroni prenos podataka.pdf
sinhroni i asinhroni prenos podataka.pdfsinhroni i asinhroni prenos podataka.pdf
sinhroni i asinhroni prenos podataka.pdfStanisaJankovic1
 
VET4SBO Level 3 module 1 - unit 2 - 0.009 srb
VET4SBO Level 3   module 1 - unit 2 - 0.009 srbVET4SBO Level 3   module 1 - unit 2 - 0.009 srb
VET4SBO Level 3 module 1 - unit 2 - 0.009 srbKarel Van Isacker
 
Načini komuniciranje između računara
Načini komuniciranje između računaraNačini komuniciranje između računara
Načini komuniciranje između računaraJasmina Profil
 
Simulacija digitalnih modulacionih postupaka (Diplomski rad)
Simulacija digitalnih modulacionih postupaka (Diplomski rad)Simulacija digitalnih modulacionih postupaka (Diplomski rad)
Simulacija digitalnih modulacionih postupaka (Diplomski rad)Nenad Milo?evi?
 
Komponente hardvera pc a
Komponente hardvera pc aKomponente hardvera pc a
Komponente hardvera pc aOlga Klisura
 
Komponente hardvera pc a
Komponente hardvera pc aKomponente hardvera pc a
Komponente hardvera pc aKrsticNikola
 
Računarske mreže - Miodrag Mijajlović - Žaklina Eftimovski
Računarske mreže - Miodrag Mijajlović - Žaklina EftimovskiRačunarske mreže - Miodrag Mijajlović - Žaklina Eftimovski
Računarske mreže - Miodrag Mijajlović - Žaklina EftimovskiNašaŠkola.Net
 
Komponente hardvera PC-a
Komponente hardvera PC-aKomponente hardvera PC-a
Komponente hardvera PC-aNikolaKrstic
 
Пасивна мрежна опрема
Пасивна мрежна опремаПасивна мрежна опрема
Пасивна мрежна опремаVladimir Tanović
 
Struktura računara prezentacija za 8. razred
Struktura računara prezentacija za 8. razredStruktura računara prezentacija za 8. razred
Struktura računara prezentacija za 8. razredDragisa Bojanic
 
Vrste i topologije računarskih mreža
Vrste  i topologije računarskih mrežaVrste  i topologije računarskih mreža
Vrste i topologije računarskih mrežaDragan Spiridonov
 

Similar to Asynchronous serial data transfer, UART and CAN controller (20)

sinhroni i asinhroni prenos podataka.pdf
sinhroni i asinhroni prenos podataka.pdfsinhroni i asinhroni prenos podataka.pdf
sinhroni i asinhroni prenos podataka.pdf
 
VET4SBO Level 3 module 1 - unit 2 - 0.009 srb
VET4SBO Level 3   module 1 - unit 2 - 0.009 srbVET4SBO Level 3   module 1 - unit 2 - 0.009 srb
VET4SBO Level 3 module 1 - unit 2 - 0.009 srb
 
Komunikacioni hardware
Komunikacioni hardwareKomunikacioni hardware
Komunikacioni hardware
 
IT8-L4.pptx
IT8-L4.pptxIT8-L4.pptx
IT8-L4.pptx
 
IT8-L1.pptx
IT8-L1.pptxIT8-L1.pptx
IT8-L1.pptx
 
Racunarske mreze predavanja
Racunarske mreze predavanjaRacunarske mreze predavanja
Racunarske mreze predavanja
 
Načini komuniciranje između računara
Načini komuniciranje između računaraNačini komuniciranje između računara
Načini komuniciranje između računara
 
Simulacija digitalnih modulacionih postupaka (Diplomski rad)
Simulacija digitalnih modulacionih postupaka (Diplomski rad)Simulacija digitalnih modulacionih postupaka (Diplomski rad)
Simulacija digitalnih modulacionih postupaka (Diplomski rad)
 
Struktura racunara
Struktura racunaraStruktura racunara
Struktura racunara
 
IT9-L3.pptx
IT9-L3.pptxIT9-L3.pptx
IT9-L3.pptx
 
123
123123
123
 
Komponente hardvera pc a
Komponente hardvera pc aKomponente hardvera pc a
Komponente hardvera pc a
 
Komponente hardvera pc a
Komponente hardvera pc aKomponente hardvera pc a
Komponente hardvera pc a
 
ORT
ORTORT
ORT
 
Rac seminar
Rac seminarRac seminar
Rac seminar
 
Računarske mreže - Miodrag Mijajlović - Žaklina Eftimovski
Računarske mreže - Miodrag Mijajlović - Žaklina EftimovskiRačunarske mreže - Miodrag Mijajlović - Žaklina Eftimovski
Računarske mreže - Miodrag Mijajlović - Žaklina Eftimovski
 
Komponente hardvera PC-a
Komponente hardvera PC-aKomponente hardvera PC-a
Komponente hardvera PC-a
 
Пасивна мрежна опрема
Пасивна мрежна опремаПасивна мрежна опрема
Пасивна мрежна опрема
 
Struktura računara prezentacija za 8. razred
Struktura računara prezentacija za 8. razredStruktura računara prezentacija za 8. razred
Struktura računara prezentacija za 8. razred
 
Vrste i topologije računarskih mreža
Vrste  i topologije računarskih mrežaVrste  i topologije računarskih mreža
Vrste i topologije računarskih mreža
 

Asynchronous serial data transfer, UART and CAN controller

  • 1. Elektrotehnički fakultet, Univerzitet u Beogradu Predmet : Namenski računarski sistemi Domaći zadatak : Asinhroni serijski prenos. Hardver i formati razmene podataka Profesor : Student: Dr. Lazar Saranovac Vlajić Jovan 2008 / 321 Septembar 2015
  • 3. 3 1. Uvod Najčešći metod komunikacije između mikroprocesora i periferija u namenski računarskim sistemima je putem asinhrone serijske magistrale. Ovakva magistrala se sastoji od jednog simetričnog para žica koje povezuju mikrokontorler koji predstavlja Master na magistrali i periferije koje predstavljaju Slave uređaj na magistrali. Kad god mikrokontroler ima podatak koji želi da pošalje periferiji on to čini tako što šalje kodovan niz bitova preko svoje linije za slanje (TX-transmit wire). Podaci se prenose do periferije koja ih prima preko svoje prihvatne linije (Rx- receive wire). Komunikacija od periferije ka mikrokontroler se obalja na sličan način samo u suprotnom pravcu. Na slici 1. je prikazan blok dijagram asinhronog serijskog prenosa. Slika1. Blok dijagram asinhronog serijskog prenosa Ovaj vid komunikacije se nazia asinhroni zato što Master i Slave uređaj ne rade po istom taktu odnosno ne postoji CLK signal na magistrali. Umesto toga koriste se posebnibitovi koji su kodovani u samoj poruci koji se šalju od predajnika ka prijemniku i moraju biti dekodovani u prijemniku. Najčešće korišćeni uređaj za kodovanje i dekodovanje poruka na asinhronoj serijskoj magistrali je UART (Universal Asynchronous Receiver/Transmitter) U daljem tekstu bavićemo se tipovima asinhronih magistrala,kao i hardverom i formatima razmene podataka.
  • 4. 4 1. UART (Universal Asynchronous Receiver/Transmitter) UART predstavlja uređaj za konvertovanje paralelnog tipa podataka u serijski tip podataka i obrnuto. Komunikacioni standard je implementiran još 60-ih godina i do danas je ostao najjednostavniji,univerzalni,najbolje razumljiv i najbolje hardverski podržan standard. Kablovi za komunikaciju imaju jedan par žica,jedan za slanje podataka,drugi za primanje podataka(Tx,Rx). Serijski portšalje povorku bitova,bit po bit.Serijski tip podataka se u periferiji ponovo pretvara u paralelni tip podataka da bi mikrokontroler mogao da obrađuje podatke.Podacikoji se šalju preko UART-a su organizovani u bajtovima što je konvencionalno i podudarase sa veličinom ASCII karaktera. Osim konverzije tipa podataka koji je njegov osnovnizadatak,UART takođe menja nivoe logičkih jedinica i nula prilikom prenosa preko magistrale. Na 8-bitni podatak koji se šalje dodaju se dodatnibitovi koji se nazivaju start i stop bit,kao i bit koji vodi o računa o parnosti podatka. Brzina prenosa podataka je mnogo sporija nego kod paralelnog prenosa unutar mikrokontrolera. Zbog toga postojestandardne brzine prenosa podataka koje mogu da se koriste na ovakvoj magistrali. Format poruke koji se prenosi preko UART-a data je na slici 2. Stop 8-bitni podatak bit D0 D1 D2 D3 D4 D5 D6 D7 Start Bit Parnosti bit Slika2. Formatporuke koja se prenosi preko UART-a Definisaćemo bitove u formatu poruke koja je prikazana na slici 2. - Start bit predstavlja početak poruke podataka.Uglavnom se koristi da je start bit vrednosti 0 i na taj način se zna da je to početak nove poruke. - Stop bit predstavlja kraj poruke podataka.Uglavnom se koristi da je stop bit vrednosti 1 i na taj način se zna da je to kraj tekuće poruke. - Bit parnosti predstavlja bit za detekciju grešaka prenošene poruke. Može se računati kao bit parne parnosti i kao bit neparne parnostina osnovupodataka prenošene poruke. - Bitovi podataka D0..D7 predstavljaju prave podatkekoji trebaju da budu prenešeni. Brzina prenosa jednog bita preko serijskog porta naziva se Baud rate. Ako se prenosi 8 bitova podataka sa jednim start i jednim stop bitom, bez bita parnosti, može se ostvariti sledeća brzina prenosa (115200 baud rate =115200bits/sec ,efektivna brzina prenosa iznosi 92160 bits/sec)
  • 5. 5 UART se najčešće koristi zajedno sa RS-232 standardom za prenos podatka koji specificira električne,mehaničke,funkcionalne i proceduralne karakteristike komunikacione opreme. Kao što smo ranije napomenuli UART se sastoji od predajnika i prijemnika. Predajnik u suštini predstavlja specifični shift registar u koji se upisuju podaciu paralelnom obliku a ispisuju se bit po bit pomeranjem određenom brzinom prenosa. Prijemnik prima podatkeu serijskom obliku koje zatim rekonstruiše u poslate paralelne podatke. Ovakav način komunikacije se koristi uglavnom gde je potrebno ostvariti male troškove povezivanja mikrokontrolera i periferija u sistem.Blok dijagram UART sistema je dat na slici 3. UART predajnik RS-232 RS-232 UART prijemnik Serijski podaciParalelni podaci 8 8 Paralelni podaci Slika 3. Blok dijagram UART sistema Na serijskoj liniji kada nema prenosa signala prisutan je nivo logičke jedinice.Prenos podataka počinje kada se detekutje start bit čija je vrednost jednaka nuli. Na slici 4 su prikazane strukture UART predajnika i prijemnika. TDR TSR Transmitter control 1 1 Ld Baud rate generator BClk BClkx8 TxD RDR RSR Receiver control RxD 8 DATA BUS Transmiter Receiver Slika 4. Struktura UART predajnika i prijemnika U registar predajnika TDR upisuje se osmobitni podataka sa magistrale podataka . Zatim se taj osmobitni podataka upisuje u šift registar TSR. Prvo se iz šift registra generiše start bit čija je standardna vrednost jednaka nuli a zatim se podacipomeraju udesno 8puta bit po bit. Na kraju generiše se i stop bit čija je vrednost jednaka 1. UART prijemnik očekuje na svom ulazu RxD start bit,kada ga detekuje serijski podacise smeštaju u registar RSR zajedno sa start,stop bitom. Nakon
  • 6. 6 primljenog stop bita koji označava kraj poruke svi podacise iz RSR registra upisuju u RDR. Zatim se ti podacišalju na magstralu podataka ka mikrokontroleru. Na UART magistrali moraju unapred postojati određeni uslovi između prijemnika i predajnika a to su : - Brzina prenosa podataka (Baud rate) - Broj bita podataka i stop bitova - Upotreba bita parnosti UART se vrlo često koristi za veliki broj perifernih uređaja. Navešćemo neke od njih koji se koriste u namenski računarskim sistemima : 1. GSM/GPRS modemi 2. Bluetooth modemi 3. GPS prijemnici 2. CAN (Controller Area Networking ) CAN magistrala je definisana kasnih 80-ih godina od strane firme Boschkoja se prvobitno koristila u automobilskoj industriji. Kasnije se otkrilo da može biti veoma korisna i široko primenljiva i u industrijskim sistemima. Ova magistrala podržava više master uređaja na njoj za povezivanje elektronskih kontrolnih sistema.Svaki sistem može da šalje i prima poruke ali ne simultano. Poruka se uglavnom sastoji od identifikatora (ID) koji predstavljaju prioritet poruke i 8 bajtova podataka. Poruka se prenosi serijski na magistralu. Uređaji koji koriste CAN magistralu su uglavnom senzori,aktuatori i drugi kontrolni uređaji.Ovi uređaji nisu direktno vezani na magistralu već preko CAN kontrolera.CAN kontroler je sofisticiran uređaj,preko njega skoro sve funkcije CAN protokola se automatski odrađuju bez potrebe uticaja mikrokontrolera. Najbitnije je da se na početku on konfiguriše upisivanjem podataka u njegove register dok on kasnije vrši operacije samostalno I šalje poruke na magistralu.Struktura CAN kontrolera je prikazana na slici 5. Interface Management Logic Transmit Buffer Receive FIFO Acceptance Filter CAN Core Block TransceiverMicrocontroller CAN controller Slika 5. Struktura CAN kontrolera
  • 7. 7 Prema slici 5 možemo primetiti da se CAN kontroler sastoji od više blokova koje ćemo objasniti. CAN Core Block – ima ulogu da kontroliše prijem i slanje CAN poruka prema CAN specifikaciji. Interface ManagementLogic - ima ulogu povezivanja CAN kontrolera sa mikrokontrolerom preko multipleksirane magistrale adresa i podataka. Transmit Buffer – služi za skladištenje cele CAN poruke.Kada je prenos podataka od strane mikrokontrolera u toku poruka se upisuje u bafer na jednoj strani i zatim se čita iz njega od strane CAN Core Block-a. Acceptance Filter – ima ulogu da filtrira i prosleđuje poruku konvertovanu iz serijskog u paraleleni tip podataka ka mikrokontroleru. Receive FIFO – služi za skladištenje poruka koje su prihvaćene od strane Acceptance Filter-a koje se zatim šalju ka mikrokontroleru. Uređaji na CAN magistrali se nazivaju čvorovima i u zavisnosti od njihove funkcije primaju ili šalju specifične poruke. CAN čvortreba da sadrži mikrokontroler,CAN kontroler,primopredajnik. Mikrokontrolerodlučuje koje poruke su relevantne za njega i koje on želi da pošalje. Senzori,akutatori i kontrolni uređaji mogu biti povezani na mikrokontroler. CAN kontroler ima dvojaku ulogu,slanje i primanje poruka sa magistrale. Prilikom primanja poruke kontroler prima serijski podataksa magistrale dok cela poruka ne bude dostupnaa zatim je prosleđuje mikrokontroleru. Prilikom slanja podataka,mikrokontroler prosleđuje poruku CAN kontroleru koji zatim šalje bitove na serijsku magistralu. Primopredajnik prilagođava nivoe signala sa magistrale na CAN kontroler i obratno.Takođeon ima i zaštitnu ulogu kojom štiti kontroler od spoljnih uticaja. Na sledećoj slici prikazano je povezivanje CAN uređaja na magistralu.
  • 8. 8 CAN Device CAN Bus CAN Device GND CAN_L CAN_H 120R 120R Slika 6. Blok šema povezivanja CAN uređaja na magistralu Karakteristike CAN magistrale : - Moristi upreden kabl - Maksimalna frekvencija signala do 1Mbit/sec -Dužina se obično kreće 40m -Velika pouzdanosti efikasan sistem kontrole grešaka -Uređaji nemaju specifične adrese Funkcionisanje CAN magistrale Svakom čvoru dodeljen je jedinstveni idnetifikacioni broj koji predstavlja binarnu prezentaciju broja čvora.(na primer ako je čvor 5,dodeljen je identifikacioni broj 101) Svi čvorovikoji žele da pošalju poruku bore se za svoje mesto na magistrali tako što šalju binarni signal koji predstavlja njihov identifikacioni broj.Čvor sa najmanjim identifikacionim brojem pobeđuje i dobija pravo na korišćenje magistrale.
  • 9. 9 Format poruka na CAN magistrali Format poruka na CAN magistrali prikazan je na slici 7. SOF MID RTR CONTROL DATA CRC ACK EOF Slika 7. Format poruka na CAN magistrali SOF – Početak poruke (Start Of Frame ) MID – Identifikator poruke ( Message Identifier ) Što je manja vrednost to poruka ima veći prioritet. Dužina je od 11 do 29 bita u zavisnosti od standard koji se koristi. RTR - Remote Transmission Request. Zahtev za slanje,inicijalna vrednost jednaka nuli. CONTROL- Specificira brojbajtova poruke koja sledi DATA - Podacidužine 0-8 bajtova CRC – Sadrži 15-bitni CRC kod ACK- Predstavlja prazan slot koji će biti popunjen bilo kojim čvorom koji prihvata poruku EOF – Kraj poruke Vreme trajanja jednog bita (Bit timing) Svaki čvor u CAN magistrali ima svoj lokalni CLK ali CLK ne postoji na magistrali pošto je ona serijska asinhrona magistrala. Međutim na magistrali mora postojati neki način sinhronizacije kako bi predajnik i prijemnik pravilno čitali poruke. Sinhronizacija je urađena deljenjem svakog bita u porucina nekoliko segmenata : - Sinhronizacija - Propagacija - Faza 1 i faza 2 Dužina svakog faznog segmenta može se podesiti u skladu sa trenutnim stanjem na mreži i u čvoru. Na slici 8 je prikazan trajanje jednog bita.
  • 10. 10 Next bitPhase 2Phase 1PropSyncPrevious bit Nominal Bit Time Slika 8. Vremenski dijagram trajanja jednog bita Primena CAN magistrale je najveća u auto industriji. Na slici 9 je prikazana CAN magistrala u automobilu sa svim magistralama i ona predstavlja glavnu magistralu u sistemu. Slika 9. Primer korišćenja CAN magistraleu auto indistriji
  • 11. 11 Literatura 1. Embedded Systems and Applications (Serial)Buses, Cristinel Ababei ,Department of Electrical Engineering, University at Buffalo ,Spring 2013 2. Vehicle Applications of ControllerArea Network , Karl Henrik Johansson,Lars Nielsen 3. Serial Communications, Silicon Labs 4. SJA1000Stand-alone CAN controller, Philips semiconductors