SlideShare una empresa de Scribd logo
CIRCUITOS DIGITALES II
EUSART EN EL PIC16F887
Mg. Ing. FERNANDO APARICIO URBANO MOLANO
2
INTERFAZ DE COMUNICACIÓN TTL/RSINTERFAZ DE COMUNICACIÓN TTL/RS--232232
El microcontrolador PIC16F88X posee un módulo USART, usando
la norma RS-232/RS-485, sin embargo es necesario usar un
módulo adicional para convertir las señales que maneja, a niveles
TTL (0 – 5V) a niveles adecuados para que haya una correcta
comunicación con el computador (PC). Dicha labor la realiza el
circuito integrado MAX232 de Maxim Semiconductor. Este
integrado se destaca por que maneja los niveles de voltaje
positivos y negativos propios de la interface RS-232, a pesar de
que se alimenta con solo una fuente sencilla de 5V.
3
COMUNICACIÓN SERIE ASÍNCRONACOMUNICACIÓN SERIE ASÍNCRONA
El EUSART (Enhanced Universal Synchronous Asynchronous
Receiver Transmitter), o conocido como SCI (Serial Comunications
Interface), puede ser configurado como un sistema full duplex o
bidireccional asíncrono, adaptándose a multitud de periféricos y
dispositivos que transfieren información de ésta forma, tales
como el monitor o el computador.
EUSART puede configurarse de tres formas:
• Asíncrona (Full duplex, bidireccional).
• Síncrona-Maestro (Half duplex, unidireccional).
• Síncrona-Esclavo (Half duplex, unidireccional).
4
COMUNICACIÓN SERIE ASÍNCRONA (2)COMUNICACIÓN SERIE ASÍNCRONA (2)
Vamos a estudiar únicamente el modo asíncrono,
donde las transferencias de información se realizan
sobre dos líneas TX (transmisión) y RX (recepción),
saliendo y entrando los bits por dichas líneas al ritmo
de una frecuencia controlada internamente por el
USART. Las líneas de comunicación son los dos bits de
más peso del Puerto C: RC6/TX/CK y RC7/RX/DT, donde
el bit SPEN (RCSTA<7>) y los bits TRISC<7:6> tienen que
activarse mediante un 1 con el fin activar dichos pines.
5
REGISTRO TXSTA: Estado de la transmisión y RegistroREGISTRO TXSTA: Estado de la transmisión y Registro
dede control (1)control (1)
6
REGISTRO TXSTA: Estado de la transmisión y RegistroREGISTRO TXSTA: Estado de la transmisión y Registro
dede control (2)control (2)
7
REGISTRO RCSTA: Estado de la recepción y RegistroREGISTRO RCSTA: Estado de la recepción y Registro
dede control (1)control (1)
8
REGISTRO RCSTA: Estado de la recepción y RegistroREGISTRO RCSTA: Estado de la recepción y Registro
dede control (2)control (2)
9
REGISTROREGISTRO BAUDCTL: REG. GENERACIÓN BAUDIOSBAUDCTL: REG. GENERACIÓN BAUDIOS
10
REGISTROREGISTRO BAUDCTL: REG. GENERACIÓN BAUDIOSBAUDCTL: REG. GENERACIÓN BAUDIOS
11
GENERADOR DE BAUDIOSGENERADOR DE BAUDIOS
En el protocolo asíncrono RS-232-C, la frecuencia en baudios (bits
por segundo) a la que se realiza la transferencia se debe efectuar
a un valor normalizado: 2400, 4800, 9600, 19200, etc. Para
generar esta frecuencia en Baudios, BRGH y BRG16, cuyo valor es
controlado por el contenido grabado en el registro SPBRGH y
SPBRG.
Además del valor X cargado en el registro SPBRG, la frecuencia en
baudios del generador depende del bit BRGH del registro
TXSTA<2> y BRG16 en el registro BAUDCTL. En caso de que BRGH
sea 0 se trabaja en baja velocidad y si BRGH = 1 se trabaja en alta
velocidad.; y BRG16 = 1 para usar los 16 bits y reducir el error en
la generación.
12
GENERADOR DE BAUDIOS (2)GENERADOR DE BAUDIOS (2)
  64 1
OSCF
X

 
Frecuencia en Baudios
X es el valor cargado en el registro SPBRGH:SPBRG
Despejando X:
1
. 64
OSCF
X
Frec Baudios
 

13
GENERADOR DE BAUDIOS (3)GENERADOR DE BAUDIOS (3)
Si en un PIC16F877A funcionando con una 4OSCF MHz
Se desea trabajar con el USART en modo asíncrono y alta
velocidad, con una frecuencia de 9600 baudios, calcular el valor X
que hay que cargar en el registro SPBRG y el error que se origina.
BRGH = 1 y BRG16 = 0
4000000
1
9600 16
X  

25X 
14
GENERADOR DE BAUDIOS (4)GENERADOR DE BAUDIOS (4)
Si se carga el registro SPBRG con 25 la frecuencia real de trabajo
será:
 4000000/ 16 (25 1) 9615Frecuencia     baudios
El error que se genera cargando 25 en el SPBRG será:
9615 9600
100% 0.16%
9600
Error
 
   
 
15
TRANSMISOR ASÍNCRONOTRANSMISOR ASÍNCRONO
Pasos a seguir para implementar una transmisión en el USART:
1. Configurar las líneas RC6/TX/CK como salida y RC7/RX/DT como entrada.
2. Poner SYNC = 0 y SPEN = 1 para activar el EUSART en modo asíncrono.
3. Si se desea trabajar con interrupción, poner TXIE = 1, además de habilitar
las interrupciones en general.
4. Si el dato consta de 9 bits, en lugar de los 8 típicos, poner el bit TX9 = 1. El
noveno bit se colocará en TX9D (TXSTA).
5. Se carga el valor X adecuado en el registro SPBRG, para producir la
frecuencia de trabajo deseada. Hay que controlar el bit BRGH y BRG16.
6. Activar la transmisión con TXEN = 1. El bit TXIF tendrá valor 1, ya que
TXREG se encuentra vacío.
7. Cargar en TXREG el dato a transmitir. Comienza la transmisión.
16
RECEPTOR ASÍNCRONORECEPTOR ASÍNCRONO
Pasos a seguir para el modo recepción:
1. Se carga con el valor X al registro SPBRG para trabajar con la frecuencia deseada, controlando además el
valor de BRGH y BRG16.
2. Se habilita el USART en modo asíncrono con SPEN = 1 y SYNC = 0.
3. Si se desea trabajar con interrupción con la llegada del bit de STOP (parada), se pone RCIE = 1, además
de habilitar las interrupciones en general.
4. Poner RX9 = 1 para permitir la recepción del bit 9 bits.
5. Se habilita la recepción poniendo CREN = 1.
6. Al completarse la recepción RCIF se pondrá a 1 y se produce una interrupción si se había permitido
7. Se lee el registro RCSTA y se averigüa si se ha producido algún error.
8. Leer los 8 bits del registro RCREG para determinar si el dispositivo ha sido direccionado.
9. Si se ha producido algún error, poner CREN = 0.

Más contenido relacionado

La actualidad más candente

Lecture 5 formateo de señales analógicas
Lecture 5 formateo de señales analógicasLecture 5 formateo de señales analógicas
Lecture 5 formateo de señales analógicas
nica2009
 
Guía rápidalcd y teclado
Guía rápidalcd y tecladoGuía rápidalcd y teclado
Guía rápidalcd y teclado
Luis Zurita
 
Ss cap7 - diseno filtros fir
Ss   cap7 - diseno filtros firSs   cap7 - diseno filtros fir
Ss cap7 - diseno filtros fir
kevinXD123
 
REDES NEURONALES Aprendizaje Competitivo Cooperativo
REDES NEURONALES Aprendizaje Competitivo CooperativoREDES NEURONALES Aprendizaje Competitivo Cooperativo
REDES NEURONALES Aprendizaje Competitivo Cooperativo
ESCOM
 

La actualidad más candente (20)

Señales con arduino y DAC
Señales con arduino y DACSeñales con arduino y DAC
Señales con arduino y DAC
 
U2S2: Memoria Principal (RAM)
U2S2: Memoria Principal (RAM)U2S2: Memoria Principal (RAM)
U2S2: Memoria Principal (RAM)
 
Comunicación Serial
Comunicación SerialComunicación Serial
Comunicación Serial
 
7. atenuacion, distorsion y ruido en la transmision
7. atenuacion, distorsion y ruido en la transmision7. atenuacion, distorsion y ruido en la transmision
7. atenuacion, distorsion y ruido en la transmision
 
Modulación qam
Modulación qamModulación qam
Modulación qam
 
Lecture 5 formateo de señales analógicas
Lecture 5 formateo de señales analógicasLecture 5 formateo de señales analógicas
Lecture 5 formateo de señales analógicas
 
Registro status PIC16F84A
Registro status PIC16F84ARegistro status PIC16F84A
Registro status PIC16F84A
 
Comunicacion Analogica
Comunicacion AnalogicaComunicacion Analogica
Comunicacion Analogica
 
4.TDM Multiplexacion por division de tiempo
4.TDM Multiplexacion por division de tiempo4.TDM Multiplexacion por division de tiempo
4.TDM Multiplexacion por division de tiempo
 
Clase USART
Clase USARTClase USART
Clase USART
 
Modulacion en frecuencia fm
Modulacion en frecuencia fmModulacion en frecuencia fm
Modulacion en frecuencia fm
 
Unidad 2 TELECOMUNICACIONES
Unidad 2 TELECOMUNICACIONESUnidad 2 TELECOMUNICACIONES
Unidad 2 TELECOMUNICACIONES
 
Guía rápidalcd y teclado
Guía rápidalcd y tecladoGuía rápidalcd y teclado
Guía rápidalcd y teclado
 
Guia ASK, PSK y FSK
Guia ASK, PSK y FSKGuia ASK, PSK y FSK
Guia ASK, PSK y FSK
 
Ss cap7 - diseno filtros fir
Ss   cap7 - diseno filtros firSs   cap7 - diseno filtros fir
Ss cap7 - diseno filtros fir
 
REDES NEURONALES Aprendizaje Competitivo Cooperativo
REDES NEURONALES Aprendizaje Competitivo CooperativoREDES NEURONALES Aprendizaje Competitivo Cooperativo
REDES NEURONALES Aprendizaje Competitivo Cooperativo
 
Tema 5: Modelos de propagación en interiores
Tema 5: Modelos de propagación en interioresTema 5: Modelos de propagación en interiores
Tema 5: Modelos de propagación en interiores
 
6.3 Parametros de antenas
6.3 Parametros de antenas6.3 Parametros de antenas
6.3 Parametros de antenas
 
Probabilidad de error en modulación digital
Probabilidad de error en modulación digitalProbabilidad de error en modulación digital
Probabilidad de error en modulación digital
 
Informe tele
Informe teleInforme tele
Informe tele
 

Destacado (7)

Módulo ADC del PIC16F887
Módulo ADC del PIC16F887Módulo ADC del PIC16F887
Módulo ADC del PIC16F887
 
Clase historia
Clase historiaClase historia
Clase historia
 
Modulo Timer 0 del PIC16F887
Modulo Timer 0 del PIC16F887Modulo Timer 0 del PIC16F887
Modulo Timer 0 del PIC16F887
 
Conexiones del PIC16F887
Conexiones del PIC16F887Conexiones del PIC16F887
Conexiones del PIC16F887
 
Arquitectura Microcontrolador PIC16F887
Arquitectura Microcontrolador PIC16F887Arquitectura Microcontrolador PIC16F887
Arquitectura Microcontrolador PIC16F887
 
Módulo Timer 1 del PIC16F887
Módulo Timer 1 del PIC16F887Módulo Timer 1 del PIC16F887
Módulo Timer 1 del PIC16F887
 
Clase instrucciones PIC16F877A
Clase instrucciones PIC16F877AClase instrucciones PIC16F877A
Clase instrucciones PIC16F877A
 

Similar a Módulo EUSART del PIC16F887

Micc final feb14_2009_soluc
Micc final feb14_2009_solucMicc final feb14_2009_soluc
Micc final feb14_2009_soluc
Jair BG
 
Micc final sept05 2009 soluc
Micc final sept05 2009 solucMicc final sept05 2009 soluc
Micc final sept05 2009 soluc
Jair BG
 
Micc final sept05_2009
Micc final sept05_2009Micc final sept05_2009
Micc final sept05_2009
Jair BG
 
Micc final feb14_2009
Micc final feb14_2009Micc final feb14_2009
Micc final feb14_2009
Jair BG
 

Similar a Módulo EUSART del PIC16F887 (20)

Txusart
TxusartTxusart
Txusart
 
Curso de microcontroladores capitulo 12
Curso de microcontroladores capitulo 12Curso de microcontroladores capitulo 12
Curso de microcontroladores capitulo 12
 
Usart PIC config LANDA
Usart PIC config LANDAUsart PIC config LANDA
Usart PIC config LANDA
 
Micc final feb14_2009_soluc
Micc final feb14_2009_solucMicc final feb14_2009_soluc
Micc final feb14_2009_soluc
 
Micc final feb14_2009_soluc
Micc final feb14_2009_solucMicc final feb14_2009_soluc
Micc final feb14_2009_soluc
 
Micc final sept05 2009 soluc
Micc final sept05 2009 solucMicc final sept05 2009 soluc
Micc final sept05 2009 soluc
 
Micc final sept05 2009 soluc
Micc final sept05 2009 solucMicc final sept05 2009 soluc
Micc final sept05 2009 soluc
 
Usart
UsartUsart
Usart
 
Usart 3
Usart 3Usart 3
Usart 3
 
Micc final sept05_2009
Micc final sept05_2009Micc final sept05_2009
Micc final sept05_2009
 
Micc final feb14_2009
Micc final feb14_2009Micc final feb14_2009
Micc final feb14_2009
 
Micro2 tema 5
Micro2 tema 5Micro2 tema 5
Micro2 tema 5
 
Pic16 f877
Pic16 f877Pic16 f877
Pic16 f877
 
101172 pic16f877-en-espanol1
101172 pic16f877-en-espanol1101172 pic16f877-en-espanol1
101172 pic16f877-en-espanol1
 
Funcionamiento del USART
Funcionamiento del USARTFuncionamiento del USART
Funcionamiento del USART
 
Adc y usart pic16 f887
Adc y usart pic16 f887Adc y usart pic16 f887
Adc y usart pic16 f887
 
Microcontrolador PIC 16F84A.pdf
Microcontrolador PIC 16F84A.pdfMicrocontrolador PIC 16F84A.pdf
Microcontrolador PIC 16F84A.pdf
 
Compilador CCS.ppt
Compilador CCS.pptCompilador CCS.ppt
Compilador CCS.ppt
 
Microcontroladores de microchip pic16f877-en-espanol.pdf
Microcontroladores de microchip pic16f877-en-espanol.pdfMicrocontroladores de microchip pic16f877-en-espanol.pdf
Microcontroladores de microchip pic16f877-en-espanol.pdf
 
Puertoserial[1]
Puertoserial[1]Puertoserial[1]
Puertoserial[1]
 

Más de Fernando Aparicio Urbano Molano

Más de Fernando Aparicio Urbano Molano (20)

Ciclos de Control en Shell
Ciclos de Control en ShellCiclos de Control en Shell
Ciclos de Control en Shell
 
Introducción al Shell Linux
Introducción al Shell LinuxIntroducción al Shell Linux
Introducción al Shell Linux
 
Introducción al Linux Embebido
Introducción al Linux EmbebidoIntroducción al Linux Embebido
Introducción al Linux Embebido
 
Lenguaje C para Microcontroladores PIC - Declaraciones de Decisión
Lenguaje C para Microcontroladores PIC - Declaraciones de DecisiónLenguaje C para Microcontroladores PIC - Declaraciones de Decisión
Lenguaje C para Microcontroladores PIC - Declaraciones de Decisión
 
Introducción al Lenguaje C para microcontroladores PIC
Introducción al Lenguaje C para microcontroladores PICIntroducción al Lenguaje C para microcontroladores PIC
Introducción al Lenguaje C para microcontroladores PIC
 
Node.JS para Intel Galileo
Node.JS para Intel GalileoNode.JS para Intel Galileo
Node.JS para Intel Galileo
 
Linux Yocto y GPIO
Linux Yocto y GPIOLinux Yocto y GPIO
Linux Yocto y GPIO
 
Arquitectura Computacional - Intel Galileo
Arquitectura Computacional - Intel GalileoArquitectura Computacional - Intel Galileo
Arquitectura Computacional - Intel Galileo
 
Máquinas de Estado Finito en VHDL
Máquinas de Estado Finito en VHDLMáquinas de Estado Finito en VHDL
Máquinas de Estado Finito en VHDL
 
Introducción al PIC16 f887
Introducción al PIC16 f887Introducción al PIC16 f887
Introducción al PIC16 f887
 
Memorias
MemoriasMemorias
Memorias
 
Estados Indiferentes - Diagramas de Karnaugh
Estados Indiferentes - Diagramas de KarnaughEstados Indiferentes - Diagramas de Karnaugh
Estados Indiferentes - Diagramas de Karnaugh
 
Multivibradores, Temporizadores y aplicaciones de los Flip-Flops
Multivibradores, Temporizadores y aplicaciones de los Flip-FlopsMultivibradores, Temporizadores y aplicaciones de los Flip-Flops
Multivibradores, Temporizadores y aplicaciones de los Flip-Flops
 
Flip-Flops y aplicaciones de los Latch
Flip-Flops y aplicaciones de los LatchFlip-Flops y aplicaciones de los Latch
Flip-Flops y aplicaciones de los Latch
 
Máquinas de Estado
Máquinas de EstadoMáquinas de Estado
Máquinas de Estado
 
Clase Latch y FFs
Clase Latch y FFsClase Latch y FFs
Clase Latch y FFs
 
Latch y Flip-Flops
Latch y Flip-FlopsLatch y Flip-Flops
Latch y Flip-Flops
 
Clase Timer 1
Clase Timer 1Clase Timer 1
Clase Timer 1
 
Conversor ADC
Conversor ADCConversor ADC
Conversor ADC
 
Timer 0 - Pic16F877A
Timer 0 - Pic16F877ATimer 0 - Pic16F877A
Timer 0 - Pic16F877A
 

Último

proyecto invernadero desde el departamento de tecnología para Erasmus
proyecto invernadero desde el departamento de tecnología para Erasmusproyecto invernadero desde el departamento de tecnología para Erasmus
proyecto invernadero desde el departamento de tecnología para Erasmus
raquelariza02
 
PRÁCTICAS DEL MÓDULO I Y II DE EDUCACIÓN Y SOCIEDAD.docx
PRÁCTICAS DEL MÓDULO I Y II DE EDUCACIÓN Y SOCIEDAD.docxPRÁCTICAS DEL MÓDULO I Y II DE EDUCACIÓN Y SOCIEDAD.docx
PRÁCTICAS DEL MÓDULO I Y II DE EDUCACIÓN Y SOCIEDAD.docx
encinasm992
 
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
vazquezgarciajesusma
 

Último (20)

Trabajo Coding For kids 1 y 2 grado 9-4.pdf
Trabajo Coding For kids 1 y 2 grado 9-4.pdfTrabajo Coding For kids 1 y 2 grado 9-4.pdf
Trabajo Coding For kids 1 y 2 grado 9-4.pdf
 
HIGADO Y TRAUMA HEPATICO UDABOL 2024 (3).pdf
HIGADO  Y TRAUMA HEPATICO UDABOL 2024 (3).pdfHIGADO  Y TRAUMA HEPATICO UDABOL 2024 (3).pdf
HIGADO Y TRAUMA HEPATICO UDABOL 2024 (3).pdf
 
Introducción a la robótica con arduino..pptx
Introducción a la robótica con arduino..pptxIntroducción a la robótica con arduino..pptx
Introducción a la robótica con arduino..pptx
 
Licencias para el Uso y el Desarrollo de Software
Licencias para el Uso y el Desarrollo de SoftwareLicencias para el Uso y el Desarrollo de Software
Licencias para el Uso y el Desarrollo de Software
 
proyecto invernadero desde el departamento de tecnología para Erasmus
proyecto invernadero desde el departamento de tecnología para Erasmusproyecto invernadero desde el departamento de tecnología para Erasmus
proyecto invernadero desde el departamento de tecnología para Erasmus
 
Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...
Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...
Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...
 
manual-de-oleohidraulica-industrial-vickers.pdf
manual-de-oleohidraulica-industrial-vickers.pdfmanual-de-oleohidraulica-industrial-vickers.pdf
manual-de-oleohidraulica-industrial-vickers.pdf
 
PRÁCTICAS DEL MÓDULO I Y II DE EDUCACIÓN Y SOCIEDAD.docx
PRÁCTICAS DEL MÓDULO I Y II DE EDUCACIÓN Y SOCIEDAD.docxPRÁCTICAS DEL MÓDULO I Y II DE EDUCACIÓN Y SOCIEDAD.docx
PRÁCTICAS DEL MÓDULO I Y II DE EDUCACIÓN Y SOCIEDAD.docx
 
Herramientas informáticas. Sara Torres R.
Herramientas informáticas. Sara Torres R.Herramientas informáticas. Sara Torres R.
Herramientas informáticas. Sara Torres R.
 
Robótica educativa para la eduacion primaria .pptx
Robótica educativa para la eduacion primaria .pptxRobótica educativa para la eduacion primaria .pptx
Robótica educativa para la eduacion primaria .pptx
 
Diagrama de flujo - ingenieria de sistemas 5to semestre
Diagrama de flujo - ingenieria de sistemas 5to semestreDiagrama de flujo - ingenieria de sistemas 5to semestre
Diagrama de flujo - ingenieria de sistemas 5to semestre
 
Posnarrativas en la era de la IA generativa
Posnarrativas en la era de la IA generativaPosnarrativas en la era de la IA generativa
Posnarrativas en la era de la IA generativa
 
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
 
Unidad 1- Historia y Evolucion de las computadoras.pdf
Unidad 1- Historia y Evolucion de las computadoras.pdfUnidad 1- Historia y Evolucion de las computadoras.pdf
Unidad 1- Historia y Evolucion de las computadoras.pdf
 
Presentacion y Extension de tema para Blogger.pptx
Presentacion y Extension de tema para Blogger.pptxPresentacion y Extension de tema para Blogger.pptx
Presentacion y Extension de tema para Blogger.pptx
 
lenguaje algebraico.pptx álgebra, trigonometria
lenguaje algebraico.pptx álgebra, trigonometrialenguaje algebraico.pptx álgebra, trigonometria
lenguaje algebraico.pptx álgebra, trigonometria
 
Estudio de la geometría analitica. Pptx.
Estudio de la geometría analitica. Pptx.Estudio de la geometría analitica. Pptx.
Estudio de la geometría analitica. Pptx.
 
herramientas informaticas mas utilizadas
herramientas informaticas mas utilizadasherramientas informaticas mas utilizadas
herramientas informaticas mas utilizadas
 
proyectos_social_y_socioproductivos _mapas_conceptuales
proyectos_social_y_socioproductivos _mapas_conceptualesproyectos_social_y_socioproductivos _mapas_conceptuales
proyectos_social_y_socioproductivos _mapas_conceptuales
 
HerramientasInformaticas ¿Que es? - ¿Para que sirve? - Recomendaciones - Comp...
HerramientasInformaticas ¿Que es? - ¿Para que sirve? - Recomendaciones - Comp...HerramientasInformaticas ¿Que es? - ¿Para que sirve? - Recomendaciones - Comp...
HerramientasInformaticas ¿Que es? - ¿Para que sirve? - Recomendaciones - Comp...
 

Módulo EUSART del PIC16F887

  • 1. CIRCUITOS DIGITALES II EUSART EN EL PIC16F887 Mg. Ing. FERNANDO APARICIO URBANO MOLANO
  • 2. 2 INTERFAZ DE COMUNICACIÓN TTL/RSINTERFAZ DE COMUNICACIÓN TTL/RS--232232 El microcontrolador PIC16F88X posee un módulo USART, usando la norma RS-232/RS-485, sin embargo es necesario usar un módulo adicional para convertir las señales que maneja, a niveles TTL (0 – 5V) a niveles adecuados para que haya una correcta comunicación con el computador (PC). Dicha labor la realiza el circuito integrado MAX232 de Maxim Semiconductor. Este integrado se destaca por que maneja los niveles de voltaje positivos y negativos propios de la interface RS-232, a pesar de que se alimenta con solo una fuente sencilla de 5V.
  • 3. 3 COMUNICACIÓN SERIE ASÍNCRONACOMUNICACIÓN SERIE ASÍNCRONA El EUSART (Enhanced Universal Synchronous Asynchronous Receiver Transmitter), o conocido como SCI (Serial Comunications Interface), puede ser configurado como un sistema full duplex o bidireccional asíncrono, adaptándose a multitud de periféricos y dispositivos que transfieren información de ésta forma, tales como el monitor o el computador. EUSART puede configurarse de tres formas: • Asíncrona (Full duplex, bidireccional). • Síncrona-Maestro (Half duplex, unidireccional). • Síncrona-Esclavo (Half duplex, unidireccional).
  • 4. 4 COMUNICACIÓN SERIE ASÍNCRONA (2)COMUNICACIÓN SERIE ASÍNCRONA (2) Vamos a estudiar únicamente el modo asíncrono, donde las transferencias de información se realizan sobre dos líneas TX (transmisión) y RX (recepción), saliendo y entrando los bits por dichas líneas al ritmo de una frecuencia controlada internamente por el USART. Las líneas de comunicación son los dos bits de más peso del Puerto C: RC6/TX/CK y RC7/RX/DT, donde el bit SPEN (RCSTA<7>) y los bits TRISC<7:6> tienen que activarse mediante un 1 con el fin activar dichos pines.
  • 5. 5 REGISTRO TXSTA: Estado de la transmisión y RegistroREGISTRO TXSTA: Estado de la transmisión y Registro dede control (1)control (1)
  • 6. 6 REGISTRO TXSTA: Estado de la transmisión y RegistroREGISTRO TXSTA: Estado de la transmisión y Registro dede control (2)control (2)
  • 7. 7 REGISTRO RCSTA: Estado de la recepción y RegistroREGISTRO RCSTA: Estado de la recepción y Registro dede control (1)control (1)
  • 8. 8 REGISTRO RCSTA: Estado de la recepción y RegistroREGISTRO RCSTA: Estado de la recepción y Registro dede control (2)control (2)
  • 9. 9 REGISTROREGISTRO BAUDCTL: REG. GENERACIÓN BAUDIOSBAUDCTL: REG. GENERACIÓN BAUDIOS
  • 10. 10 REGISTROREGISTRO BAUDCTL: REG. GENERACIÓN BAUDIOSBAUDCTL: REG. GENERACIÓN BAUDIOS
  • 11. 11 GENERADOR DE BAUDIOSGENERADOR DE BAUDIOS En el protocolo asíncrono RS-232-C, la frecuencia en baudios (bits por segundo) a la que se realiza la transferencia se debe efectuar a un valor normalizado: 2400, 4800, 9600, 19200, etc. Para generar esta frecuencia en Baudios, BRGH y BRG16, cuyo valor es controlado por el contenido grabado en el registro SPBRGH y SPBRG. Además del valor X cargado en el registro SPBRG, la frecuencia en baudios del generador depende del bit BRGH del registro TXSTA<2> y BRG16 en el registro BAUDCTL. En caso de que BRGH sea 0 se trabaja en baja velocidad y si BRGH = 1 se trabaja en alta velocidad.; y BRG16 = 1 para usar los 16 bits y reducir el error en la generación.
  • 12. 12 GENERADOR DE BAUDIOS (2)GENERADOR DE BAUDIOS (2)   64 1 OSCF X    Frecuencia en Baudios X es el valor cargado en el registro SPBRGH:SPBRG Despejando X: 1 . 64 OSCF X Frec Baudios   
  • 13. 13 GENERADOR DE BAUDIOS (3)GENERADOR DE BAUDIOS (3) Si en un PIC16F877A funcionando con una 4OSCF MHz Se desea trabajar con el USART en modo asíncrono y alta velocidad, con una frecuencia de 9600 baudios, calcular el valor X que hay que cargar en el registro SPBRG y el error que se origina. BRGH = 1 y BRG16 = 0 4000000 1 9600 16 X    25X 
  • 14. 14 GENERADOR DE BAUDIOS (4)GENERADOR DE BAUDIOS (4) Si se carga el registro SPBRG con 25 la frecuencia real de trabajo será:  4000000/ 16 (25 1) 9615Frecuencia     baudios El error que se genera cargando 25 en el SPBRG será: 9615 9600 100% 0.16% 9600 Error        
  • 15. 15 TRANSMISOR ASÍNCRONOTRANSMISOR ASÍNCRONO Pasos a seguir para implementar una transmisión en el USART: 1. Configurar las líneas RC6/TX/CK como salida y RC7/RX/DT como entrada. 2. Poner SYNC = 0 y SPEN = 1 para activar el EUSART en modo asíncrono. 3. Si se desea trabajar con interrupción, poner TXIE = 1, además de habilitar las interrupciones en general. 4. Si el dato consta de 9 bits, en lugar de los 8 típicos, poner el bit TX9 = 1. El noveno bit se colocará en TX9D (TXSTA). 5. Se carga el valor X adecuado en el registro SPBRG, para producir la frecuencia de trabajo deseada. Hay que controlar el bit BRGH y BRG16. 6. Activar la transmisión con TXEN = 1. El bit TXIF tendrá valor 1, ya que TXREG se encuentra vacío. 7. Cargar en TXREG el dato a transmitir. Comienza la transmisión.
  • 16. 16 RECEPTOR ASÍNCRONORECEPTOR ASÍNCRONO Pasos a seguir para el modo recepción: 1. Se carga con el valor X al registro SPBRG para trabajar con la frecuencia deseada, controlando además el valor de BRGH y BRG16. 2. Se habilita el USART en modo asíncrono con SPEN = 1 y SYNC = 0. 3. Si se desea trabajar con interrupción con la llegada del bit de STOP (parada), se pone RCIE = 1, además de habilitar las interrupciones en general. 4. Poner RX9 = 1 para permitir la recepción del bit 9 bits. 5. Se habilita la recepción poniendo CREN = 1. 6. Al completarse la recepción RCIF se pondrá a 1 y se produce una interrupción si se había permitido 7. Se lee el registro RCSTA y se averigüa si se ha producido algún error. 8. Leer los 8 bits del registro RCREG para determinar si el dispositivo ha sido direccionado. 9. Si se ha producido algún error, poner CREN = 0.