Está en la página 1de 5

Fundación Universitaria

de San Gil “UNISANGIL”

Ing. Alexander Medina


[INTERFAZ DE
COMUNICACIÓN SERIAL
(SCI)]
Existen muchas aplicaciones donde varios dispositivos son conectados por medio de interfaces USB,
SPI, IIC, CAN, pero, por su simplicidad y fácil entendimiento al conectar dos dispositivos, la interface
de comunicación serial SCI ocupara la atención en la presente guía de estudio.
Interfaz de comunicación serial (SCI)

Resumen:

En muchas aplicaciones, la alta velocidad de entrada y salida de los datos digitales que ofrece una
interfaz paralela no es necesaria. En tal caso una interfaz de comunicación serial puede llenar los
requerimientos para una determinada aplicación. Existe una variedad de protocolos e interfaces
seriales, entre ellos, Interfaz de comunicación serial asíncrona SCI1, interfaz periférica síncrona SPI2, bus
serial universal USB3, protocolo de comunicaciones CAN4, bus de comunicación en serie IIC5.

Existen muchas aplicaciones donde varios dispositivos son conectados por medio de interfaces USB, SPI,
IIC, CAN, pero, por su simplicidad y fácil entendimiento al conectar dos dispositivos, la interface de
comunicación serial SCI ocupara la atención en la presente guía de estudio.

Objetivo de aprendizaje
2
Al completar la siguiente guía el estudiante estará en la capacidad de entender el fundamento y usar el
puerto SCI para interconectar dos microcontroladores o con un puerto de comunicaciones de un PC.

Recursos e información adicional

1. MC9S08JM60  Technical Data Sheet for MC9S08JM60 and MC9S08JM32, Rev 3, freescale
semiconductor, Inc, 1/2009.

Fundamentos de la comunicación serial asíncrona

En la figura 1, se puede ver como dos módulos SCI, permiten el intercambio de datos entre dos
microcontroladores, el procedimiento es sencillo, el microcontrolador #1 transfiere por medio de su bus
interno un dato a un registro de desplazamiento, luego transfiere los datos por TxD hacia el
microcontrolador #2 que los recibe por RxD, así de forma viceversa. Es importante destacar, que los
registros de desplazamiento tienen una interfaz paralela-serie, o serie-paralelo, ya sea de transmisión o
de recepción.

Figura 1.

Del anterior esquema nacen una serie de preguntas,

1
Asynchronous serial comunications interface
2
Synchoronous peripherical Interface
3
Serial Universal Bus
4
Controller area Network
5
Inter-Integraded Circuit

2 Ing. Alexander Medina. © 2010 | Fundación Universitaria de San Gil “UNISANGIL”


Interfaz de comunicación serial (SCI)

- ¿A qué velocidad se desplaza los bits de datos dentro y fuera del SCI?

La figura 1 muestra que cada SCI utiliza un reloj para desplazar los datos dentro del
registro de desplazamiento. Es evidente que los relojes en ambos
microcontroladores debe estar a la misma frecuencia y por lo tanto los programadores de
cada sistema debe saber qué tipo de datos se va a utilizar. La
velocidad a la que se envían bits de datos se llama la velocidad de transmisión. Valores
típicos en baudios para comunicaciones serie son 110, 150, 300, 600, 1200, 2400, 4800,
9600, 19200, 38400, 56800.

- ¿Cuántos bits se envían a la vez?


3
En realidad depende del sistema, quedando la posibilidad de diseñar hardware que
transmita un tamaño de bits que se consideren necesarios, en los sistemas de
comunicaciones serie asíncrono el valor típico es enviar ocho bits (1 byte) a la vez. El SCI
freescale, permite enviar nueve bits para dar cabida a un bit de paridad.

- ¿En qué orden son los bits transmitidos?

Cualquier sistema puede elegir enviar el bit más o el menos significativo de primero, pero
por convenio la comunicación asíncrona serie envía el bit menos significativo primero.

- ¿Qué se entiende por comunicación asincrónica?

Cada vez que hay un reloj envuelto en un proceso, se entiende que el cambio de los datos
son controlados por este, en ese orden de ideas debe significar un proceso sincrónico.
Para las comunicaciones asíncronas serie, los bytes de datos, o caracteres, se pueden
enviar en cualquier tiempo, y así el momento de la llegada de los bytes de datos no está
controlada por el reloj. Por ello, el protocolo se llama asincrónico.
Sin embargo, dentro de cada byte de datos, los cambios son controlados por el reloj y por
lo tanto están sincronizados con el reloj.

- ¿Cómo el receptor sabe cuándo debe iniciar el reloj?

Si los caracteres se pueden enviar a cualquier hora (asincrónica), y si los bits dentro del
registro se transmiten a un ritmo determinado por el reloj, el receptor debe de alguna
manera sincronizarse con los datos de entrada para que sea capaz de desplazar los bits en
forma adecuada.

La figura 2 muestra cómo cada byte de datos se envía en serie. Cuando el SCI no está
enviando datos, el nivel lógico de salida se encuentra en un uno. La transmisión se inicia
cuando cambia el nivel de uno a cero. Esto se conoce como el bit de inicio y es detectado
por el receptor, que espera medio ciclo después de detectado el bit de inicio y empieza a
desplazar los datos dentro del registro.

Después que todos los bits se han enviado, la transmisión de datos concluye con un bit en
alto denominado bit de parada. Así, diez bit son usados para enviar un dato de 8-bit.

3 Ing. Alexander Medina. © 2010 | Fundación Universitaria de San Gil “UNISANGIL”


Interfaz de comunicación serial (SCI)

Figura 2

4
Después de detectar el bit de inicio, ¿Cuando el receptor chequea los bits de datos?

La Figura 1 y Figura 2 muestran los bits son controlados por el reloj en el emisor y el
receptor. El receptor detecta flanco descendente del bit de inicio y luego espera medio
ciclo para verificar el nivel lógico. Para poder hacer esto, el
recibir datos del registro del reloj es generalmente un múltiplo, por ejemplo 64 veces, el
reloj base. Aunque, lo mejor sería los relojes en la transmisión y recepción sean
exactamente iguales. El sistema permite diferencia en las frecuencias de reloj para seguir
recibiendo los datos correctamente.

¿Hay algún código especial de datos utilizado para los datos?

El SCI puede enviar cualquier dato binario. El no le importa cómo se codifica la


información. A menudo, sin embargo, el SCI se utiliza en una aplicación
donde los bytes de datos están codificados como un carácter escrito en un teclado o en
una pantalla. En este caso, el código estándar utilizado es (ASCII). El código tiene siete bits
para 96 caracteres imprimibles y 32 caracteres de control, estos se pueden enviar por SCI
es un sistema de envío de ocho bits por byte de datos. El octavo bit es un bit de paridad a
menudo para ayudar a detectar los posibles errores en la transmisión de datos.

Actividades de exploración.

1. Leer el capítulo de interfaz de comunicación serial de la hoja de datos o el manual de


referencia del microcontrolador a usar 6.
2. ¿Cuáles son los pines del puerto usado para la transmisión TxD y recepción RxD?
3. ¿Cuáles registros son usados para configurar la tasa de baudios de su
microcontrolador?
4. ¿Cuántos bit de datos pueden ser enviados por la interface serial del microcontrolador
Flexis JM60?
5. ¿Si usted planea comunicar dos microcontroladores por medio SCI, que parámetros en
la operación debe ser definidos igual en los dos sistemas?

6. ¿Cuál valor de 16-bit debe ser escrito en SCI1BDH: SCI1BDL para operar a 9600 baudios
suponiendo que el reloj de bus es 24 MHz?

6
Disponible en www.freescale.com
4 Ing. Alexander Medina. © 2010 | Fundación Universitaria de San Gil “UNISANGIL”
Interfaz de comunicación serial (SCI)

7. El registro de control SCIxC1 y SCIxC2, son registro de 8 bits, Elabore una tabla con el
nombre de la función de cada uno de los bit.

8. Cuantas y cuáles son las fuentes de interrupción,

Actividades complementarias.

Escriba una función para inicializar el SCI para funcionar a una velocidad de transmisión
controlada por un valor que se le pasa como parámetro. Suponga que el SCI1 debe funcionar
con el bit de inicio 1, 8 bits de datos, y 1 bit 5de parada.

1. ¿Qué información se va a pasar? ¿Va a pasar la velocidad de transmisión real como un


número, digamos 9600, o va a pasar el valor real del registro que maneja la velocidad
de transmisión?
2. ¿Cuáles son las ventajas y desventajas o limitaciones de pasar la velocidad de
transmisión en comparación con pasar el valor real necesarios para inicializar los
registros de velocidad de transmisión?

A menudo, cuando se está enviando caracteres a una pantalla o un computador, se envía por
medio de cadenas. Diseñar y escribir una función SCI que envía una cadena de caracteres.

Ponga en práctica lo aprendido y elabore un programa que establezca la comunicación entre el


microcontrolador y el computador, se debe visualizar los caracteres enviados del PC en la LCD,
y en el hyperterminal lo enviado por el microcontrolador.

Reporte final.

En parejas se debe preparar un informe documentando todo lo realizado con los módulos SCI.
Debe incluir la documentación de todas las rutinas para la comunicación serie, incluir listas de
código fuente de todos los módulos.

Criterios de evaluación

- Entrega oportuna.
- Elaboración del informe.
- Complejidad de la práctica.
- Originalidad en la solución del problema.

5 Ing. Alexander Medina. © 2010 | Fundación Universitaria de San Gil “UNISANGIL”

También podría gustarte