Upload
oscarayala88
View
218
Download
0
Embed Size (px)
Citation preview
8/9/2019 Informe Serial
1/21
SISTEMAS MICROPROCESADOS 1 UPS
1
UNIVERSIDAD POLITECNICA
SALESIANA
INTEGRANTES:
OSCAR AYALA
ANDRES VALDIVIESO
CURSO:
SEXTO ELECTRONICA
8/9/2019 Informe Serial
2/21
SISTEMAS MICROPROCESADOS 1 UPS
2
TALLER N9 DE PIC
TEMA: Comunicaciones seriales asincrnicas.
OBJETIVO: Utilizar las comunicaciones seriales RS-232
DESARROLLO
En la prctica vamos a utilizar el micro controlador PIC 16F877A y su correspondiente
diagrama de pines y caractersticas.
Figura 1. Diagrama de pines del PIC 16F877A
Para trabajar con comunicacin serial necesitaremos obligatoriamente que usar el
MAX 232.
Figura 2. Diagrama max 232
8/9/2019 Informe Serial
3/21
SISTEMAS MICROPROCESADOS 1 UPS
3
1.- TRANSMISION Y RECEPCION SERIAL CON PIC
PROBLEMAPara facilitar la transmisin se utiliza el circuito integrado max 232. Se recomienda
utilizar un cristal de 11.52Mhz o lo ms cercano a este valor.
ALGORITMO
Inicio: Utilizar Usart para
Proceso: Transmitir y recibir datos en 9600 baudios
Salida: Visualizacin en el hyper terminal de widows los datos recibidos.
DIAGRAMA DE FLUJOS
Habilito USART INIT
Transmito los datos y
recibo los mismos
Visualizo en la hyper
terminal de Windows los
datos recibidos
Defino variables internas
INICIO
8/9/2019 Informe Serial
4/21
SISTEMAS MICROPROCESADOS 1 UPS
4
CDIGOprogram leer_dato
dim received_byte as byte
main:
Usart_Init(9600) 'Inicializa modulo Usart
while true
if Usart_Data_Ready = 1 then 'Si el dato es recibido
received_byte = Usart_Read 'dato se guarda
usart_Write (received_byte) 'El dato es transmitido
end if
wend
end.
Esquemtico: Utilizamos el microcontrolador PIC 16F877A
8/9/2019 Informe Serial
5/21
SISTEMAS MICROPROCESADOS 1 UPS
5
GRAFICO ANEXO
Visualizacin de datos en la hyper terminal de mikroBasic
Grafico ejercicio 1.
8/9/2019 Informe Serial
6/21
SISTEMAS MICROPROCESADOS 1 UPS
6
2.- TRANSMISION DE DATOS DESDE EL PIC AL PC.
PROBLEMAPara facilitar la transmisin se utiliza el circuito integrado max 232. Se recomienda
utilizar un cristal de 11.52Mhz o lo ms cercano a este valor.
ALGORITMO
Inicio: Utilizar Usart paraDeclaro la variable auxiliar A
Proceso: Transmitir y recibir datos en 9600 baudiosIncrementar la variable auxiliar A
Salida: Visualizacin en el hyper terminal de widows los datos recibidos.
DIAGRAMA DE FLUJOS
Habilito USART INIT
Transmito los datos y
recibo los mismos con
USART write
Visualizo en la hyper
terminal de Windows los
datos recibidos
Defino variables auxiliar A
tipo byte
INICIO
8/9/2019 Informe Serial
7/21
SISTEMAS MICROPROCESADOS 1 UPS
7
CDIGO
PROGRAM PIC_A_PC
DIM A AS BYTE 'VARIABLE A DEFINIDA COMO TIPO BYTE
A= 0
TRISB = 0
MAIN:
USART_INIT(9600) 'INICIALIZA EL PUERTO EN 9600 BAUDIOS
WHILE TRUE
A= A + 1 'INCREMENTA EL CODIGO ASCII DE UNO EN UNO
USART_WRITE(A) 'ENVIA LOS DATOS POR EL PIN TRANSMISOR
DELAY_MS(1000) 'RETARDO PARA OBSERVAR LOS CARACTERES EN EL
HYPERTERMINAL
USART_WRITE_TEXT(" HOLA MUNDO ")
DELAY_MS(1000)
USART_WRITE_TEXT("ANGEL VALDIVIESO")
DELAY_MS(1000)
USART_WRITE_TEXT("OSCAR AYALA")
DELAY_MS(1000)
WEND
END.
8/9/2019 Informe Serial
8/21
SISTEMAS MICROPROCESADOS 1 UPS
8
Esquemtico: Utilizamos el microcontrolador PIC 16F877A
GRAFICO ANEXO
Visualizacin de datos en la hyper terminal de mikroBasic
8/9/2019 Informe Serial
9/21
SISTEMAS MICROPROCESADOS 1 UPS
9
Grafico ejercicio 2.
3.- ENVIO DE DATOS DESDE EL PC AL PIC.
PROBLEMAPara facilitar la transmisin se utiliza el circuito integrado max 232. Se recomienda
utilizar un cristal de 11.52Mhz o lo ms cercano a este valor.
ALGORITMO
Inicio: Utilizar UsartDeclaro la variable auxiliar A
Declaro el puerto b como salida.
Proceso: Transmitir y recibir datos en 9600 baudiosIncrementar la variable auxiliar A
Salida: Visualizacin de datos en cdigo binario en los diodos LED.
8/9/2019 Informe Serial
10/21
SISTEMAS MICROPROCESADOS 1 UPS
10
DIAGRAMA DE FLUJOS
CDIGOPROGRAM PC_A_PIC
DIM A AS BYTE
A = 0
TRISB = 0
MAIN:
USART_INIT(9600) 'INICIALIZA USART A 9600 BAUDIOS
WHILE TRUE
IF USART_DATA_READY = 1 THEN 'SI EL DATO ES RECIBIDO
A= USART_READ 'LECTURA DEL DATO RECIBIDO
PORTB =A
END IF
DELAY_MS(100)
WEND
END.
Habilito puerto b como
salida
Transmito los datos y
recibo los mismos conUSART write
Visualizo los datos en la
salida del puerto en los
diodos LED.
Defino variable auxiliar A
tipo byte
INICIO
8/9/2019 Informe Serial
11/21
SISTEMAS MICROPROCESADOS 1 UPS
11
Esquemtico: Utilizamos el microcontrolador PIC 16F877A
GRAFICO ANEXO
Visualizacin de datos en la hyper terminal de mikroBasic
8/9/2019 Informe Serial
12/21
SISTEMAS MICROPROCESADOS 1 UPS
12
Grafico ejercicio 3.
4.- ADQUISICIN DE DATOS DESDE EL PIC AL PC.
PROBLEMARealice la adquisicin de datos de un potencimetro y envelos para que se observe en
el hyperterminal de windows.
ALGORITMO
Inicio: Declaro la variable voltajeDeclaro la variable valor
Declaro el puerto a como entrada.
Proceso: Transmitir y recibir datos en 9600 baudiosGuardo los datos en la variable valor
Salida: Visualizacin de en el hyperterminal de windows.
8/9/2019 Informe Serial
13/21
SISTEMAS MICROPROCESADOS 1 UPS
13
DIAGRAMA DE FLUJOS
CDIGOPROGRAM ANALOGODIGITAL1
DIM VOLTAJE AS FLOAT
DIM VALOR AS STRING[10]
SUB PROCEDURE INIT
OPTION_REG=$80
ADCON1=$80
TRISA=$FFEND SUB
MAIN:
USART_INIT(9600)
INIT
WHILE TRUE
VOLTAJE = ADC_READ(0)
WORDTOSTR(VOLTAJE, VALOR)
USART_WRITE_TEXT(VALOR)
DELAY_MS(300)
WENDEND.
Transmito los datos y
recibo los mismos con
USART write
Visualizo los datos en la
hyperterminal de
windows
Defino variable voltaje
tipo float
INICIO
Defino variable valor tipo
string
Habilito puerto a como
entrada
8/9/2019 Informe Serial
14/21
SISTEMAS MICROPROCESADOS 1 UPS
14
Esquemtico: Utilizamos el microcontrolador PIC 16F877A
GRAFICO ANEXO
Visualizacin de datos en la hyper terminal de windows
8/9/2019 Informe Serial
15/21
SISTEMAS MICROPROCESADOS 1 UPS
15
Grafico ejercicio 4.
5.- DESARROLLO COMUNICACIN SERIAL RS-232 PC-PIC-PC CON LABVIEW.
PROBLEMARealizando la programacin para el PIC 16F877A, armamos el circuito siguiendo el
esquema que se muestra a continuacin PIC-PC-PIC con la interfaz desarrollada en
LabView.
ALGORITMO
Inicio: Declaro el puerto b como salida.Declaro el puerto d como entrada.
Defino las variables internas.
Proceso: Transmitir y recibir datos en 9600 baudiosGuardo los datos en la variable valor
Salida: Visualizacin de en el hyperterminal de windows.
8/9/2019 Informe Serial
16/21
SISTEMAS MICROPROCESADOS 1 UPS
16
DIAGRAMA DE FLUJOS
Transmito los datos yrecibo los mismos con
USART write
Visualizo los datos en la
hyperterminal de
windows
Defino variable x; b como
byte
INICIO
Habilito puerto d como
entrada
Habilito puerto b como
salida
Guardo los datos del
puerto b en la variable x
8/9/2019 Informe Serial
17/21
SISTEMAS MICROPROCESADOS 1 UPS
17
CDIGO
PROGRAM PUERTOSERIAL
DIM RECEIVED_BYTE AS BYTE
DIM X AS BYTE
DIM B AS BYTE
DIM A AS STRING[64]
X=0
TRISB=0
TRISD=$FF
MAIN:
USART_INIT(9600)
WHILE TRUE
IF USART_DATA_READY=1 THEN
X=USART_READ
PORTB=X
B=PORTD
BYTETOSTR(B,A)
USART_WRITE_TEXT(A)
END IF
DELAY_MS(100)
WEND
END.
8/9/2019 Informe Serial
18/21
SISTEMAS MICROPROCESADOS 1 UPS
18
Esquemtico: Utilizamos el microcontrolador PIC 16F877A
GRAFICO ANEXO
Visualizacin de datos en la hyper terminal de mikroBasic.
8/9/2019 Informe Serial
19/21
SISTEMAS MICROPROCESADOS 1 UPS
19
Grafico ejercicio 5.
Panel central en labview
8/9/2019 Informe Serial
20/21
SISTEMAS MICROPROCESADOS 1 UPS
20
Panel central en labview
Panel central en labview
8/9/2019 Informe Serial
21/21
SISTEMAS MICROPROCESADOS 1 UPS
21
CONCLUSIONES Es necesario utilizar un cristal de 11.52mhz para realizar ptimamente la
comunicacin serial.
Es necesario conocer las secuencias en los programas de LabView. Es preferible utilizar la velocidad de transmisin de datos de 9600 baudios yaque es la ms comn en los dispositivos de comunicacin serial.
BIBLIOGRAFA
Hoja de prcticas de microcontroladores PIC proporcionados por el Ing. LuisOate.
Ayuda del Programa mikrobasic. Manual del Microcontrolador PIC 16F877A. Ayuda del programa LabView.