Você está na página 1de 11

USART Peripheral

USART Peripheral
nterfac
nterfac


e
e
Modo UART
Modo UART
Grupo 2
Grupo 2
Solange Ahumada Solange Ahumada
Alvaro Aguirre Alvaro Aguirre
Bernardo Malet Bernardo Malet
Alfredo Toledo Alfredo Toledo
Gustavo Valedes Gustavo Valedes
Mauricio Venegas Mauricio Venegas
USART: Definicin
La palabra Usart significa Receptor / Transmisor Sincrnico
/Asincrnico Universal, en este documento estudiaremos las
caractersticas del modo Asincrnico, conocido como modo UART
El modo asincrnico se elige al poner el bit SY! " #
Usart modo UART
Se transmite $ reciben caracteres en forma asincrnica desde o
%acia el dispositivo, la transmisin $ recepcin funcionan a la
misma tasa de baudios elegidos previamente
Caracteristicas de la UART
&'atos de ( u ) bits con paridad par impar o sin paridad
&Registros de despla*amiento +,S%ift register-. de recepcin $
transmisin independientes
&/uffer de transmisin $ recepcin separados
&El bit menos significativo es el primero en transmitirse $ recibirse
&0rotocolos de comunicacin definidos para sistemas
multiprocesadores +address bit, built in, idle line.
&!apacidad para salir del modo de ba1o consumo +dormido. a
trav2s de la recepcin de un cambio de estado +deteccin de canto
de partida.
&Tasa de transmisin de bits+baudios. programable
&Se3ali*a deteccin $ supresin de errores +flags. $ deteccin de
direcciones
2
&!apacidad independiente de interrupciones para transmisin $
recepcin
3
Inicializacin y Reinicio
La iniciali*acin o el reinicio ocurre cuando el bit S4RT"5 o
cuando se produce 0U! +0o6er Up !lear. 7ue viene a ser al
aplicarle energa a la tar1eta de desarrollo
8curre luego 7ue se setean los bits UT9:;<9, T9E;T
Es importante destacar 7ue los flags de transmisin $ recepcin
UR9E9 $ UT9E9 no son alterados con S4RST"#, $ liberan la
USART de la operacin
Formato de caracteres
Los caracteres est=n agrupados de acuerdo al siguiente es7uema
ST representa al bit de partida
D0 a D6 son losbit de informacin
D7 es )vo bit de informacin 7ue se %abilita al setear CHAR!
AD es el bit de direccion 7ue se utili*a en el formato adress bit
seteando ""!
#A es el bit de paridad, se ocupa seteando #$%A!
S# es el 5er bit de stop
S# es el >do bit de stop se usa para S#!
4
#rotocolos de Com&nicacion
0ara conectar > dispositivos se usa el protocolo idle line $ se usa
con el bit ??"#, para conectar @ o mas dispositivos puede
utili*arse tanto el protocolo idle line +??"#. o el protocolo
adress 'it para el cual %a$ 7ue setear ??"5
Idle line
En :dle Line +0erodo o Tiempo ?uerto. los blo7ues de
informacin est=n separados por un tiempo muerto en las lneas
de transmisin $ recepcin
Una tiempo muerto es detectado cuando %a$ 5# o mas unos
continuos despu2s del 5er bit de stop del car=cter
Es importante mencionar 7ue cuando se usan > bits de stop para el
idle line, el segundo cuenta como el 5er ,5- de los ,5#-
Tiempo de espera de 10 bits o mas
Tiempo de espera
menor a 10 bits
Frame Frame dentro del
bloque
Frame dentro del
bloque
Primer Frame dentro
del bloque es uan
direccion, sigue a un
tiempo de espera
Expandido
5
Rece(cin
El procedimiento de recepcin es el siguienteA
'espu2s de un periodo muerto el 5er car=cter recibido es una
direccion, se setea el bit R94ABE $ se guarda la direccion en
UCR9/U; +El bit UR94:E en 5.
Todo lo 7ue no es direccin se ensambla pero no se transmite al
UCR9/U;D +o genera interrupciones.
!uando recibo direccin el receptor se activa temporalmente para
transferir esa direccin al UCR9/U; +la direccin debe ser
validada. luego %a$ 7ue resetear UR94:E cambiando
manualmente su valor
Transmisin
0rimer seteamos T94ABE +para 7ue sepa 7ue viene una
direccin., luego escribimos caracteres en UCT9/U;, el cual debe
estar listo para recibir nueva informacin +es decir UT9:;<9"5.
Los datos de UCT9/U; son llevados a los registros de transmisin
+transmit s%ift registers. cuando estos est=n listos para recibir
nueva informacin
Se setea 4UT autom=ticamente, $ as se suprimen los bits de
partida, datos $ paridad de una transmisin normal $ transmite un
periodo muerto +idle line. de 55 unos, el T94ABE se resetea
autom=ticamente
>&Escribimos la direccin deseada al UCT9/U;, el 7ue debe estar
listo para recibir nuevos datos +es decir UT9:;<9"5. Se transmite
la direccin la cual sigue al periodo muerto +idle line. en el 7ue se
mando el identificador en UT9'9
0ara cambiar el T94ABE al valor de 4UT $ generar la condicin
de tiempo muerto es necesario escribir el primer caracter donEt
care al UT9/U;
Este dato es descartado $ no aparece en el UT9'9
6
Formato Addres )it
En este protocolo cada car=cter tiene un bit eCtra como indicador
de direccin +adress bit.
Rece(cin
El R94ABE se setea cuando la direccin del caracter es valida $ la
transfiere al UCR9/U;
Si UR94:E"5 +es decir 7ue el adress bit "#. los caracteres de
datos son ensamblados pero no transmitidos al U9R9/U; $ no
genera interrupciones
Si en cambio el adress bit "5 el receptor es temporalmente
activado para transmitir el car=cter a U9R9/U; $ setea UR9:;<9
Si una direccion es recibida el usuario debe resetear UR94:E para
continuar recibiendo datos sino solo las direcciones seran
recibidas
Esto debe reali*arse manualmente
Primer rame del bloque
es una direcci!n
"# $it es cero
para dato en el bloque
Expandido
Tiempo de espera
$loques de
rames
Tiempo de espera
%
Transmisin
0ara controlar el address bit se escribe en el T94ABE
Este es cargado en el adress bit del caracter transferido desde
U9T9/U; al registro de transmisin
T94ABE se limpia autom=ticamente
Deteccin a&tom*tica de errores
$rror de Framin+
8curre cuando se detecta un bit de detencin ceroD !uando se
utili*an dos bits de detencin, slo se comprueba el primer bitD
El error de framing o de marco se indica con Fe!
$rror de #aridad
!onsiste en 7ue la paridad detectada no concuerda con la debida, $
esto provoca 7ue el bit #$!
$rror de Re'alse
8curre cuando un car=cter est= cargado en el buffer de recepcin
UCR9/U; antes de 7ue el primer car=cter sea leidoD !uando
ocurre este error el bit ,$!-
$rror de )rea.
!onsiste en un perodo de 5# o m=s bits recibidos despues de un bit
de detencin faltanteD !uando se detecta la condicin de breaF el bit
)r.!D Una condicin de breaF puede tambi2n setear el flag de
interrupcinUR9:;<C
&
Usart Recie/e $na'le
Dia+rama de estados (ara 0a'ilitacin de Rece(cin
El UR9E9 es el encargado de %abilitar o des%abilitar la recepcin
de datos, los cuales se guardarn en U9R9/U; +relieve data buffer.
Usart Transmit $na'le
Dia+rama de estados (ara 0a'ilitacin de Transmisin
El UT9E9 es el encargado de %abilitar o des%abilitar la
transmisin de datosD Se inicia la T9 escribiendo datos en
U9T9/U; $ luego se mueve al registro de transmisin
+la ultima T9 se cumple aun7ue se pare a la mitad.
0ara transmitir al bufferG UT9E9"5 $ UT9:;<"5 +esta ultima
significa buffer listo.
EL bit T9E0T"5 indica 7ue la transmisin activa +la del momento.
se %a completadoD Esto evita errores en las nuevas transmisiones
'(aracter
recibido
'ondici!n de
)nterrupci!n
*+,Ex-0
*+,Ex-1
*+,Ex-1
*+,Ex-0
*+,Ex-1
*+,Ex-0
+ecepcion
#es(abilitada
Estado de
espera
.+ecepcion
#es(abilitada/
+eceptor
recibe el
c(aracter
)ncompleto
$it de inicio
in01lido
'(aracter
Transmitido
'ondici!n de
)nterrupci!n
*T,Ex-0
*T,Ex-1, 2e escribe
dato al buer de
transmisi!n
*T,Ex-1
*T,Ex-0
*T,Ex-1
*T,Ex-0 3 4ltima entrada del buer es transmitida
Transmisi!n
#es(abilitada
Estado de espera
.Transmisor
5abilitado/
Transmisi!n
"cti0a
)ncompleto
6o se escribe dato
en el buer de
transmisi!n
7
1ernaracion de fase de 'a&dios
La tasa de baudios maCima es 5/@ dela frecuencia del relo1 /R!LB
<racias a la presencia de divisores internos podemos %acer
frecuencias no estandari*adas
Seteo de la tasa de 'a&dios
Tasa de baudios " /R!LB/
donde A
n " numero de bits en el frame
m " # o 5
10
Interr&(ciones de la USART
'isponemos de un vector de interrupciones para transmisin $
otro para recepcin

Transmisin
!uando el buffer esta listo para transmitir el UT9:;<9"5
+interruption flag. !uando $a %a transmitido este se resetea
Rece(cion
!uando un caracter %a sido recibido $ cargado en el buffer,
UR9:;<9"5 +interruption flag.
Se resetea cuando el buffer %a sido ledo o la interrupcin %a sido
servida +UR9SE"#.
11

Você também pode gostar