Anexo H: Código de la Aplicación

Documentos relacionados
INGENIERIA EN MICROCONTROLADORES

INGENIERIA EN MICROCONTROLADORES. Protocolo RS-232. Introducción

Universidad de Sevilla Pág. 133

'Option Explicit. Private Sub acerca_click() yacerca.show End Sub. Private Sub activar_click() Option1.Value = True End Sub

El control MSComm proporciona comunicaciones serie para que su aplicación pueda transmitir y recibir datos a través de un puerto serie.

Interfaces. Introducción a la programación en Visual Basic 6.0. Curso 2009

FUNDAMENTOS DE INFORMÁTICA

Tema: Manejo del Pue r t o Serie

Open, Close, Freefile. Write# y Input#. Abrir y cerrar ficheros con Visual Basic. Leer y guardar datos. Ejemplos prácticos.

VISUAL BASIC Archivos en Visual Basic Proyectos Archivos

Cómo controlar el puerto serie usando C#? Javier Gómez. Ingeniero de Telecomunicaciones por la Escuela Tecnica Superior de Bilbao

ManMicroPaP dll Visual Basic Rev /10/2006 Autor: Ferran Sanabria MicroPaP.com. MicroPaP.dll Visual Basic Manual de usuario

Fundamentos de Programación

PRÁCTICA LTC-26: RUIDO Y ERRORES DE TRANSMISIÓN

Tema: Interconexión a la PC mediante Arduino

SADE en LabView. IO PIN: SADE cuenta con 13 pines que se pueden configurar como entrada, salida e inclusive como PWM.

4.1 DIAGRAMA DEL CIRCUITO DEL MODULO DE CONTROL:

Práctica 6. Validación de Datos II. Mas Controles.

ELEMENTOS BÁSICOS PARA LA PROGRAMACIÓN DE FUNCIONES TIPOS DE DATOS. Constantes

GUIA DE EJERCICIOS Nº 2 INSTRUMENTACIÓN AVANZADA

COLEGIO PABLO DE TARSO IED CONSTRUCCION DE PROYECTOS DE VIDA PRODUCTIVOS VISUAL BASIC PRÁCTICAS DOC RAUL MONROY PAMPLONA

Manual de Visual Basic Intermedio Autor: Jorge Alvarez

PROYECTO FIN DE CARRERA

CURSO: MICROCONTROLADORES UNIDAD 4: COMUNICACIÓN SERIE- ARDUINO PROFESOR: JORGE ANTONIO POLANÍA

PRACTICA Nº 8. String String String String String

Proyecto Fin de Carrera Desarrollo de un conjunto de módulos OCX en Visual Basic para un sistema de adquisición de datos vía USB

SÍNTESIS DE CIRCUITOS DIGITALES CON VHDL.

Diseño de varios formularios ligados para procedimiento de estudio de crédito

Manual de Visual Basic Principiante Autor: Jorge Alvarez

Universidad Tecnológica Nacional Departamento De Electrónica Facultad Regional Buenos Aires. Informática II GUIA DE TRABAJOS PRACTICOS

Abstracción, código y verificación del programa ejercicio algoritmo de ordenación resuelto con Visual Basic. (CU00358A)

NXA FUNCIONES PARA EXTRACCIÓN DE DATOS

INTERCAMBIO DINAMICO DE DATOS

ANEXO II. Variables utilizadas en el programa

La siguiente gráfica muestra cada uno de los ítems que podemos encontrar en la interfaz gráfica COM.

MODULO TRANSCEPTOR DE DATOS PUNTO A PUNTO WIZ-434-SML-IA

Tema: Arduino y Comunicación Serial con Visual Basic

2. Estructuras condicionales

GUIA DE EJERCICIOS Nº 3 INSTRUMENTACIÓN AVANZADA

Funciones en Visual Basic

Algoritmos y Programación Clase 7

Practica 10. Ordenamiento y Búsqueda.

Práctica 6 Operaciones aritméticas, lógicas y relacionales

Nota Técnica Conceptos básicos para establecer un Enlace Serie Inalámbrico

COLEGIO PABLO DE TARSO IED CONSTRUCCION DE PROYECTOS DE VIDA PRODUCTIVOS VISUAL BASIC PRÁCTICAS DOC RAUL MONROY PAMPLONA

Ejemplos ejercicios resueltos Visual Basic. Arrays estáticos, uso de constantes vbyes, vbno y MsgBox. (CU00334A-1)

PIC MICRO ESTUDIO Display de 2 y4 Dígitos RS-232 (Clave 701 y 702) Guía de Uso

LABORATORIO DE ARQUITECTURA DE COMPUTADORES. I. T. I. SISTEMAS / GESTIÓN GUÍA DEL ALUMNO

Solución de Examen de Comunicación de Datos

Comunicación Serial: Conceptos Generales

Sentencias DO-WHILE EN C++

aprenderaprogramar.com Sección: Cursos Categoría: Curso Visual Basic Nivel I Fecha revisión: 2029 Autor: Mario R. Rancel

Microprocesadores, Tema 8:

Práctica 8. Usando varios formularios.

PROTOCOLO DE COMUNICACIÓN:

FAGOR RS-232 PARA VISUALIZADORES NV

Instituto Tecnológico de Costa Rica

Practica 12. Manejo de Archivos de tipo (registros).

GENERACIÓN DE CÓDIGO ORIENTADO A OBJETOS

Manejo de Software para Microcomputadoras. Visual Basic para Aplicaciones en Excel

SISTEMAS INFORMATICOS PRÁCTICA SERIE

Ubound y Lbound en Visual Basic. Conocer índice superior e inferior de arrays (arreglos) Ejemplos y ejercicios. (CU00343A)

Visual Basic: procedimientos Sub y funciones Function. Tipos de parámetros y tipos de retorno. Ejemplos (CU00340A)

III. Generación de Código orientado a objetos

Dra. Jessica Andrea Carballido

Prof. Luis Gerardo Peña Camacho

Ficheros conceptos. Manejo de ficheros en C. Apertura del fichero Función fopen: nombre del fichero. Apertura del fichero Función fopen

CAPITULO V CONSTRUCCION DEL SOFTWARE

TARJETA GIROSCOPIO, L3GD20. SIGMA ELECTRONICA

MODULO II PROGRAMACIÓN ORIENTADA A EVENTOS

PROGRAMACIÓN CON VBA: MACROS EXCEL Manual de Referencia para usuarios. Salomón Ccance CCANCE WEBSITE

Hub Concentrador USB de 8 Puertos Serie

Ejemplos Visual Basic: función Val, arrays de controles, generar números aleatorios, ficheros de texto. (CU00333A)

5. Subprogramas Fundamentos de Informática

En esta sección se describen las variables, constantes, tipos de datos, operadores y estructuras de control

Curso de Programación II con Visual Basic.Net

Prácticas de Periféricos Interfaces y Buses

Estructuras de control

CREACION DE UN TROYANO EN VB 6.0 por BlackShadow. Como esta Constituido un Troyano?

Ficheros. Archivo, o fichero: Características:

KURT KAUF S.A. Tema Principal: Máquinas Fecha Entrada: 26/10/01 Tema: Instrucciones revisado: 21/11/02. Paro por código de desplazamiento de bastidor

Ejercicios resueltos Visual Basic y.net con arrays (arreglos), Do While, For, mod, ficheros, Ubound. Cálculo serie numérica (CU00344A)

Microsoft Visual Basic

6. Entrada y Salida Explicación de la interfaz entre el computador y el mundo exterior.

2.5-1 USART Introducción.

SADE. Biblioteca para JAVA

Ejercicio * N N X X X X X X X X X X X X X X X X X X X X

INSTITUTO FRANCISCO POSSENTI A.C. Per crucem ad lucem. Preparatoria (1085)

Parte 4: Estructuras de Control

E/S: Processing & Arduino Marco Pérez Hernández

ESTUDIO Y ADAPTACIÓN DEL PROGRAMA VTF

Utilizar los elementos básicos de la programación de interfaces gráficas de usuario para el diseño y desarrollo de programas de aplicación.

Programación en Excel 1 Programación

Interface para el sistema VELBUS con conexión USB y en serie

Ejemplos de uso de forms, labels, inputbox y msgbox en Visual Basic. (CU00332A)

Desarrollo de un programa de software para el estudio de viabilidad de proyectos de ingeniería Pág. 1

Introducción a C# y la plataforma.net. Pablo Zaidenvoren 2013

Transcripción:

Anexo H: Código de la Aplicación Primera Aplicación: Escribiendo datos sobre la pantalla. Aplicación que utilizamos para comprobar que la transmisión entre el módulo USB del Pic y el ordenador se realiza de forma correcta, verificando que no existe pérdida de información y que la lectura de los datos se realiza de manera adecuada. Option Explicit Dim eje As Integer Private Sub Conectar_Click() 'comprueva que el puerto este cerrado para poder abrirlo If MSComm1.PortOpen = False Then 'determina el puerto que hemos seleccionado MSComm1.CommPort = 6 'determina: 9600-Velocidad en Baudios, N-No utiliza ninguna paridad, '8-Cantidad de bits de envio y recepcion por paquete, '1-Determina los bits de parada MSComm1.Settings = "9600,N,8,1" 'lee todo el buffer de entrada para que quede vacio MSComm1.InputLen = 0 'Abre el puerto seleccionado MSComm1.PortOpen = True Me.Caption = "Conectado por el puerto " & MSComm1.CommPort Private Sub Desconectar_Click() If MSComm1.PortOpen Then 'cierra el puerto MSComm1.PortOpen = False Me.Caption = "Desconectado" Private Sub Form_Unload(Cancel As Integer) Desconectar_Click Universidad de Sevilla Pág. 183

ANEXO H Private Sub LIMPIAR_Click() List1.Clear List2.Clear List3.Clear List4.Clear 'El evento OnComm se genera siempre que cambia el valor de la propiedad 'CommEvent e indica que se ha producido un evento o un error en la comunicación. Private Sub MSComm1_OnComm() Dim i As Integer Dim datain As Variant Dim dato_array() As Byte Dim TIEMPO(0 To 20000) As Single Dim TENSION(0 To 20000) As Single If MSComm1.CommEvent = comevreceive Then If MSComm1.InBufferCount = 4 Then 'Recoge el valor de entrada datain = MSComm1.Input 'Cambio formato a 4 bytes dato_array = datain TIEMPO(i) = dato_array(2) TIEMPO(i) = TIEMPO(i) * 256 TIEMPO(i) = TIEMPO(i) + dato_array(0) 'Obtenemos el valor de tiempo TENSION(i) = dato_array(6) TENSION(i) = TENSION(i) * 256 TENSION(i) = TENSION(i) + dato_array(4) 'Obtenemos el valor de la conversión A/D If eje = 0 Then List1.AddItem TIEMPO(i) List2.AddItem TENSION(i) eje = 1 ElseIf eje = 1 Then List3.AddItem TENSION(i) eje = 2 ElseIf eje = 2 Then List4.AddItem TENSION(i) eje = 0 i = i + 1 Pág. 184 Universidad de Sevilla

ANEXO H Diseño Vemos los resultados obtenidos con la aplicación: CASO 1: Reposo Aplicación Iniciándose Comprobamos que todos los ejes la aceleración medida en los distintos ejes es constante, variando la medida del eje z ya que este se encuentra sometido a la aceleración de la gravedad. Fig. 105 Escritura de los datos en pantalla. Situación Reposo. CASO 2: Movimiento sobre una superficie Plana. En este caso comprobamos como los valores leídos para el eje z se mantienen en torno a un valor constante mientras que los valores para los ejes x y e varían según la aceleración a la que se estén viendo sometidos. Universidad de Sevilla Pág. 185

ANEXO H Fig. 106 Escritura de los datos en Pantalla Pág. 186 Universidad de Sevilla

ANEXO H Diseño Aplicación: PFC_Detector de Movimiento. Aplicación que dibuja las aceleraciones que el dispositivo envía para cada uno de los ejes. Option Explicit Dim eje As Integer Dim n As Integer Private Sub Conectar_Click() 'comprueva que el puerto este cerrado para poder abrirlo If MSComm1.PortOpen = False Then 'determina el puerto que hemos seleccionado MSComm1.CommPort = 6 'determina: 9600-Velocidad en Baudios, N-No utiliza ninguna paridad, '8-Cantidad de bits de envio y recepcion por paquete, '1-Determina los bits de parada MSComm1.Settings = "9600,N,8,1" 'lee todo el buffer de entrada para que quede vacio MSComm1.InputLen = 0 'Abre el puerto seleccionado MSComm1.PortOpen = True Me.Caption = "Conectado por el puerto " & MSComm1.CommPort Picture1.AutoRedraw = True Picture2.AutoRedraw = True Picture3.AutoRedraw = True Picture1.Line (0, 0)-(1000, 0), vbblack Picture1.Line (0, 0)-(0, 200), vbblack Picture2.Line (0, 0)-(1000, 0), vbblack Picture2.Line (0, 0)-(0, 200), vbblack Picture3.Line (0, 0)-(1000, 0), vbblack Picture3.Line (0, 0)-(0, 200), vbblack Picture1.AutoRedraw = False Picture2.AutoRedraw = False Picture3.AutoRedraw = False Private Sub Desconectar_Click() If MSComm1.PortOpen Then 'cierra el puerto MSComm1.PortOpen = False Me.Caption = "Desconectado" Universidad de Sevilla Pág. 187

ANEXO H Private Sub Form_Unload(Cancel As Integer) Desconectar_Click Private Sub LIMPIAR_Click() Picture1.AutoRedraw = False Picture2.AutoRedraw = False Picture3.AutoRedraw = False Picture1.Cls Picture2.Cls Picture3.Cls 'El evento OnComm se genera siempre que cambia el valor de la propiedad 'CommEvent e indica que se ha producido un evento o un error en la comunicación. Private Sub MSComm1_OnComm() Dim i As Integer Dim datain As Variant Dim dato_array() As Byte Dim TIEMPO(0 To 20000) As Single Dim TENSION(0 To 20000) As Single If MSComm1.CommEvent = comevreceive Then If MSComm1.InBufferCount = 2 Then 'Recoge el valor de entrada datain = MSComm1.Input 'Cambio formato a 4 bytes dato_array = datain TENSION(i) = dato_array(2) TENSION(i) = TENSION(i) * 256 TENSION(i) = TENSION(i) + dato_array(0) TENSION(i) = ((TENSION(i) * 5) / 1024) If n < 1000 Then If dato_array(4) = 0 Then Picture1.PSet (n, TENSION(i) * 40) ElseIf dato_array (4) = 1 Then Picture2.PSet (n, TENSION(i) * 40) ElseIf dato_array(4) = 2 Then Picture3.PSet (n, TENSION(i) * 40) n = n + 1 Pág. 188 Universidad de Sevilla

ANEXO H Diseño Else Picture1.AutoRedraw = False Picture2.AutoRedraw = False Picture3.AutoRedraw = False Picture1.Cls Picture2.Cls Picture3.Cls n = 0 i = i + 1 Universidad de Sevilla Pág. 189