Escolar Documentos
Profissional Documentos
Cultura Documentos
SISTEMAS MICROPROCESADOS I
SISTEMAS MICROPROCESADOS I
Realizado por:
Cristian Zapata
Francisco Jurado 1
UNIVERSIDAD POLITECNICA SALESIANA
SISTEMAS MICROPROCESADOS I
A este objeto creamos una constante en la entrada Automation Refnum, damos click derecho sobre la
constante creada y seleccionamos Select ActiveX Class y en Browse buscamos nuestro archivo dll el
Cristian Zapata
Francisco Jurado 2
UNIVERSIDAD POLITECNICA SALESIANA
SISTEMAS MICROPROCESADOS I
cual lo debemos situar en la misma carpeta en la que se va a grabar este programa en LabView.
4. Dentro del lazo While Loop ingresamos el icono de Invoke Node y lo unimos al primer Invoke Node
creado luego le damos un click y en el menú que nos aparece seleccionamos la opción readhid y en el
icono aparecerán dos niveles readhid y Buffer, ingresamos al menú Functions en el submenú
Cristian Zapata
Francisco Jurado 3
UNIVERSIDAD POLITECNICA SALESIANA
SISTEMAS MICROPROCESADOS I
Programming seleccionamos Array y escogemos la opción Initialize Array, a esta función en la entrada
element creamos una constante de valor cero, la entrada dimension size 0 creamos una constante con
el valor de 20, y la salida initialized array la unimos a la entrada de Buffer del segundo Invoke Node
creado
6. Unimos la salida readhid de la segunda función Invoke Node creada al símbolo del Case Structure
que sirve para seleccionar el case que puede ser TRUE o FALSE.
7. Dentro del case TRUE de la estructura ingresada del menú Funtions accedemos al submenú
Connectivity seleccionamos ActiveX y escogemos Variant To Data, ingresamos al menú Functions al
Cristian Zapata
Francisco Jurado 4
UNIVERSIDAD POLITECNICA SALESIANA
SISTEMAS MICROPROCESADOS I
submenú Programming seleccionamos Array y escogemos la opción Array Constant dentro de este
ingresamos una constante de valor cero y unimos a la entrada type de la función Variant To Data, de la
salida Buffer de la segunda función Invoke Node unimos a la entrada variant de la función Variant To
Data.
Cristian Zapata
Francisco Jurado 5
UNIVERSIDAD POLITECNICA SALESIANA
SISTEMAS MICROPROCESADOS I
10. Continuando dentro del case TRUE ahora creamos nuevamente otra función Invoke Node de la
misma forma que las anteriores y la unimos a la segunda función Invoke Node.
11. Le damos un click a la tercera función Invoke Node creada y en el menú que aparece
seleccionamos la opción writehid y automáticamente al icono se añaden dos opciones.
Cristian Zapata
Francisco Jurado 6
UNIVERSIDAD POLITECNICA SALESIANA
SISTEMAS MICROPROCESADOS I
13. En la Ventana Front Panel ingresamos al menú Controls en el submenú Modern seleccionamos
Boolean y escogemos ocho controles que representaran un dipswitch quedando nuestro panel Frontal
de la siguiente forma.
14. Retornamos a la Ventana Block Diagram y colocamos fuera del Case Structure pero dentro del
While Loop nuestros ocho controles que representan interruptores, del menú Functions del submenú
Programming seleccionamos Array y escogemos Build Array y lo extendemos hasta que tenga 8
entradas a las cuales unimos los interruptores, ingresamos nuevamente al submenú Programming,
seleccionamos Boolean donde escogemos la opción Boolean Array To Number unimos la salida de la
función Build Array a la entrada de la función Boolean Array To Number y la salida de esta a la entrada
new element/subarray de la función Replace Array Subset que se encuentra dentro del case TRUE del
Case Structure.
Cristian Zapata
Francisco Jurado 7
UNIVERSIDAD POLITECNICA SALESIANA
SISTEMAS MICROPROCESADOS I
15. Ahora la primera salida de la segunda función Invoke Node llamada _Class3 la unimos al Case
Structure.
17. Como se observa en la gráfica anterior al realizar la conexión esta queda con un cuadro de color
blanco en el borde del Case Structure por lo que nos colocamos en case FALSE y realizamos la
conexión que se muestra a continuación y el cuadro de color blanco cambia y toma el color de la
conexión.
Cristian Zapata
Francisco Jurado 8
UNIVERSIDAD POLITECNICA SALESIANA
SISTEMAS MICROPROCESADOS I
18. Una vez realizado los pasos anteriores en la Ventana Front Panel podemos decorar a nuestro
programa con las diferentes herramientas que presenta LabView para mejorar su presentación
quedando nuestro Programa y su presentación para el usuario de la siguiente forma:
Panel frontal:
Cristian Zapata
Francisco Jurado 9
UNIVERSIDAD POLITECNICA SALESIANA
SISTEMAS MICROPROCESADOS I
Programa:
Cristian Zapata
Francisco Jurado
10
UNIVERSIDAD POLITECNICA SALESIANA
SISTEMAS MICROPROCESADOS I
Diagrama Esquemático:
Cristian Zapata
Francisco Jurado
11
UNIVERSIDAD POLITECNICA SALESIANA
SISTEMAS MICROPROCESADOS I
DEFINE OSC 48
DEFINE LOADER_USED 1
' ************************************************************
' * main program loop - remember, you must keep the USB *
' * connection alive with a call to USBService every couple *
' * of milliseconds or so... *
' ************************************************************
Cristian Zapata
Francisco Jurado
12
UNIVERSIDAD POLITECNICA SALESIANA
SISTEMAS MICROPROCESADOS I
trisc.7=0
trisb=%00000000
portc=0
portb=0
adcon1=$0F
CMCON=7
CVRCON=0
rcon.7=0
ProgramStart:
USBbUFFER[0]=PORTA
gosub DoUSBOut
gosub DoUSBIn
goto ProgramStart
' ************************************************************
' * receive data from the USB bus *
' ************************************************************
DoUSBIn:
USBBufferCount = USBBufferSizeRX ' RX buffer size
USBService ' keep connection alive
USBIn 1, USBBuffer, USBBufferCount, EndDoUSBIn ' read data, if available
PORTB=USBBUFFER[0]
enddousbin:
return
' ************************************************************
' * wait for USB interface to attach *
' ************************************************************
DoUSBOut:
USBBufferCount = USBBufferSizeTX ' TX buffer size
USBService ' keep connection alive
USBOut 1, USBBuffer, USBBufferCount, fDoUSBOut ' if bus available, transmit data
fdousbout:
return
end
Cristian Zapata
Francisco Jurado
13
UNIVERSIDAD POLITECNICA SALESIANA
SISTEMAS MICROPROCESADOS I
Programa en LabView
Cristian Zapata
Francisco Jurado
14
UNIVERSIDAD POLITECNICA SALESIANA
SISTEMAS MICROPROCESADOS I
Bibliografía
– Ayuda de Microcode
– Apuntes de la Materia Sistemas Microprocesados I, Ing. Luis Oñate
– http://www.ni.com/
Cristian Zapata
Francisco Jurado
15