Está en la página 1de 9

Instituto politécnico Nacional

ESIME Culhuacán

“comunicación serial 8051 URT”

EQUIPO 10
Docente.
Beltrán Navarro Orlando
Alumnos.
Ayala Pérez Isaac Tonatiuh
Navarro Arana Hazel
Reyes Martínez Mónica Daniela.
INTRODUCCIÓN
LA COMUNICACIÓN SERIE

se utiliza para que un sistema mande en serie los bits que representan un carácter
para enviarlo por una línea y reensamblarlo en forma paralelo en el extremo
receptor. La conservación paralelo- serie y serie- paralelo se hace utilizando registros
de corrimiento. En la mayoría de las comunicaciones es preferible usar la serie que la
paralelo.
La operación asincrónica se usa cuando la eficiencia en la transmisión no es muy
importante y la verificación de errores se hace por humanos. En la comunicación de
datos, el uso del modo asincrónico contra el asincrónico es basado en la economía
y tradición al igual que en la tecnología.
En un dispositivo asincrónico, el dispositivo transmisor enviara una señal conocida
como marca (usualmente un 1 lógico) mientras no tenga un dato que transmitir.
Para indicar que comenzara a transmitir un dato valido, el transmisor envía un bit 0.
el cual se conoce como bit de arranque. Después del bit de arranque el transmisor
envía en dato compuesto por una cantidad predefinida de bits (de 5 a 8 bits)
Para indicar que termino la transmisión de un dato, el transmisor envía una señal
conocida como señal de para, esta señal puede ser 1,1.5 o 2 bits en nivel alto.

Ejemplo de una transmisión asincrónica

Usar un solo bit de arranque en 0 es lo más aceptado en los sistemas de


microcomputadoras.
MODO 0: El dato serie entra y sale por R x D. La salida T x D contiene la
señal de reloj. 8 bits son transmitidos o recibidos siempre
comenzando por el menos significativo y al último el más
significativo; El dato se envía con una velocidad fijada por 1/
12 de la frecuencia de oscilación.
MODO 1 : 10 bits son transmitidos por T x D o son recibidos por R x D. Un bit
de inicio en nivel lógico 0 (bajo), 8 bits de datos (comenzando
por el menos significativo) y un bit de parada en nivel 1 lógico
(alto). En el receptor el bit de parada se carga en el RB8. La
velocidad es variable.
MODO 2: 11 bits son transmitidos por Tx D o son recibidos por Rx D un bit
de inicio en nivel lógico 0 (bajo), 8 bits de datos (comenzando
por el menos significativo), un noveno bit de datos
programables y un bit de parada de nivel 1 lógico (alta). El
noveno bit en la transmisión (TB8 DEL SCON) se le puede
asignar cualquier valor de 0 o 1 o por ejemplo el bit de paridad
(P del PSW). En el receptor el noveno bit va al RB8 del SCON
mientras que el bit de parada es ignorado. La velocidad es
programable a 1/ 32 o 1/ 64 de la frecuencia del oscilador.
MODO 3: 11 bits son transmitidos por Tx D o recibidos por RdC: un bit de
inicio y nivel lógico (bajo), 8 bits de datos (comenzando por el
menos significativo) un bit programable y un bit de parada en
nivel 1 lógico (alta). De hecho este modo es igual al modo 2,
solo que la velocidad es variable

Comunicación entre varios microcontroladores


Los modos 2 y 3 tienen una característica especial para comunicarse entre varios micros. En
estos modos se reciben daros de 9 bits y el noveno bit va a RB8.Enseguida viene el bit de
parada, el p parada, el puerto puede ser puerto puede ser programado tal que programado
tal que cuando llegue un cuando llegue un bit de parada, bit de parada, la interrupción la
interrupción del puerto serie sea activada solo si RB8 = 1. Esta característica es habilitada
poniendo en 1 el bit SM2 en SCON. Una manera de usar esta característica se muestra a
continuación. Cuando el procesador maestro Cuando el procesador maestro quiere
transmitir requiere transmitir un bloque de datos a bloque de datos a uno de varios
esclavos, primero envía un byte de dirección que identifica el esclavo destino. Un byte de
dirección se diferencia de un byte de datos en que el de dirección tiene su 9º bit en 1 y el de
dato lo tiene en 0. Cuando SM2 =1, ninguno esclavo será interrumpido por un byte de datos.

Un byte de dirección sin embargo interrumpirá a todos los esclavos para que puedan
examinar si son seleccionados o no. El esclavo diseccionado borrara su bit SM2 y se prepara
para recibir los datos que le enviara el maestro a Los esclavos que no fueron seleccionados
dejan su bit SM2 en 1 tal que los datos serán ignorados por ello.

Existe un protocolo el cual se conoce como:

Protocolo para comunicación multiprocesador

• Esclavo -Configurar el puerto serie para interrumpir al CPU si recibe un 9º BIT igual a 1
• Maestro -Transmitir el formato conteniendo la dirección en los primeros 8 bits y poner
en 1 el 9º.
• Esclavos-El puerto serie interrumpe al CPU cuando CPU cuando se recibe un formato
de dirección. El programa de servicio a la interrupción compara la dirección recibida
a la dirección propia. El esclavo que tenga la dirección recibida, reconfigura su puerto
serie para interrumpir al CPU en cada transmisión.
• Maestro-Transmite los formatos de control y datos (estos serán aceptados solo por el
procesador que reconoció su dirección. Poniendo SM2 en 0).

El bit SM2 no tiene efecto en modo 0 y en modo 1 se puede usar para comprobar la validez
del bit de parada. bit de parada. En la recepción modo En la recepción modo 1 si SM2= 1 1
si SM2= 1, la interrupción de recepción, la interrupción de recepción será activada solo será
activada solo si un bit de parada valido se recibe.
DESARROLLO
Reto: cambiar a modo registro de corrimiento (modo 0)

El primer paso es programar el puerto serial, limpiando el modo 0 y se habilita o se


pasa el puerto al modo 1, como se muestran en los primeros renglones:

En la siguiente parte se programa la velocidad de en la que se va a transferir la


información, en este caso se da un multiplicador para la velocidad:

Después pasamos a la parte de la programación del Timer, en este caso usamos el


timer 1 que sirve como un contador o temporizador dependiendo la necesidad de
uno, en este programa lo usaremos como contador para 13 eventos en 1
microsegundo:
En la siguiente parte escribiremos y colocamos en la RAM un mensaje, el cual será
para enviar y recibir por medio de la comunicaron en serie:

En la última línea de la anterior sección se pone el carácter 0 o NULL para finalizar la


trasmisión de datos y aquí termina esta función.
Ahora se crea otra función llamada CICLO, vista anteriormente en otras prácticas, la
primera línea es la dirección donde se enviará los datos, pero si los datos cuentan con
un 0 finaliza la comunicación.

Si la comunicación aun continua se enviara el acarreo al bit 7 del acumulador,


después se coloca el dato para ser enviado por el SBUF. El SBUF es un registro de 8 bits,
el cual se usa solo en la comunicación en serie, donde los datos de byte se envíen
por la línea TxD.

Después se Incrementa el R0 para poder seleccionar el siguiente dato, se espera a


que la transmisión finalice por el Timer 1 el cual se borrara para que se haga una
nueva transmisión. Para finalizar se repite la función CLICO.

La última función llamada FIN termina el programa, crea un ciclo donde el programa
salta al inicio y el programa se repite continuamente.

Se puede corroborar el dato enviado en la parte de abajo del simulador:

Quedando todo a su vez de la siguiente manera

Programa original
En el programa original se tenia seleccionado el modo 1 con el comando CLR SM0 ;
Se programa el puerto serial en modo 1

SETB SM1
Nosotros seleccionamos el modo ,
con el comando SETB SM0 y SETB SM1 Y configurando el conteo de eventos.

Finalmente se visualiza el mensaje sin ningún inconveniente.


CONCLUSIONES
Ayala Pérez Isaac Tonatiuh:
Poniendo aprueba lo aprendido en clases creamos un programa el cual nos muestra
la interfase de comunicación seria, donde se envían datos a través del RX y son
recibidos y escritos en el TX en una UART, para ello se uso el registro SBUF encargado
de enviar los datos en las terminales TXD y RX. No se tiene que olvidar la programación
de los registro de control de los modos 0 y 1, los cuales habilitan los puertos en serie.
Hazel Navarro Arana
en esta practica pudimos observar a detalle mas características del microprocesador
8051, al poder experimentar con los puertos de los modo 0 y modo 2, como se
transmite información y el modo de recibirla
Mónica Daniela Reyes Martínez
La realización de esta práctica nos ayudó principalmente a comprender los
mecanismos que suceden dentro del puerto serial. permitió que pudiéramos
combinar el programa proporcionado con segmentos de código de programas
anteriores, que a su vez permitió la reutilización de código y nos hizo comprender
más a profundidad la lógica del programa base

También podría gustarte