Professional Documents
Culture Documents
En muchas ocasiones cuando trabajamos en nuestros proyectos será necesario tomar diferentes
tipos de señales físicas, convertirlas en tensiones eléctricas y luego digitalizarlas, para facilitar su
transmisión y procesamiento en una computadora.
La comunicación serial es mas lenta debido a que transmite bit por bit pero tiene la ventaja de
necesitar menos cantidad de hilos, y también puede extender la comunicación a mayor distancia,
por ejemplo en la norma RS232 a 15 mts, en la norma RS422/485 a 1200 mts y podemos utilizar
modem para extenderlo a cualquier parte del mundo.
MÓDULO USART
Modo Síncrono:
- Modo maestro, es donde el microcontrolador maestro genera la señal de reloj e inicia o finaliza
la comunicación.
- En modo esclavo, donde el microcontrolador esclavo recibe la señal de reloj y depende del
microcontrolador para recibir o enviar información.
Comunicación Síncrona
Modo Asíncrono:
- Se usan relojes tanto en el emisor como en el receptor.
- Ambos relojes deben estar sincronizados a la misma frecuencia.
- Cada trama de datos tiene un tamaño fijo y posee un bit inicial o de arranque y un bit final o de
parada.
- Comunicación en modo Full-Duplex.
El modo comúnmente utilizado para transmisión por el USART es el modo síncrono, ya que esta
nos permite comunicaciones a largas distancias. Los niveles de voltaje son empleados en estas
normas son diferentes a los utilizados por el PIC. Debido a esto se hace necesario utilizar drivers
externos de adaptación tales como el MAX232 de Dallas Semiconductor - Maxim.
Para empezar a transmitir datos el transmisor coloca en nivel bajo durante el tiempo de un bit,
este es conocido como bit de arranque, luego de eso transmite los bits de datos los cuales pueden
ser de 7 a 8, empezando por los bit menos significativos y terminando con los mas significativos,
por últimos los bits de parada que pueden ser 1 o 2, para finalizar la señal vuelve a un
estado lógico de alto. La siguiente imagen podemos observar los requisitos en los niveles lógicos
que se deben cumplir una transmisión serie según la norma RS232.
- Los datos son transmitidos con lógica negativa, esto quiere decir, un tensión positiva en la
conexión representa un '0' y una tensión negativa representa un un '1'.
- Un 'o' lógico una linea debe mantener un voltaje entre +3V y +15V.
- Un '1' lógico una linea debe mantener un voltaje entre -3V y -15V.
- Cuando el puerto no esta transmitiendo, mantiene el terminal de transmisión a '1' lógico a -12V.
- Se conoce como banda muerta a la región de transición donde los niveles lógicos no están
definidos. Esto quiere decir que estos valores pueden interpretarse ambiguamente como '0' y '1'.
USART en PIC C COMPILER
Primeramente debemos declarar la siguiente directiva y luego las funciones que encontramos
disponibles en CCS para utilizar el módulo USART se definen dentro del paréntesis, las cuales
describiremos posteriormente.
#USE RS232(Opciones)
Este ejemplo nos indica que la velocidad en baudios será de 9600(el dispositivo al que este
conectado debera tener la misma velocidad), no tendra paridad, el pin para recepción será el C6 y
el de transmisión el C7, bits de transmisión 8 y por ultimo la opción '"STREAM_PORT1" nos indica
que utilizaremos el identificador PORT1 para enviar una cadena de caracteres al hacer uso de la
función putc por ejemplo.