Informe Comunicacion Serial

21
UNIVERSIDAD POLITÉCNICA SALESIANA SISTEMAS MICROPROCESADOS 1 INFORME PRÁCTICA #09 TEMA: Comunicaciones seriales asíncronas. DAVID ESPÍN ANDRÉS MOGRO MARZO JULIO 2010 QUITO - ECUADOR

Transcript of Informe Comunicacion Serial

Page 1: Informe Comunicacion Serial

UNIVERSIDAD POLITÉCNICA

SALESIANA

SISTEMAS MICROPROCESADOS 1

INFORME PRÁCTICA #09

TEMA: Comunicaciones seriales

asíncronas.

DAVID ESPÍN

ANDRÉS MOGRO

MARZO – JULIO 2010

QUITO - ECUADOR

Page 2: Informe Comunicacion Serial

PRÁCTICA 09

OBJETIVO: Utilizar las comunicaciones seriales RS-232.

1. Transmisión y recepción serial con pic.

Entradas:

Datos enviados desde el PC.

Procesos:

• Inicializo el modulo Usart.

• Leo el dato enviado por el PC.

• Si el dato es recibido, guardo el dato.

• Transmito el dato guardado.

Salidas:

Los datos que se muestran 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 rec ibido

received_byte = Usart_Read 'dato se guard a

usart_Write (received_byte) 'El dato es tr ansmitido

end if

wend

end.

Page 3: Informe Comunicacion Serial

DIAGRAMA DE FLUJO

INICIO

Configuro e inicio el

modulo Usart

Muestro el dato enviado y

recibido en el hiperterminal

Leo el dato del PC

en el pic

Guardo el dato

Envío dato hacia el

hiperterminal

Page 4: Informe Comunicacion Serial

ESQUEMÁTICO.

FOTOS.

Page 5: Informe Comunicacion Serial

2. Transmisión de datos del pic al PC.

Entradas:

Código ASCII y texto enviado por el pin transmisor del pic.

Procesos:

• Inicializo el módulo Usart en 9600 baudios.

• Envío código ASCII incrementando de uno en uno por el pin

transmisor del pic.

• Envío texto hacia el PC.

Salidas:

Los datos que se visualizan en el Hiperterminal de PC.

CÓDIGO.

program pic_a_pc dim a as byte 'variable a definida como tipo byte

Page 6: Informe Comunicacion Serial

a= 0 trisb = 0 main: Usart_Init(9600) 'inicializa el puerto en 9600 b audios while true a= a + 1 'incrementa el codigo ASCII de uno en uno Usart_Write(a) 'envia los datos por el pin tra nsmisor delay_ms(100) 'retardo para observar los cara cteres en el hyperterminal usart_write_text(" Hola Mundo") usart_write_text(" David Espin") usart_write_text(" Andres Mogro") wend end.

Page 7: Informe Comunicacion Serial

DIAGRAMA DE FLUJO

INICIO

Inicio el puerto serie en

9600 baudios

Visualizo los datos en el

hyperterminal

Realizo el lazo para el

código ASCII

Retardo 100ms para

observar los caracteres

en el hiperterminal

Envío texto por el pin

transmisor del pic

Page 8: Informe Comunicacion Serial

ESQUEMÁTICO.

FOTOS.

Page 9: Informe Comunicacion Serial

3. Envío de datos desde el PC al pic.

Entradas:

Datos enviados por el PC mediante el puerto serie hacia el pic.

Procesos:

• Inicializo el módulo Usart en 9600 baudios.

• Envío datos desde el PC por el puerto serie.

• Leo datos y muestro en el puerto B.

Salidas:

Los datos que se visualizan en el puerto B mediante leds.

CÓDIGO.

program pc_a_pic DIM A AS BYTE A = 0 trisb = 0 main:

Page 10: Informe Comunicacion Serial

Usart_Init(9600) 'inicializa Usart a 9600 baudio s while true if Usart_Data_Ready = 1 then 'si el dato es recibid o A= Usart_Read 'Lectura del dato recibido PortB =A end if delay_ms(10) wend end.

Page 11: Informe Comunicacion Serial

DIAGRAMA DE FLUJO

INICIO

Inicio el puerto serie en

9600 baudios

Visualizo los datos en el puerto B

mediante leds

Lectura del dato del

puerto serie

Envío datos desde el

PC hacia el pic

Guardo datos en una

variable y envío hacia el

puerto B

Page 12: Informe Comunicacion Serial

ESQUEMÁTICO.

FOTOS.

Page 13: Informe Comunicacion Serial

4. Realice la adquisición de datos de un potenciómetro y envíelos

para que observe en el hyperterminal de Windows.

Entradas:

• Adquirir la señal del potenciómetro del puerto A

Procesos:

• Defino variables

• Inicializo el módulo Usart en 9600 baudios.

• Realizar la conversión Analogo/Digital

• Enviar el valor de la conversión vía puerto Serial a la PC

Salidas:

Los datos que se visualizan en el hyperterminal.

CÓDIGO.

program AnalogoDigital1

dim voltaje as float

dim valor as string[10]

sub procedure init

Page 14: Informe Comunicacion Serial

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.

Page 15: Informe Comunicacion Serial

DIAGRAMA DE FLUJOS:

ESQUEMÁTICO.

INICIO

Definir Variables

Puerto A como salida

Inicializar Puerto Serial

(9600)

Conversor Analógico/Digital

Enviar datos comunicación

serial al PC

End

Page 16: Informe Comunicacion Serial

FOTOS.

Page 17: Informe Comunicacion Serial

5. Desarrollar en programa en Labview, permitir la transmicion y

recepción entre el PIC y el programa Labview.

Entradas:

• Recibir la señal que envía Labview para encender los leds.

• Configuro puerto B como entrada.

Procesos:

• Configuro la comunicación serial.

• Recibo el dato que envía Labview a través del puerto D

• Envío los datos del puerto B al PC

Salidas:

• Visualizo como se encienden los leds.

• Visualizo en Labview el valor que ingresa por el puerto B

CÓDIGO.

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:

Page 18: Informe Comunicacion Serial

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.

Page 19: Informe Comunicacion Serial

DIAGRAMA DE FLUJOS:

INICIO

Puerto D como entrada

Puerto B como salida

Defino variable x,b como

byte

Transmito y envío datos a

través de USART WRITE

End

Visualizo en software y en

hardware los datos que envío y

recibo

Page 20: Informe Comunicacion Serial

ESQUEMÁTICO.

FOTOS.

Page 21: Informe Comunicacion Serial

CONCLUSIONES.

• Utilizar las comunicaciones seriales RS-232.

• En la comunicación serial el uso de un cristal adecuado optimiza la

comunicación serial.

• la comunicación serial está siendo rezagada por la comunicación vía

usb.

BIBLIOGRAFÍA

• Hoja de prácticas de microcontroladores PIC proporcionados por

el Ing. Luis Oñate.

• Ayuda del Programa mikrobasic.

• Ayuda del programa LabView.