Modulo Usart
-
Upload
eduardo-garcia -
Category
Documents
-
view
237 -
download
1
Embed Size (px)
Transcript of Modulo Usart
-
7/27/2019 Modulo Usart
1/37
ModuloUSART
-
7/27/2019 Modulo Usart
2/37
El modulo USART tiene la funcin de
transmitir o recibir datos en serie y puedeser en modo sncrono o asncrono.
En el modo sncrono utiliza una seal de
reloj y una lnea de datos.
En el modo asncrono, no se enva laseal de reloj, sino que el emisor y
receptor tienen que estar trabajando a lamisma frecuencia.
-
7/27/2019 Modulo Usart
3/37
El modulo USART puede transmitir y recibir8 o 9 bits por transmisin y detectar
errores de transmisin. Tambin puedegenerar interrupciones cuando seproduce una recepcin de datos ocuando la transmisin ha sido
completada.
La transmisin en serie consiste en enviarlos dato bit a bit por medio de una sola
lnea en comn en periodos de tiempofijo, dando lugar a la velocidad detransmisin o bits por segundo llamadosbaudios.
-
7/27/2019 Modulo Usart
4/37
Cuando los bits que componen el dato a
enviar estn completos, son transferidos aun registro de corrimiento de latransmisin (TSR) y de ah son enviadospor el pin TX comenzando por el bit de
start y terminando con el bit de stop
-
7/27/2019 Modulo Usart
5/37
Despus de la deteccin del bit de start,los 8 bits entrantes por el pin RX sondesplazados por el registro de corrimientode entrada (RSR) uno a uno. Despus deque haya entrado el ultimo bit y el bit destop ha sido detectado, el dato es
enviado al registro RCREG, si esta vaco.Este registro funciona como una pila deltipo FIFO (primero en entrar primero ensalir)
-
7/27/2019 Modulo Usart
6/37
Modo Sncrono En este modo, se permite la transmisin
continua de datos y no existe un lmite de
tamao, la transmisin es de modo semi-duplex por lo que se enva y recibe por unsolo canal pero no de manerasimultanea.
En este modo se puede transmitir de dosformas:
-
7/27/2019 Modulo Usart
7/37
Modo SncronoModo Maestro
Donde el pic maestro genera una seal
de reloj e inicia o finaliza lacomunicacin.
Modo Esclavo
Donde el pic esclavo recibe la seal dereloj y depende del microcontroladormaestro para recibir o enviar lainformacin
-
7/27/2019 Modulo Usart
8/37
Modo Asncrono En este modo, el emisor y el receptor trabajan
con la misma frecuencia y separada, sta se
programa antes de la transmisin alconfigurar la velocidad, mientras que lasincronizacin se realiza durante latransmisin. Cada dato contiene un tamaofijo y posee un bit inicial (start) y otro de paro
(stop). Este modo de trabajo es del tipo full-duplex, donde se utiliza un pin para latransmisin TX y otro para recepcin RX.
-
7/27/2019 Modulo Usart
9/37
Registros del USART Los registros a nivel ensamblador que
componen al modulo USART son:
SPBRG: Generador de Baudios TXSTA: Estado de transmisin y control RCSTA: Estado de recepcin y control TXREG: Registro de datos de transmisin
RCREG: Registro de datos de recepcin PIR1: Flag de interrupcin PIE1: Habilitacin de la interrupcin
-
7/27/2019 Modulo Usart
10/37
Registro TXSTA
Bit 7: Seleccin de la fuente de reloj En modo asncrono no funciona
Modo sncrono
1 = Modo maestro
0 = Modo esclavo
-
7/27/2019 Modulo Usart
11/37
Bit 6: Habilitacin de transmisin de 9 bits
1 = Transmisin de 9 bits 0 = Transmisin de 8 bits
Bit 5: Habilitacin de la transmisin 1 = Transmisin habilitada
0 = Transmisin deshabilitada
Bit4: Seleccin del modo de trabajo 1 = Transmisin Sncrona
0 = Transmisin Asncrona
Bit 3: No implementado (0)
-
7/27/2019 Modulo Usart
12/37
Bit 2: Seleccin de baudios
Modo asncrono 1 = Alta velocidad
0 = Baja velocidad
No se utiliza en modo sncrono
Bit 1: Estado del TSR 1 = TSR lleno
0 = TSR vaco
Bit 0: 9 bit o bit de paridad
-
7/27/2019 Modulo Usart
13/37
Registro RCSTA
Bit 7: Habilitacin del puerto serie 1 = Habilitado (pines RX y TX del pic)
0 = Deshabilitado
Bit 6: Habilitacin de recepcin de 9 bits 1 = Recepcin de 9 bits
0 = Recepcin de 8 bits
-
7/27/2019 Modulo Usart
14/37
Bit 5: Habilitacin de recepcin sncronaModo Sncrono
1 = Habilitada
0 = Deshabilitada
Bit 4: Habilitacin de recepcin continuaModo Asncrono
1 = Habiltada 0 = Deshabilitada
Modo Sncrono
1 = Habilitada
0 = Deshabilitada
Bit 3: No implementado (0)
-
7/27/2019 Modulo Usart
15/37
Bit 2: Error de dato 1 = Error
0 = No error
Bit 1: Error de velocidad 1 = Error
0 = No error
Bit 0: 9 bit transmitido
-
7/27/2019 Modulo Usart
16/37
Registro SPBRG La velocidad de transmisin es
controlada en baudios por este registro
-
7/27/2019 Modulo Usart
17/37
Modulo USART en C
La instruccin para utilizar el modulo es lasiguiente:
#use rs232(opciones)
BAUD = X Velocidad en baudios
XMIT = PIN Pin de TransmisinRCV = PIN Pin de Recepcin
PARITY = X Bit de paridad x puede ser N
-
7/27/2019 Modulo Usart
18/37
Para el envo se utilizan las siguientesinstrucciones:
putc(variable);
putchar(variable);
puts(variable);
printf(variable);
Donde las variables pueden ser cadenas,variables o matrices
-
7/27/2019 Modulo Usart
19/37
Para le recepcin de datos se utilizan lassiguientes funciones:
value = getc();
value = getch();
value = getchar();
Donde value es un carcter de 8 bits
-
7/27/2019 Modulo Usart
20/37
Ejemplo de comunicacinentre 2 pics
Enviar un contador de 0 a 10 en modoasncrono entre 2 pics y visualizar los datos
por medio de una LCD
-
7/27/2019 Modulo Usart
21/37
#include #FUSES XT,NOWDT #use delay(clock=4000000) #use rs232(baud=9600, xmit=pin_c6, rcv=pin_c7) #include
void main() {
int valor;
lcd_init(); while(1){ for (valor=0;valor
-
7/27/2019 Modulo Usart
22/37
#include #FUSES XT,NOWDT #use delay(clock=4000000) #use rs232(baud=9600, xmit=pin_c6, rcv=pin_c7, bits=8) #include
int valor;
#int_RDA RDA_isr() { valor=GETC(); }
void main() {
lcd_init(); enable_interrupts(INT_RDA); enable_interrupts(GLOBAL);
for (;;) {
lcd_gotoxy(1,1); printf(lcd_putc,"recibiendo=%1D",valor); } }
-
7/27/2019 Modulo Usart
23/37
Practica 1Mediante un teclado matricial de 4x3
enviar un dato por un pic 16F877A y
visualizarlo en un display de 7 segmentosconectado a otro pic 16F6877A
-
7/27/2019 Modulo Usart
24/37
Practica 2 Realice un programa que permita leer el
convertidor ADC en un pic 16F877A con
resolucin de 8 bits y enve el dato a otropic 16F877A y muestre la salida en bits pormedio de una barra de leds.
-
7/27/2019 Modulo Usart
25/37
Comunicacin InalmbricaCuando se transmite de manera
inalmbrica, el medio de transmisin en
es el aire, existen mdulos deradiofrecuencia o RF que son muyaccesibles y permiten experimentar conla comunicacin inalmbrica de manera
sencilla.
-
7/27/2019 Modulo Usart
26/37
Transmisor de RF TWS-434 Este transmisor es ideal para aplicaciones
de control remoto, seguridad ytransferencia peridica de datos,adems de ser un chip de bajo coste
permite transmisiones con un alcance deaproximadamente 100 metros
-
7/27/2019 Modulo Usart
27/37
Tiene las siguientes caractersticas:
Frecuencia de operacin: 434.94 MHz
Modulacin AM
Velocidad mxima de 3000 bps
Voltaje de alimentacin de 2
5.2 VCorriente de 1.64-19.4 mA
-
7/27/2019 Modulo Usart
28/37
Diagrama de pines
PIN 1: Tierra (GND)
PIN 2: Entrada de dato (DIN)
PIN 3: Alimentacin (VCC)
PIN 4: Salida a antena (ANT)
-
7/27/2019 Modulo Usart
29/37
Receptor RWS-434 Tiene las siguientes caractersticas:
Frecuencia de operacin: 434.94 MHz
Modulacin AM
Ancho de canal: 500KHz Velocidad mxima de 3000 bps
Voltaje de alimentacin de 4.5 5.5 VCD
Corriente de 4.5 mA
-
7/27/2019 Modulo Usart
30/37
Diagrama de pines PIN 1: Tierra (GND)
PIN 2: Salida de datos digitales (DDOUT)
PIN 3: Salida lineal (LOUT) PIN 4: Alimentacin (VCC)
PIN 5: Alimentacin (VCC)
PIN 6: Tierra (GND)
PIN 7: Tierra (GND) PIN 8: Salida a antena
-
7/27/2019 Modulo Usart
31/37
Las especificaciones para estos mdulosrequiere una antena del tipo monopolar
que tenga una longitud aprox de 17.5 cm
-
7/27/2019 Modulo Usart
32/37
HT-640 y HT-648L Este codificador se encarga de leer 8 bits de
datos que son convertidos a un dato en serie,
esta salida tiene que ser recuperada por undecodificador (HT-648L) conectado a unreceptor.
Alimentacin: 2.4 12 VCD
8 bits de datos 10 bits de direccin
CMOS
-
7/27/2019 Modulo Usart
33/37
Codificador HT-640GND: Tierra
VCC: Alimentacin
DOUT: Salida serial a transmitir TE: Habilitador de transmisin
D0-D7: Pines de entrada de dato
A0-A9: Pines de entrada de direccin
OSC1: Entrada del osciladorOSC2: Salida del oscilador
-
7/27/2019 Modulo Usart
34/37
Decodificador HT-648LGND: Tierra
VCC: Alimentacin
DIN: Entrada de datos recibidos VT: Transmisin vlida
D0-D7: Pines de entrada de dato
A0-A9: Pines de direccin
OSC1: Entrada de osciladorOSC2: Salida de oscilador
-
7/27/2019 Modulo Usart
35/37
PLUS Realice el problema de la practica 2,
utilizando los modulos de radiofrecuencia
-
7/27/2019 Modulo Usart
36/37
-
7/27/2019 Modulo Usart
37/37