Vous êtes sur la page 1sur 17

UNIVERSIDAD

POLITÉCNICA SALESIANA

INGENIERÍA ELECTRÓNICA

SISTEMAS MICROPROCESADOS I

INFORME DE LA PRACTICA 9

COMUNICACIÓN SERIAL R-232

INTEGRANTES:

• LUIS HERNANDEZ
• DAVID HERRERA
1.- OBJETIVO: Utilizar las comunicaciones seriales RS-232
• ALGORITMO
Entrada: Recibo el dato
Proceso:
• Defino las variables
• Recibo el dato y lo guardo
• Transmitir el dato

Salida: Datos Visualizados en el hiperterminal.

CÓDIGO

program 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.
• DIAGRAMA DE FLUJOS

INICIO

Defino variables

Inicializo modulo
USART

NO
Reci
bo
Dato

SI

Dato transmitido al
hiperterminal

END
• SIMULACION

• VISUALIZACION.
• 2.- PROBLEMA
Transmisión de datos desde el PIC al PC
Proceso:
• Definimos variables
• Inicializo el puerto serie
• Enviar los datos por el pin transmisor
• Retardó para observar los caracteres en el hiperterminal
• Envía datos a la PC

Salida: Envía los datos del PIC a la PC

• CÓDIGO

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("LUIS HERNANDEZ ")
delay_ms(1000)
usart_write_text("JUAN DAVID ")
wend
end.
• DIAGRAMA DE FLUJOS

INICIO

Defino variables

Inicializo el puerto serie

Envía los datos por el pin


transmisor

Retardo 100ms para


observar los
caracteres

Visualizo los datos


en el hyperterminal
• ESQUEMÁTICO

• VISUALIZACION
• 3.-PROBLEMA

Envió de datos desde el PC al PIC

Proceso:
• Definir Variables
• Puerto B como salida
• Inicializa USART
• Si recibo el dato
• Leo el dato recibido

Salida: Visualizo en los leds los datos recibidos


• CÓDIGO
program 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.
• DIAGRAMA DE FLUJOS

INICIO

Defino variables

Inicializo modulo
USART

NO
Reci
bo
Dato

SI

Leo el dato

Visualizo en leds los


datos recibidos
• ESQUEMÁTICO:

VISUALIZACION
EJERCICIO 4.-

Realice la adquisición de datos de un potenciómetro y envíelos parra que observe en el hyperterminal de


Windows

ALGORITMO:
• Entrada

 Adquirir el valor analógico del potenciómetro en el puerto A

• Proceso:

 Configurar comunicación serial


 Realizar la conversión Análogo/Digital
 Enviar el valor del digital del potenciómetro por puerto Serial a la PC.

• Salida:

 Visualizar en Hyperterminal el valor digital del potenciómetro.

• CODIGO:

program AnalogoDigital1
dim voltaje as float
dim valor as string[10]
sub procedure init
option_reg=$80
adcon1=$80
trisa=$FF
end sub
main:
Usart_Init(9600)
init
while true
voltaje = adc_read(0)
wordtostr(voltaje, valor)
Usart_Write_Text(valor)
delay_ms(300)
wend
end.
• DIAGRAMA DE FLUJOS

INICIO

Definir Variables

Inicializar Puerto Serial

Conversor ADC

Enviar datos por Pin


Transmisor

End

• ESQUEMÁTICO:

• VISUALIZACION
 EJERCICIO 5.-

Desarrollar en programa en Labview, permitir la transmisión y recepción entre el PIC y el programa


Labview.

ALGORITMO

• Entrada

 Recibir el dato que envía Labview por dipswich virtuales


 Recibir valor binario a través del puerto B

• Proceso:

 Configurar comunicación serial


 Recibir por el Pin de Recepción los datos de Labview (PC) y enviarlos al puerto D
 Recibir datos por el puerto B y enviarlos por el Pin de Trasmisión a Labview (PC).

• Salida:

 Visualizar en Labview el valor que ingresa por el puerto B y visualizar el Leds el valor enviado por
Labview.

• CODIGO:
program conlabview
'dim received_byte as byte
dim x as byte
dim b as byte
dim a as string[64]

trisb = $ff 'entrada


trisd = 0 'salida
portd=0
x=0

main:
Usart_Init(9600)
While true
if Usart_Data_Ready =1 then
x= Usart_Read
portd= x
end if
b =Portb
bytetostr(b,a)
Usart_Write_text(a)
delay_ms(100)
wend
end.
• ESQUEMATICO:

PROGRAMA DE LABVIEW

• Diagrama de Bloques
Simulación:
CONCLUCIONES
• Debemos conocer y practicar mas para las próximas practicas ya que al ser extensas
requieren de mucho mas tiempo

• Tener bien armado y programado cada uno de los laboratorios para poder seguir
avanzando.

• Leer el Data Sheet y su correcto funcionamiento

• Utilizar los comandos de programación adecuados para cada práctica.

• Seguir con la guía y probar cada uno de los elementos para su correcto funcionamiento.

BIBLIOGRAFÍA
- Hojas de prácticas de Sistemas Microprocesador I Ing. Luis Oñate.
- ayuda de microbasic para PIC.

Vous aimerez peut-être aussi