UART, rozhrani RS232, RS485
Přednáška UART, RS232, 422, 485
A4M38AVS
Aplikace vestavěných systémů ,2013,
J. Fischer, katedra měření, ČVUT - FEL, Praha
A4M38AVS, 2013, J.Fischer, ČVUT - FEL, kat. měření
1
STM32F100 - UART
Nested
Nestedvect
vectIT
ITCtrl
Ctrl
11xxSystick
SystickTimer
Timer
11xxDMA
DMA
77Channels
Channels
CRC
CRC
FlashI/F
I/F
Flash
ARMLite
LiteHi-Speed
Hi-SpeedBus
Bus
ARM
Matrix
/
Arbiter
(max
24MHz)
Matrix / Arbiter (max 24MHz)
Sériová komunikace: UART Universal Asynchronous Receiver Transmitter
USART Universal synchronous -Asynchronous Receiver Transmitter
UART
Power
Cortex-M3
PowerSupply
Supply
Cortex-M3
(USART)
Reg
1.8V
CPU
16-128kB
Reg
1.8V
CPU
16-128kB
POR/PDR/PVD
24
MHz
Flash
Memory
POR/PDR/PVD
24 MHz
Flash Memory
v STM32F100
XTAL
XTALoscillators
oscillators
32KHz
32KHz++3~25MHz
3~25MHz
napěťové
4kB-8kB
4kB-8kBSRAM
SRAM
Int.
RC
oscillators
Int. RC oscillators
JTAG/SW
JTAG/SWDebug
Debug
40KHz
úrovně 0, +3 V
40KHz++8MHz
8MHz
20B
20BBackup
BackupRegs
Regs
Clock
ClockControl
Control
Bridge
Bridge
Up
Upto
to80
80I/Os
I/Os
1x
1xSPI
SPI
1x
1xUSART/LIN
USART/LIN
Smartcard/IrDa
Smartcard/IrDa
Modem-Ctrl
Modem-Ctrl
A4M38AVS, 2013, J.Fischer, ČVUT - FEL, kat. měření
(max 24MHz)
Up
Upto
to16
16Ext.
Ext.ITs
ITs
ARM Peripheral Bus
1x6x
1x6x16-bit
16-bitPWM
PWM
Synchronized
SynchronizedAC
ACTimer
Timer
Bridge
Bridge
PLL
PLL
RTC
RTC//AWU
AWU
2x
2xWatchdog
Watchdog
ARM Peripheral Bus
(independent
(independent&&window)
window)
(max 24MHz)
33xx16-bit
16-bitTimer
Timer
1x16-bit
1x16-bittimer
timerwith
with22
IC/OC/PWM
IC/OC/PWM
2x16-bit
2x16-bittimer
timereach
each
with
1
IC/OC/PWM
with 1 IC/OC/PWM
HDMI
HDMICEC
CEC
2x
2xSPI
SPI
22xx12bit
12bitDAC
DAC
1x
12-bit
ADC
1x 12-bit ADC
16
16channels
channels//
850ksps
850ksps
2x
2xUSART/LIN
USART/LIN
Smartcard
Smartcard//IrDa
IrDa
Modem
ModemControl
Control
Temp
TempSensor
Sensor
2x
2xI2C
I2C
2
Obvod UART
vyslání znaku ´1´ doba = 10 x ( 1 / Br ) , nast. - 8 dat, 1 stop bit
UART sériový přenos dat
synchronizace – start bit do 0
datové bity začíná se od D0 (LSB !)
přenos typicky 8 datových bitů D0 až D7)
1/ Br
31 = "1"
Možná nastavení:
(vždy jen – 1 start bit)
5 až 8 datových
parita ( žádná, sudá, lichá)
stop bity (1, 1,5, 2 ), v některých
obvodech UART i 9 bitů
1
0
0
0
1
1
0
přenos jednoho znaku
1
2
3
4
T
D0
D1 D2
0
stop
start
start D0 D1 D2 D3 D4 D5 D6 D7 stop
"S"
5
6
7
8
9
10
D3
D4
D5
D6
parita stop
1
přenos dalšího
znaku
0
start
start
přenos 7 dat, parita, 1 stop)
Nastavení na cvičení:
8 datových, bez parity, 1 stop bit
znak
znak
znak
znak
přenos více znaků, prodlevy
A4M38AVS, 2013, J.Fischer, ČVUT - FEL, kat. měření
3
Modulační rychlosti
Modulační rychlosti používané pro přenos pomocí UART
nejčastěji používaná rychlost 9600 Bd (Baudů)
UART v STM32F100
podporuje i vyšší rychlosti
50
300
stovky kBaud
T
A4M38AVS, 2013, J.Fischer, ČVUT - FEL, kat. měření
2 400
19 200
75
600
3 600
28 800
110
1200
4 800
38 400
134.5
1 800
7 200
57 600
150
2 000
9 600
115 200
4
Rozhraní RS-232
Přenos dat sériovým kanálem s využitím UART (na PC COM port) mezi dvěma
zařízeními, přenos typu bod – bod
Rozhraní RS-232 pro zvýšenou šumovou imunitu (šum. imunita -viz. min.před.)
(napětí na výstupu budiče vysílače UOH = 5 V až 15 V, UOL = - 5 V až - 15 V
na vstupu přijímače UIH = 3 V až 15 V, případně UIL = - 3 V až - 15 V
klidová nap. úroveň na vodiči data TXD log 1 (! pro kontrolu funkčnosti ve cv.)
tedy UOL = - 5 V až - 15 V záporné napětí (velikost podle typu budiče)
při přenosu se objevují kladné napěťové úrovně UOH = 5 V až 15 V (podle -“-)
přenos dat v negativní logice – budič vysílače a přijímač jsou invertující
přenos řídících signálů – v pozitivní logice
MAX 232
MAX 232
TxD
RxD
US
A4M38AVS, 2013, J.Fischer, ČVUT - FEL, kat. měření
MP1
MP2
RxD
TxD
5
RS-232 INTERFACE (materiál TI)
+12 V
+5 V
+5 V to 15 V
'0'
+3 V
RS
0V
CL
-12 V
-3 V
-5 V to -15 V
'1'
max. 1 ms
Unbalanced circuitry
Output drive voltage:
Logic “0” = 5 … 15V;
Logic “1” = -5 … -15V
Receiver level:
Logic “0” > 3V: Logic “1” < -3V
A4M38AVS, 2013, J.Fischer, ČVUT - FEL, kat. měření
Output voltage slew rate max. 30V/µS
(EMI !)
Maximum data rate: 20kbps (120 kbps
de facto standard)
Load capacitance < 2500 pF
includes receiver input
(approx.. 15 - 20 m cable length)
6-5
6
Signály RS-232
č. kontaktu v konektoru DSUB- 9
označ.
název signálu
význam
FG
Frame ground
ochranná zem
3
TXD
Transmit Data
výstup vysílaných dat
2
RXD
Receive Data
vstup přijímaných dat
7
RTS
Request to Send DTE může přijímat data z DCE
8
CTS
Clear to Send
DCE může přijímat data z DTE a vysílat je
6
DSR
Data Set Ready DCE je připraveno
5
SG
Signal Ground
signálová zem
1
DCD
Data Carrier Detect DCE rozpoznalo funkční připojení linky
4
DTR
Data Terminal Ready
DTE je připraveno k funkci
9
RI
Ring Indicator
DCE indikovalo výzvu (vyzvánění)
V úloze na cvičení využití pouze datových signálů TXD a RXD
signály RTS, CTS, DSR mohou být používány pro řízení přenosu (handshake)
alternativní způsob handshake „XONN“ , „XOFF“ s využitím pouze signálů
TxD a RxD posílání řídicích znaků
A4M38AVS, 2013, J.Fischer, ČVUT - FEL, kat. měření
7
Rozhraní RS-232
Použitelnost RS -232 pro přenos na vzdálenost jednotek metrů,
(pro 9600 Bd typ. - 12 metrů)
Měření osciloskopem na rozhraní RS- 232
zem osciloskopu – na GND procesoru, živý vstup osciloskopu- hrot sondy na
měřený signál ( jasné,.. ale…minulé zkušenosti).
pozor – v PC („set top“) GND RS232 bývá propojena na GND PC, ochranný
vodič – kolík v zásuvce, propojení zařízení dalším signálem, např. může
být problém při měření s napájením zařízení při použití starého
dvouvodičového rozvodu napájecí sítě ( 230 V/50 Hz)
osciloskop – GND ochrana (napájení) propojení GND vstupu osciloskopu
(výklad tabule)
A4M38AVS, 2013, J.Fischer, ČVUT - FEL, kat. měření
8
Rozhraní RS-232, převod UART- USB
Převodníky USB – RS-232 použitelnosti 500 kBaud, (konektor RS-232
převodníku přímo do konektoru RS232 mikropočítače, bez kabelu)
omezení rychlosti – problém – budič RS-232 hrany, přídavná zátěž kapacitou
kabelu)
Pozn. použití rozhraní UART mezi mikropočítači s přenosem v úrovních TTL
či UART – převodník UART/USB v úrovních TTL (CMOS) i jednotky MBaud
Obvody firmy FTDI typu FT232B, FT232R, FT2232D USB – Full speed
FT2232H – USB High speed
STM32
UART
TxD
RxD
TTL
úrovně
FT232R
UART/
USB
USB
Převodníky USB- RS232 –
(např. obvod FT232RL doplněný MAX232 – převodník úrovní)
(poč. obchody cena 200 Kč +, nejblíže např. www.nc.cz) potřeba pro úlohu
A4M38AVS, 2013, J.Fischer, ČVUT - FEL, kat. měření
9
Realizace rozhraní RS- 232 na cvičení
Převodník úrovní TTL/ RS-232 obvody obdobné MAX 232, konkrétně
ADM232L Analog devices, napájení +5 V
( funkční i při + 3 V- mimo kat. parametry)
A4M38AVS, 2013, J.Fischer, ČVUT - FEL, kat. měření
10
Vysílač, přijímač RS-232, pojmy
Pojem „vstup vysílače“, „výstup přijímače“
+5V
ADM 232 L
Tx in
Tx out
vysílač
1
2
3
4
RS 232
2
Rx out přijímač
Rx in
3
Tx D
Rx D
5
6
7
8
C1 +
V+
C1 C2 +
C2 VT2out
R2in
Vcc
GND
T1out
R1in
R1out
T1in
T2in
R2out
16
15
14
13
12
11
10
9
STM32F100
UART
Rx D
Tx D
5
Vysvětlení (analogie) ruční vysílačka,
vstup vysílače – akustický signál - mikrofon – výstup vysílače (anténa)
vstup přijímače (anténa) – výstup přijímače (reproduktor)
RxD přijímaná data - data na vstupu mikroproc. (z R out - ADM232)
TxD vysílaná data – data na výstupu mikroproc. (do T in ADM232)
A4M38AVS, 2013, J.Fischer, ČVUT - FEL, kat. měření
11
Konektory pro RS-232
1 2 3 4 5
Rx D
Tx D
GND
GND
Rx D
Tx D
konektor COM – port na PC, DSUB 9 ( Cannon konektor 9 pinů, kolíky)
3 TXD Transmit Data
výstup vysílaných dat
2 RXD Receive Data
vstup přijímaných dat
deska mikropočítače připojena prodlužovacím kabelem – propojení pin č. 2
dutinka č. 2 na kolík č. 2 kabelem
propojení DSUB 9 dutinky na kolíky. propojení 1 na 1, 2 na 2,…
5 4 3 2 1
+5V
6 7 8 9
pohled na kolíky (PC)
ADM 232 L
9 8 7 6
pohled na dutinky
(vývojový kit uP)
1
2
3
4
2
3
Tx D
Rx D
5
6
7
8
C1 +
V+
C1 C2 +
C2 VT2out
R2in
Vcc
GND
T1out
R1in
R1out
T1in
T2in
R2out
16
15
14
13
12
11
10
9
Rx D
Tx D
5
A4M38AVS, 2013, J.Fischer, ČVUT - FEL, kat. měření
12
UART a rozhraní RS-422
Rozhraní RS 422 možnost zvýšit rychlost přenosu až na:
10 Mb/s (vedení o délce několika metrů),
2 Mb/s při délce vedení 60 m
100 kb/s při délce vedení 1200 m.
Diferenciální budiče – vstup. sig. – převod na rozdílové napětí UD
pro Di = H výstup A připojí na napájení + 5 V a B na GND (zem) vysílače .
pro Di = L naopak.
Vedení – kroucený dvoudrát. Zakončení odporem dle char. imped. ved Z0.
obvykle 100 až 120 Ohmů
Pro propojení dvou zařízení s UART – duplexní provoz – potřeba 2x RS- 422
Am26LS31
DI
A
A4M38AVS, 2013, J.Fischer, ČVUT - FEL, kat. měření
+
UD
B
GND1
Am 26LS32
RT
DO
GND2
13
Rozhraní RS-422 odolnost proti rušení
 Diferenciální přijímač rozliší rozdílové napětí 200 mV.
Funkční i při přítomnosti souhlasného rušivého napětí (rozdíl potenciálu
GND1 a GND2) na vstupu až ± 7 V.
RS 422 - pro sériový přenos od vysílače obvykle k jednomu přijímači.
RS 422 je vhodné i pro paralelní přenos tam, kde se požaduje vysoká
rychlost přenosu informace. Např. přenos 8 datových signálů paralelně
pomocí 8-mi rozhraní RS-422.
Poznámka pro pomoc při vývoji: pro jednoduché případy (a pouze pro kontroly
funkčnosti zařízení) a velmi malé vzdálenosti lze výstup A chápat jako
neinvertující výstup v TTL logických úrovních (velikost napětí UOH závisí na
použítí zakončovacího odporu) a napojit jej na vstup logického obvodu,
Výstup B – chování jeko invertující výstup TTL
Am26LS31
DI
A
A4M38AVS, 2013, J.Fischer, ČVUT - FEL, kat. měření
+
UD
B
GND1
Am 26LS32
RT
DO
GND2
14
Rozhraní RS-485 pro přenos pomocí UART
Rozhraní RS-485 (podoba s RS- 422)
propojení jednotek kroucený dvoudrát a GND
ale obousměrná komunikace, zakončení na obou koncích odporem dle
char. impedance vedení Z0.
neaktivní jednotka má výstupy v třetím stavu (signál DE)
na společné vedení – sběrnici – je možné připojit až 32 jednotek
poloduplexní komunikace, nutná arbitráž, jednotka master řídící komunikaci
Obousměrný budič např. 75176
možné použití i s napájením 3,3 V, např. obvod ADM 3485 Analog Devices
B
DI
RO
RE
A
A
DE
+
-
RT
RT
B
T
T
T
T
Použití v průmyslových systémech pro přenos na větší vzdálenosti (10- ky až
100- ky metrů, použití i pro propojení jen dvou jednotek – nadřízená
(master) a podřízená jednotka
A4M38AVS, 2013, J.Fischer, ČVUT - FEL, kat. měření
15
Comparison of RS-422 and RS-485 (materiál TI)
RS-422
RS-485
Rt
100 Ω
Rt
100 Ω
1 generator
up to 10 receivers
simplex operation
-7V to +7V
4 kΩ
100 Ω
< 150 mA to GND
Max common mode voltage
Receiver input impedance
Minimum generator load
Generator short circuit current
A4M38AVS, 2013, J.Fischer, ČVUT - FEL, kat. měření
Rt
100 Ω
up to 32 unit loads
Half duplex operation
-7V to +12V
12 kΩ
60Ω
<250 mA to -7V / +12V
6-19
16
Was this manual useful for you? yes no
Thank you for your participation!

* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project

Download PDF

advertisement