Está en la página 1de 14

UNIVERSIDAD POLITECNICA SALESIANA SISTEMAS MICROPROCESADOS I

UNIVERSIDAD POLITCNICA SALESIANA


INGENIERIA ELECTRNICA EN TELECOMUNICACIONES

SISTEMAS MICROPROCESADOS I

Tema: Desarrollo Comunicacin Serial RS- 232 PC-PIC-PC con LabView. Fecha de Realizacin: 2009 / 10 / 10 / ao mes da

Realizado por: Alumnos: Cristian Zapata Francisco Jurado

Periodo Lectivo: 2009- 2010

Cristian Zapata Francisco Jurado

UNIVERSIDAD POLITECNICA SALESIANA SISTEMAS MICROPROCESADOS I

Desarrollo del programa en LabView 1. Creamos un Nuevo Proyecto en LabView

Ventana de presentacin de Inicio de LabView. 2. Ingresamos los controles que en este caso sern los interruptores. En la Ventana del Panel Frontal damos click derecho y aparece un men llamado Controls, una vez situados aqu accedemos al submen Modern y escogemos un control Boolean de la forma que deseamos. La forma de situar a estos iconos se muestra en la figura siguiente:

Repetimos el proceso anterior hasta tener los o controles que representaran los interruptores.
Cristian Zapata Francisco Jurado

UNIVERSIDAD POLITECNICA SALESIANA SISTEMAS MICROPROCESADOS I

3. Colocamos los indicadores en este caso sern 8 Led's En la Ventana del Panel Frontal en el men de Controls, accedemos al submen Modern y escogemos un indicador Boolean de la forma que deseamos, creamos un arreglo con este indicador, en el men Controls en el submen Modern buscamos Arrays, Matrix & Clusters y seleccionamos Array, luego arrastramos nuestro indicador dentro del icono de Array y a este icono lo agrandamos hasta que aparezcan 8 indicadores que representaran nuestros 8 leds, quedando en nuestro panel Frontal de la siguiente forma:

4. Ingresamos la Funcin Stacked Sequence Structure. En la ventana de Diagrama de Bloques en el men Funtions, accedemos al submen Programming, escogemos en la ventana que se muestra en el icono de Structures buscamos Stacked Sequence Structure, la creamos del tamao que se desee, Agregamos tres secuencias, damos click derecho sobre el borde de la estructura creada hacemos click en Add Frame After en la ventana que se despliega este proceso lo repetimos hasta crear las tres secuencias, las cuales nos servirn para realizar la comunicacin serial.

5. Crear la comunicacin Serial. Ingresamos los iconos de manejo del puerto serial, estos se encuentran en el men Functions de la ventana Diagram. Una vez en Fuctions, se accede al submen Instrument I/0, situamos el ratn sobre
Cristian Zapata Francisco Jurado

UNIVERSIDAD POLITECNICA SALESIANA SISTEMAS MICROPROCESADOS I

Serial y aparece una pantalla con los iconos que LabView ofrece para el uso del puerto serial.

a) En la primera secuencia Configuramos el puerto serial para escribir o enviar datos desde el programa hacia el pic, colocamos los iconos de Visa Configure Port, Visa Write y el icono que representa los interruptores que se creo anteriormente dentro de la primera secuencia.

Para enviar datos por el puerto serial necesitamos que sean de tipo String por lo que a los interruptores les hacemos un arreglo, para lo cual dentro del men Funtions en el submenu Programming nos situamos en Array y buscamos el icono Build Array, luego lo agrandamos con la ayuda del mouse hasta obtener 8 entradas y unimos cada entrada a cada interruptor .

Cristian Zapata Francisco Jurado

UNIVERSIDAD POLITECNICA SALESIANA SISTEMAS MICROPROCESADOS I

Para la conversin conversin a tipo String ingresamos en el men Funtions de la ventana de Diagrama de Bloques accedemos al submenu Programming en el icono de Booleans escogemos Boolean Array to Number, y lo unimos a la salida del arreglo creado en el paso anterior.

Luego en el men Funtions submen Programming nos situamos en String una vez ah en el men que se muestra buscamos String/Number Conversion y seleccionamos Number to Decimal String, y lo unimos a la salida del convertidor de Array a numero, y a la entrada de color rosado del icono para escritura del puerto serial llamada Write buffer.

Luego unimos la salida de error del Icono Visa Configure Port a la entrada de error del icono Visa Write.

Cristian Zapata Francisco Jurado

UNIVERSIDAD POLITECNICA SALESIANA SISTEMAS MICROPROCESADOS I

En el icono Visa Configure Port nos situamos con el mouse sobre la entrada timeout (10sec).

Damos click derecho y en el men que se despliega damos click en Create y en el submenu en Constant, nos aparecer una constante de 10000 la cual no modificamos quedando:

Luego en el icono de Configure Serial Port nos situamos sobre la entrada llamada Visa Resource name damos click derecho en el men que aparece seleccionamos Create y luego seleccionamos Indicator, lo sacamos fuera de la secuencia y creamos una variable local, para crear esta variable se da un click secundario sobre el icono creado en el men que aparece seleccionamos Create y Local Variable.

Cristian Zapata Francisco Jurado

UNIVERSIDAD POLITECNICA SALESIANA SISTEMAS MICROPROCESADOS I

El icono de la variable local ingresamos a la secuencia y unimos ala entrada llamada Visa Resource name de los iconos Visa Configure Port y Visa Write quedando la primera secuencia de la siguiente manera:

b) En la segunda secuencia Configuramos el puerto serial para leer o recibir datos, para lo cual ingresamos los iconos de Visa Configure Port, Visa Read, siguiendo los pasos realizados para la secuencia anterior.

Creamos otra variable local del icono VISA resource name y unimos a las entradas de Visa resource name de los iconos Configure Port y Visa Read, tambin unimos la salida de error del icono Configure Port con la entrada de error del icono Visa Read, y creamos la constante en el icono Configure Serial

Cristian Zapata Francisco Jurado

UNIVERSIDAD POLITECNICA SALESIANA SISTEMAS MICROPROCESADOS I

Port de la misma manera que se lo hizo en la secuencia anterior quedando nuestra secuencia de la siguiente forma:

Los datos que recibimos por el puerto serial son de tipo String por lo que realizamos una conversin de String a datos del tipo Boolean Array, para poder visualizar los datos recibidos ingresamos en el men Funtions en el submen Programming en String buscamos String/Number Convertion buscamos el icono de Decimal String to Number, adicionalmente ingresamos al submen Programming en Numeric nos situamos en Conversion y buscamos el icono Number to Boolean Array, colocamos en esta secuencia el arreglo de indicadores (Leds) y los conectamos de la siguiente forma:

Cristian Zapata Francisco Jurado

UNIVERSIDAD POLITECNICA SALESIANA SISTEMAS MICROPROCESADOS I

Luego nos situamos sobre el icono Visa Read para indicar el numero de bits que se van a leer, damos click secundario en la entrada llamada Bit count aparecer un men damos click en Create luego en Control quedando nuestra secuencia de la siguiente forma:

c) Para la ultima secuencia colocamos el icono Visa Close, siguiendo los pasos indicados para crear la comunicacin serial,esto lo hacemos para liberar el puerto serial cuando se termine de usar el programa, adicionalmente ingresamos un cuadro de dialogo de error en el men Funtions en el submen Programming buscamos el icono Dialog & User Interface e ingresamos el icono de Simple Error Handler.vi quedando nuestra secuencia de la siguiente manera:

Cristian Zapata Francisco Jurado

UNIVERSIDAD POLITECNICA SALESIANA SISTEMAS MICROPROCESADOS I

6. Con las diferentes herramientas que encontramos en LabView podemos modificar la presentacin de la interfaz para que sea mas agradable al usuario pudiendo quedar de la siguiente manera:

7. Realizamos la programacin para el PIC16F877A, armamos el circuito siguiendo el esquema que se muestra a continuacin obteniendo as la comunicacin PIC-PC-PIC con la Interfaz desarrollada en LabView. Nota.- El Interfaz fue desarrollado en LabView (Versin 8.5) Elementos Utilizados: PIC 16F877A MAX 232 Capacitores 1Uf Resistencias 330 Diodos Led's

Cristian Zapata Francisco Jurado 10

UNIVERSIDAD POLITECNICA SALESIANA SISTEMAS MICROPROCESADOS I

Diagrama Esquemtico:

Cristian Zapata Francisco Jurado 11

UNIVERSIDAD POLITECNICA SALESIANA SISTEMAS MICROPROCESADOS I

Diagrama de conexin

Cdigo para el PIC16F877A realizado en Microbasic


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.
Cristian Zapata Francisco Jurado 12

UNIVERSIDAD POLITECNICA SALESIANA SISTEMAS MICROPROCESADOS I

Fotos Funcionamiento:

Circuito armado en el Protoboard

Cristian Zapata Francisco Jurado 13

UNIVERSIDAD POLITECNICA SALESIANA SISTEMAS MICROPROCESADOS I

Programa en LabView

Bibliografa Ayuda de Microbasic Apuntes de la Materia Sistemas Microprocesados I, Ing. Luis Oate http://www.ni.com/

Cristian Zapata Francisco Jurado 14

También podría gustarte