Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Laboratorio 1 RX TX I 2023
Laboratorio 1 RX TX I 2023
LABORATORIO N° 1
PROGRAMACION DEL PIC16F877A (Rx/Tx)
MODULO USART (RS232)
1. OBJETIVO.
2. FUNDAMENTO TEORICO.
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 más 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.
1
I.T.S.O. “RVDO. PADRE SEBASTIAN OBERMAIER” LABORATORIO MICROCONTROLADORES II
- 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.
Simple placa conversora de série a USB con el conocido chip FT232 de FTD, junto con dos diodos led
indicadores de actividad.
Los pines disponibles en placa son GND, 5V, RX, TX y DTR
Se puede utilizar para alimentar y programar directamente una placa Arduino Pro (ver productos
relacionados) o cualquier otro dispositivo que tenga un puerto UART TTL.
Permite programar las placas oficiales y clonadas Arduino funcionando a 5V.
NOTA: Éste es el nuevo modelo que viene por defecto configurado para 5V pero dispone de un jumper
en la parte posterior y se puede utilizar para 3,3V cortando la pequeña pista y soldando un pequeño
punto de estaño en la parte serigrafiada como 3,3V
2
I.T.S.O. “RVDO. PADRE SEBASTIAN OBERMAIER” LABORATORIO MICROCONTROLADORES II
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 más 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.
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)
3
I.T.S.O. “RVDO. PADRE SEBASTIAN OBERMAIER” LABORATORIO MICROCONTROLADORES II
Ejemplo:
#use rs232(baud=9600,xmit=pin_c6,rcv=pin_c7,parity=N,bits=8)
• putc(data)
• putchar(data)
• puts(string)
string es una cadena de caracteres constante o una matriz de caracteres terminada con un
cero
• printf(fname,cstring,values)
fname: funcion a utilizar para escribir la cadena indicada, por defecto se utiliza putc()
cstring: cadena de caracteres o matriz de caracteres terminada en 0.
values: valores a indicar en la cadena, se debe indicar %nt (revisar el post de uso del LCD)
• value=getc()
• value=getch()
• value=getchar()
value es un carácter de 8 bits. Espera recibir un carácter por la línea RS232 y devuelve su
valor.
• valor=kbhit()
3. PREINFORME.
5. LABORATORIO
6. INFORME (*)
7. CUESTIONARIO
8. BIBLIOGRAFÍA:
AUTOR (APELLIDO PAT. NOMBRES) TÍTULO DEL LIBRO, REVISTA O ARTÍCULO Año de publicación y edición
ANGULO, MARIA USATEGUI Microcontroladores PIC Diseño practico de Aplicaciones Segunda edición
5
I.T.S.O. “RVDO. PADRE SEBASTIAN OBERMAIER” LABORATORIO MICROCONTROLADORES II
6
I.T.S.O. “RVDO. PADRE SEBASTIAN OBERMAIER” LABORATORIO MICROCONTROLADORES II
7
I.T.S.O. “RVDO. PADRE SEBASTIAN OBERMAIER” LABORATORIO MICROCONTROLADORES II
USART_Rx - Tx LCD