SlideShare una empresa de Scribd logo
CONTENIDO:
Comunicación Serial
Prácticas
1
LabView
MICROCONTROLADORES
& LABVIEW
2
LabView
Comunicación Serial:
Hardware
3
LabView
MICROCONTROLADOR - UC:
El corazón de todo módulo programable es el microcontrolador (el PIC16F886
para los ejemplos que mostraremos), por tanto debemos considerar lo
importante de conocer las pines de conexión del microcontrolador:
- Programación serial ICSP: MCLR (Pin1), ICSPDAT (Pin28), ICSPCLK (Pin27), VSS
(GND), VDD (Vcc).
- Entradas analógicas: AN0, AN1, AN2, AN3, AN4, AN8, AN9, AN10, AN11, AN12,
AN13.
- Modulación de Ancho de Pulso (PWM): CCP1 y CCP2.
- Comunicación serial: TX y RX.
4
LabView
MICROCONTROLADOR - UC:
ICSP Programación Serial en Circuito.
PWM
Entradas
Analógicas
Com.
Serial
GND
VCC
Master Clear
5
LabView
Pasos para configurar el uc:
Para programar el microcontrolador debemos saber configurar los registros, entre
los cuales destacan:
- Registro TRIS: Este registro de 8 bits nos permite configurar los puertos
(A,B,C,E) del microcontrolador pin a pin como entrada o salida.
- Registro ANSEL y ANSELH: Nos permite configurar como entradas digitales ó
analógicas de los pines que poseen la habilidad de digitalizar entradas
analógicas.
- Registro PORT: Nos permite obtener el estado lógico booleano de las entradas
digitales, sin embargo a los pines que son salido nos permite poner un estado
lógico booleano.
6
LabView
Pasos para configurar el uc:
MICROCONTROLADOR
PUERTOS:
TRISX=(7,6,5,4,3,2,1,0)
X=A,B,C,E.
1->In. 0->Out.
ENTRADAS:
ANSEL=(_,_,_,4,3,2,1,0)
ANSELH=(_,_,13,12,11,10
,9,8)
1->Anlg. 0->Dig.
SALIDAS:
PORTX=(7,6,5,4,3,2,1,0)
1, 0.
7
LabView
Pasos para programar:
Se desarrolla el
algoritmo de
programación en el
computador en un
ID o software de
desarrollo, para
microcontroladores.
Compilar código
realizado y
generamos el
archivo “.HEX”.
Programar el
microcontrolador
importando el
archivo “.HEX”.
8
LabView
Comunicación Serial:
Software
Software:
9
LabView
VISA Configure Serial Port:
10
LabView
VISA Write:
11
LabView
VISA Read:
VISA Bytes at Serial Port:
12
LabView
13
LabView
PRÁCTICA 1:
Uso de Botón y Leds
RECURSOS: Código PIC
14
LabView
Uso de Botón y Leds:
PIC16F886
Leds PuertoBBotón, E.3
BOTONERA
LEDS
Esta práctica nos enseñará el uso del botón para controlar el encendido y apagado de los
leds. Usaremos el botón para controlar el cambio de estado lógico de las salidas que
encienden o apagan los leds, adicional a ello deberá tener un anti rebote que evite cambiar
incontrolablemente el estado de la salida digital. Recordar que los leds están conectados por
hardware al puerto b.
15
LabView
Código de Programación:
1- Creamos symbol de el botón usado, el mismo que está conectado por
hardware al puerto E.3.
2- Empezamos configurando el registro TRISB como salida, además como entrada
el registro TRISE.3.
3- Usamos el registro TRISB para asignar valor booleanos a las salidas del puerto
B donde están conectados los leds por hardware.
4- Usamos la condición IF para validar el cambio de estado del botón, adicional a
ello usaremos el bucle WHILE para programar el anti rebote.
16
LabView
Código de Programación:
program ejerccio1
SYMBOL BOTON=PORTE.3
DIM VALOR AS BYTE
MAIN:
'----------------CONFIG IN-OUT----------------
' Registro PUERTO A
TRISA = 0X00 '%00000000=0' PORTA -> out
' Registro PUERTO B
TRISB = 0X00 ' PORTB -> out para los leds
' Registro PUERTO C
TRISC = 0X00 ' PORTB -> out para los leds
' Registro PUERTO E
TRISE = %00001000 ' PORTE.3 <-in
'----------------CONFIG IN -> DIG ó ANLG-----
' Seleccion de registro analogico. 1 analogico, 0
digitales
ANSEL = 0X00 ' AN<7:0> AN(_,_,_,4,3,2,1,0)
ANSELH = 0X00 ' AN<13:8> AN(_,13,12,11,10,9,8)
'---------------- SETEAR LAS SALIDAS---------
PORTB=%10101010
delay_ms(300)
PORTB=%01010101
delay_ms(300)
PORTB=0
'-----------------SET DE VARIABLES-----------
VALOR=0
WHILE(1)
IF(BOTON =0) THEN 'SI PRESIONO EL BOTON
MCLR
PORTB= NOT PORTB
WHILE(BOTON=0)WEND 'ESPERO QUE SUELTE
EL BOTON MCLR
END IF
WEND
END.
17
LabView
Cargar el Firmware:
1.- Conectamos el programador de microcontroladores al módulo de desarrollo (tarjeta
programable).
2.- Conectamos el hardware programador al computador y Haciendo uso del software
del programador de microcontroladores, luego importamos el archivo “.HEX”.
3.- Procedemos a programar el módulo de desarrollo.
18
LabView
PRÁCTICA 2:
Uso Contador y Leds
RECURSOS: Código PIC
LabView
Uso Contador y Leds:
Esta práctica nos enseñará el uso de variables para controlar la información binaria que se
muestra en los leds. Usaremos la variable como contador y para incrementar pausadamente
usaremos un delay de 200 ms. Recordar que los leds están conectados por hardware al
puerto b.
PIC16F886
Leds PuertoBBotón, E.3
LEDS=CONTADOR+1
20
LabView
Código de Programación:
1- Creamos symbol para el puerto b, que es donde están conectados los leds por hardware.
2- Creamos una variable tipo Byte llamada CNT.
3- Empezamos configurando el registro TRISB como salida.
4- Usaremos el symbol LED para asignar la varibale a las salidas de leds.
program leds
'----------SYMBOL.----------
SYMBOL LED=PORTB
SYMBOL BTN=PORTE.3
'-----CREAR VARIABLES-------
DIM CNT AS BYTE
main:
'------CONFIG IN (1)- OUT (0)------
TRISA=%00000000
TRISB=%00000000 'Leds -> OUT
TRISC=%00000000
TRISE=%00001000 'RE3 -> IN BOTONERA
'--CONFIG IN: DIG (0)- ANALOG (1)---
ANSEL= %00000000 '<_,_,_,An4,An3,An2,An1,An0>
'An0->A0, An1->A1, An2->A2, An3->A3, An4->A5
ANSELH= %00000000 '<_,_,An13,An12,An11,An10,An9,An8>
'An8->B2, An9->B3, An10->B1, An11->B4, An12->B0, An13->B5
'-----SET DE VARIABLES----
CNT=0
while (1)
LED=CNT
INC(CNT)
DELAY_MS(200)
wend
end.
21
LabView
Cargar el Firmware:
1.- Conectamos el programador de microcontroladores al módulo de desarrollo
(tarjeta programable).
2.- Conectamos el hardware programador al computador y Haciendo uso del software
del programador de microcontroladores, luego importamos el archivo “.HEX”.
3.- Procedemos a programar el módulo de desarrollo.
22
LabView
PRÁCTICA 3:
Uso Botón, Contador y Leds
RECURSOS: Código PIC
LabView
Uso Contador y Leds:
Esta práctica nos enseñará el uso del botón para manipular una variable, para controlar el
encendido de los leds. Usaremos el botón para incrementar la variable usándola así como
un contador. Recordar que los leds están conectados por hardware al puerto b.
Leds PuertoBBotón, E.3
PIC16F886
BOTONERA
LEDS=CONTADOR+1
24
LabView
Código de Programación:
1- Creamos un symbol de el botón usado, el mismo que está conectado por
hardware al puerto E.3.
2- Creamos un symbol para el puerto b, que es donde están conectados los leds por
hardware.
3- Creamos una variable tipo Byte llamada CNT.
4- Empezamos configurando el registro TRISB como salida, además como entrada el
registro TRISE.3.
5- La condición IF nos permite validar el cambio de estado del botón, adicional a ello
usaremos el bucle WHILE para programar el anti rebote y evitar así que incremente
la variable más de una vez.
6- Usamos la función INC para incrementar la variable en una unidad.
7- El registro TRISB nos permite asignar un valor a las salidas del puerto B donde
están conectados los leds por hardware.
25
LabView
Código de Programación:
program leds
'----------SYMBOL.----------
SYMBOL LED=PORTB
SYMBOL BOTON=PORTE.3
'-----CREAR VARIABLES-------
DIM CNT,VALOR AS BYTE
main:
'------CONFIG IN (1)- OUT (0)------
TRISA=%00000000
TRISB=%00000000 'Leds -> OUT
TRISC=%00000000
TRISE=%00001000 'RE3 -> IN BOTONERA
'--CONFIG IN: DIG (0)- ANALOG (1)---
ANSEL= %00000000 '<_,_,_,An4,An3,An2,An1,An0>
'An0->A0, An1->A1, An2->A2, An3->A3, An4->A5
ANSELH= %00000000
'<_,_,An13,An12,An11,An10,An9,An8>
'An8->B2, An9->B3, An10->B1, An11->B4, An12->B0,
An13->B5
'-----SET DE VARIABLES----
CNT=0
while (1)
IF(BOTON =0) THEN 'SI PRESIONO EL BOTON MCLR
INC(VALOR) 'INCREMENTO VALOR=VALOR+1
PORTB=VALOR 'ENVIO EL VALOR DE LA
VARIABLE A LOS LED-PORTB
WHILE(BOTON=0)WEND 'ESPERO QUE SUELTE
EL BOTON MCLR
END IF
wend
end.
26
LabView
Cargar el Firmware:
1.- Conectamos el programador de microcontroladores al módulo de desarrollo
(tarjeta programable).
2.- Conectamos el hardware programador al computador y Haciendo uso del software
del programador de microcontroladores, luego importamos el archivo “.HEX”.
3.- Procedemos a programar el módulo de desarrollo.
27
LabView
PRÁCTICA 4:
Ejemplo Slide-Meter
RECURSOS: Código LabView
LabView
Slide-Meter:
Diseñar un VI que permita desde el panel frontal ingresar un valor numérico de 8 bits sin
signo con un slide horizontal y que permita visualizar este valor en un Meter.
En este ejercicio aprendemos a realizar una interfaz. En el panel frontal usaremos un
control numérico para generar un valor numérico y también un indicador numérico para
visualizar dicho valor. Además usaremos un control booleano para dar stop al programa.
Front Panel:
LabView
Front Panel:
VI
LabView
Block Diagram:
En el diagrama de bloques inicializaremos el indicador numérico con una constante
cero. Usaremos un “While Loop” como una lazo condicional que dependerá del esta
booleano del control “Stop”. Dentro del lazo condicional conectaremos el control
numérico a la variable local del indicador numérico “Meter”.
LabView
Block Diagram:
32
LabView
PRÁCTICA 5:
Ejemplo Boolean, Char y Case
Structure
RECURSOS: Código LabView
LabView
Boolean, Char y Case Structure:
Diseñar un VI que permita desde un control booleano poner en un indicador numérico
dos posibles valores (0 ó 10) y en un indicador de texto (VERDADERO - FALSO). Usar la
estructura While Loop.
En este ejercicio aprendemos a realizar una interfaz con control booleano en indicador
numérico y booleano. En el panel frontal usaremos un control booleano para generar
dos posibles valores numéricos que veremos en el visualizador numérico, usaremos
también un indicador de texto, además el estado booleano del botón se verá en un led
indicador booleano. Además usaremos un control Boolean para dar stop al programa.
Front Panel:
LabView
Front Panel:
CASE
STRUCTURE
LabView
Block Diagram:
Usaremos un “While Loop” como una lazo condicional que dependerá del esta
booleano del control “Stop”. Dentro del lazo condicional usaremos un selector
condicional “Case Structure”, este selector condicional estará controlado por un botón
booleano. En la condición verdadera se asigna el texto “VERDADERO” en el indicador
de texto y además el valor numérico de 10 en el NumIndicator. En la condición falsa se
asigna el texto “FALSO” en el indicador de texto y además el valor numérico de 0 en el
NumIndicator.
LabView
Block Diagram:
37
LabView
PRÁCTICA 6:
Ejemplo Numeric,
Comparison, Boolean y Case
Structure
RECURSOS: Código LabView
LabView
Boolean, Char y Case Structure:
Diseñar un VI que permita desde el panel frontal ingresar un valor numérico de 8 bits sin
signo con un slide vertical y que permita visualizar este valor incrementado en 5
unidades en un Meter y en un indicador numérico, si el valor incrementado es mayor o
igual a 15 se activará un indicador booleano y en un Gauge se mostrará el valor de 100,
caso contrario 300. Si el valor incrementado en 5 unidades es menor o igual a 20
encenderá otro indicador booleano. Usar la estructura While Loop.
En este ejercicio aprendemos a realizar una interfaz con un control numérico y además
indicadores numéricos y booleano. En el panel frontal usaremos un control numérico
para generar un valor numérico que se validará con operadores relacionales para activar
los indicadores booleanos, se podrán usar operadores aritméticos para representar
valores en los indicadores numéricos. Además usaremos un control booleano para dar
stop al programa.
Front Panel:
LabView
Front Panel:
CASE
STRUCTURE
LabView
Block Diagram:
En el diagrama de bloques usaremos un “While Loop” como una lazo condicional que
dependerá del esta booleano del control “Stop”. Usaremos el operador aritmético de
suma para incrementar en dos unidades el valor del Slide cuyo resultado se mostrará
en “Meter” y además se comparará para con el resultado booleano controlar el “Case
Structure”, en cuyo caso falso se asignará el valor de 300 en el indicador numércio
“nombre” y en caso falso el valor de 100. Dentro del lazo condicional conectaremos el
control numérico a la variable local del indicador numérico “Meter”.
LabView
Block Diagram:
42
LabView
PRÁCTICA 7:
Ejemplo Envío de datos por
comunicación serial
RECURSOS: Código LabView Código PIC
LabView
Envío de datos por comunicación serial:
Programar el módulo MEI&T04 para que envíe por puerto serial el conteo ascendente de
una variable de 8 bits (0-255), el envío se realizará cada 500 milisegundos. Monitorear el
dato recibido en código ASCII por el AccesPort.
Para programar el microcontrolador debemos saber configurar los registros, entre los
cuales destacan:
- Registro TRIS: Este registro de 8 bits nos permite configurar los puertos (A,B,C,E) del
microcontrolador pin a pin como entrada o salida.
- Registro ANSEL y ANSELH: Nos permite configurar como entradas digitales ó analógicas
de los pines que poseen la habilidad de digitalizar entradas analógicas.
- Registro PORT: Nos permite obtener el estado lógico booleano de las entradas
digitales, sin embargo a los pines que son salido nos permite poner un estado lógico
booleano.
Pasos para configurar el uc:
44
LabView
Pasos para configurar el uc:
MICROCONTROLADOR
PUERTOS:
TRISX=(7,6,5,4,3,2,1,0)
X=A,B,C,E.
1->In. 0->Out.
ENTRADAS:
ANSEL=(_,_,_,4,3,2,1,0)
ANSELH=(_,_,13,12,11,10
,9,8)
1->Anlg. 0->Dig.
SALIDAS:
PORTX=(7,6,5,4,3,2,1,0)
1, 0.
45
LabView
Hardware:
INTERFAZ USB
UC 16F886
USB
46
LabView
Código de Programación:
program ejemplo2
' Declarations section
'1)----------SYMBOL.----------
SYMBOL LEDS=PORTB
'2)-----CREAR Y SET VARIABLES-------
DIM CNT AS BYTE
DIM txt as string[3]
CNT=0
'3)------CONFIG IN (1)- OUT (0)------
TRISA=%00000001 '<7,6,5,4,3,2,1,0>
TRISB=%00000000 'Leds -> OUT
TRISC=%00000000 '<7,6,5,4,3,2,1,0>
TRISE=%00000000 'RE3 -> IN BOTONERA
'4)--CONFIG IN: DIG (0)- ANALOG (1)---
ANSEL= %00000000 '<_,_,_,An4,An3,An2,An1,An0>
'An0->A0, An1->A1, An2->A2, An3->A3, An4->A5
ANSELH= %00000000
'<_,_,An13,An12,An11,An10,An9,An8>
'An8->B2, An9->B3, An10->B1, An11->B4, An12->B0,
An13->B5
'5)--- COMUNICACIÓN-------
UART1_Init(9600)
' Initialize UART module at 9600 bps
Delay_ms(50)
main:
' Main program
while(1)
inc(CNT)
LEDS=CNT
ByteToStr(CNT, txt)
UART1_Write_text(txt)' Dato
delay_ms(500)
wend
end.
47
LabView
Cargar el Firmware:
1.- Conectamos el programador de microcontroladores al módulo de desarrollo
(tarjeta programable).
2.- Conectamos el hardware programador al computador y Haciendo uso del software
del programador de microcontroladores, luego importamos el archivo “.HEX”.
3.- Procedemos a programar el módulo de desarrollo.
Pruebas Hardware:
48
LabView
Es importante que luego de la programación del código con comunicación serial
UART debemos cargar el código en el módulo de entrenamiento. Una buena
práctica de comprobación de que el código que usa comunicación serial que está en
le módulo de entrenamiento funciona, es conectarla al computador y verificar la
comunicación serial con tramas de comunicación, para lo cual usaremos en
AccesPort que es un Hiperterminal.
Pruebas Hardware:
49
LabView
ACCES PORT – HIPERTERMINAL
USB
USB a Serial.
50
LabView
PRÁCTICA 8:
Ejemplo Recepción de Datos
por Comunicación Serial
RECURSOS: Código LabView Código PIC
LabView
Recepción de Datos por Comunicación Serial:
Crear un VI en Labview que permita monitorear el dato recibido en código ASCII por el
AccesPort.
Front Panel:
LabView
Block Diagram:
Pruebas Software:
53
LabView
De igual forma que el hardware usaremos el Acces port para verificar las tramas
de comunicación con el Software Labview, pero debido a que ambos software
están en el computador debemos usar el Virtual Serial Por Emulator para crear
dos puertos de comunicación serial virtual y hacer las pruebas de la comunicación
serial.
Pruebas Software:
54
LabView
VIRTUAL
SERIAL
PORT
VIRTUAL
SERIAL
PORT
ACCES PORT – HIPERTERMINAL
VIRTUAL SERIAL PORT EMULATOR
LABVIEW
OJO: USB2 y USB3 virtuales deben
Ser diferentes a USB1 real.
Pruebas Hardware y Software:
55
LabView
Finalmente luego de las pruebas independientes tanto de hardware y software,
conectamos con seguridad el hardware del módulo de entrenamiento MEI&T04
con labview, haciendo para ello la conexión con el puerto USB el computador y el
micro USB del módulo de entrenamiento.
Pruebas Hardware y Software:
56
LabView
USB
OJO: USB1 real es
del módulo.
57
LabView
PRÁCTICA 9:
Ejemplo Manejo de Led Serial
RECURSOS: Código LabView Código PIC
58
LabView
Hardware:
INTERFAZ USB
UC 16F886
USB
59
LabView
Código de Programación:
program led_serial
'----------SYMBOL.----------
SYMBOL LED=PORTB
SYMBOL BTN=PORTE.3
'-----CREAR VARIABLES-------
main: '++++++++++++++++++++++++++++
'------CONFIG IN (1)- OUT (0)------
TRISA=%00000000
TRISB=%00000000 'Leds -> OUT
TRISC=%10000000
TRISE=%00001000 'RE3 -> IN BOTONERA
'--CONFIG IN: DIG (0)- ANALOG (1)---
ANSEL= %00000000 '<_,_,_,An4,An3,An2,An1,An0>
'An0->A0, An1->A1, An2->A2, An3->A3, An4->A5
ANSELH= %00000000
'<_,_,An13,An12,An11,An10,An9,An8>
'An8->B2, An9->B3, An10->B1, An11->B4, An12->B0,
An13->B5
'-----SET DE VARIABLES----
'------COMUNICACION SERIAL----
UART1_Init(9600)
PORTB=%10101010
DELAY_MS(200)
PORTB=%01010101
DELAY_MS(200)
while (1)
if BTN =0 THEN
WHILE (BTN=0)
UART1_Write(1)
LED=255
WEND
UART1_Write(0)
LED=0
END IF
wend
end.
60
LabView
Cargar el Firmware:
1.- Conectamos el programador de microcontroladores al módulo de desarrollo
(tarjeta programable).
2.- Conectamos el hardware programador al computador y Haciendo uso del software
del programador de microcontroladores, luego importamos el archivo “.HEX”.
3.- Procedemos a programar el módulo de desarrollo.
Pruebas Hardware:
61
LabView
ACCES PORT – HIPERTERMINAL
USB
USB a Serial.
LabView
Front Panel:
Block Diagram:
Pruebas Software:
64
LabView
VIRTUAL
SERIAL
PORT
VIRTUAL
SERIAL
PORT
ACCES PORT – HIPERTERMINAL
VIRTUAL SERIAL PORT EMULATOR
LABVIEW
OJO: USB2 y USB3 virtuales deben
Ser diferentes a USB1 real.
Pruebas Hardware y Software:
65
LabView
USB

Más contenido relacionado

PDF
⭐⭐⭐⭐⭐ (Práctica 1) DESARROLLO DE APLICACIONES CON MÓDULOS ARDUINO
PDF
⭐⭐⭐⭐⭐ DISEÑO DE SISTEMAS DIGITALES, PROYECTOS PROPUESTOS (2019 2do Término)
PDF
⭐⭐⭐⭐⭐ (Práctica 5) DESARROLLO DE APLICACIONES CON #PIC16F886
PDF
⭐⭐⭐⭐⭐ (Práctica 3) DESARROLLO DE APLICACIONES CON #PIC16F886
PDF
⭐⭐⭐⭐⭐ (Práctica 4) DESARROLLO DE APLICACIONES CON #PIC16F886
PPT
Control automático de un sistema de riego
PDF
⭐⭐⭐⭐⭐ (Práctica 2) DESARROLLO DE APLICACIONES CON #PIC16F886
PDF
⭐⭐⭐⭐⭐ (Práctica 6) DESARROLLO DE APLICACIONES CON PIC16F886
⭐⭐⭐⭐⭐ (Práctica 1) DESARROLLO DE APLICACIONES CON MÓDULOS ARDUINO
⭐⭐⭐⭐⭐ DISEÑO DE SISTEMAS DIGITALES, PROYECTOS PROPUESTOS (2019 2do Término)
⭐⭐⭐⭐⭐ (Práctica 5) DESARROLLO DE APLICACIONES CON #PIC16F886
⭐⭐⭐⭐⭐ (Práctica 3) DESARROLLO DE APLICACIONES CON #PIC16F886
⭐⭐⭐⭐⭐ (Práctica 4) DESARROLLO DE APLICACIONES CON #PIC16F886
Control automático de un sistema de riego
⭐⭐⭐⭐⭐ (Práctica 2) DESARROLLO DE APLICACIONES CON #PIC16F886
⭐⭐⭐⭐⭐ (Práctica 6) DESARROLLO DE APLICACIONES CON PIC16F886

La actualidad más candente (20)

PDF
⭐⭐⭐⭐⭐ SISTEMAS EMBEBIDOS, END DEVICE + Free RTOS (2020 PAO 1)
PDF
⭐⭐⭐⭐⭐ SISTEMAS EMBEBIDOS, END DEVICE & COORDINATOR (2020 PAO 1)
PPTX
⭐⭐⭐⭐⭐ (Práctica 1) DESARROLLO DE APLICACIONES CON #PIC16F886
DOCX
Informe N°2-Microcontroladores
PDF
Arduino UNO vs Launchpad MSP430G2
PDF
Presentacionarduino
DOCX
Atmega
PDF
Tutorial micro MSP430
PDF
Alarma arduino wavecom programa y esquema numeros borrados 48 pag
PDF
1. microcontrolador
PPT
Curso Micro Tema 1
PDF
Taller Arduino espacio-RES 2ª Sesion
PDF
Curso de microcontroladores pic18 f4550
PDF
Introducción al microcontrolador MSP430
PDF
Introduccion al msp430
PDF
⭐⭐⭐⭐⭐ SISTEMAS EMBEBIDOS, CAPÍTULO 2
PDF
Pic16f877 guia detallada parte2
DOCX
Ejemplos pic c
PPTX
07 Familia Atmega
PDF
Telescopio Nazionale Galileo Arduino Day 2015
⭐⭐⭐⭐⭐ SISTEMAS EMBEBIDOS, END DEVICE + Free RTOS (2020 PAO 1)
⭐⭐⭐⭐⭐ SISTEMAS EMBEBIDOS, END DEVICE & COORDINATOR (2020 PAO 1)
⭐⭐⭐⭐⭐ (Práctica 1) DESARROLLO DE APLICACIONES CON #PIC16F886
Informe N°2-Microcontroladores
Arduino UNO vs Launchpad MSP430G2
Presentacionarduino
Atmega
Tutorial micro MSP430
Alarma arduino wavecom programa y esquema numeros borrados 48 pag
1. microcontrolador
Curso Micro Tema 1
Taller Arduino espacio-RES 2ª Sesion
Curso de microcontroladores pic18 f4550
Introducción al microcontrolador MSP430
Introduccion al msp430
⭐⭐⭐⭐⭐ SISTEMAS EMBEBIDOS, CAPÍTULO 2
Pic16f877 guia detallada parte2
Ejemplos pic c
07 Familia Atmega
Telescopio Nazionale Galileo Arduino Day 2015
Publicidad

Similar a ⭐⭐⭐⭐⭐ #Microcontroladores y #LabView (20)

PDF
Dialnet programando microcontroladorespicenlenguajec-4587553
PDF
Curso de programacion en c++ para microcontroladores pic 16 f87xx
PDF
Curso de programacion en c++ para microcontroladores pic 16 f87xx
PDF
Curso de programacion en c++ para microcontroladores pic 16 f87xx
DOCX
Lab 01 micro
PDF
Laboratorio de Microcomputadoras - Práctica 02
PDF
Microprogramacion - Interrupciones y timers
PDF
Microcontroladores ss13
PDF
Microcontroladores ss13
PDF
Microcontroladores - Configuración de puertos, bucles y saltos
PDF
Pic16f84(1)
PDF
programacion con microcontrolador pic 16f84
PDF
Introducción a la programacion Pic16F84
ODP
Presentación ArduBlock
PDF
Apuntes y prácticas Picaxe 18M2+
PPTX
Tarea final
PDF
Curso de microcontroladores capitulo 03
PDF
TEMPIC-45 Práctica II. Control de un LED a través de un botón
PDF
Xilinx aprender abrirlo
DOC
Plc 01
Dialnet programando microcontroladorespicenlenguajec-4587553
Curso de programacion en c++ para microcontroladores pic 16 f87xx
Curso de programacion en c++ para microcontroladores pic 16 f87xx
Curso de programacion en c++ para microcontroladores pic 16 f87xx
Lab 01 micro
Laboratorio de Microcomputadoras - Práctica 02
Microprogramacion - Interrupciones y timers
Microcontroladores ss13
Microcontroladores ss13
Microcontroladores - Configuración de puertos, bucles y saltos
Pic16f84(1)
programacion con microcontrolador pic 16f84
Introducción a la programacion Pic16F84
Presentación ArduBlock
Apuntes y prácticas Picaxe 18M2+
Tarea final
Curso de microcontroladores capitulo 03
TEMPIC-45 Práctica II. Control de un LED a través de un botón
Xilinx aprender abrirlo
Plc 01
Publicidad

Más de Victor Asanza (20)

PDF
⭐⭐⭐⭐⭐ Device Free Indoor Localization in the 28 GHz band based on machine lea...
PDF
⭐⭐⭐⭐⭐ SOLUCIÓN EXAMEN SISTEMAS DIGITALES 2, 1er Parcial (2022PAO2)
PDF
⭐⭐⭐⭐⭐ CV Victor Asanza
PDF
⭐⭐⭐⭐⭐ Trilateration-based Indoor Location using Supervised Learning Algorithms
PDF
⭐⭐⭐⭐⭐ Learning-based Energy Consumption Prediction
PDF
⭐⭐⭐⭐⭐ Raspberry Pi-based IoT for Shrimp Farms Real-time Remote Monitoring wit...
PDF
⭐⭐⭐⭐⭐Classification of Subjects with Parkinson's Disease using Finger Tapping...
PDF
⭐⭐⭐⭐⭐ SOLUCIÓN EVALUACIÓN SISTEMAS EMBEBIDOS, 1er Parcial (2022 PAO1)
PDF
⭐⭐⭐⭐⭐ CHARLA #PUCESE Arduino Week: Hardware de Código Abierto TSC-LAB
PDF
⭐⭐⭐⭐⭐ #BCI System using a Novel Processing Technique Based on Electrodes Sele...
PDF
⭐⭐⭐⭐⭐ SOLUCIÓN EVALUACIÓN FUNDAMENTOS DE ELECTRICIDAD Y SISTEMAS DIGITALES, 2...
PDF
⭐⭐⭐⭐⭐ SOLUCIÓN LECCIÓN SISTEMAS DIGITALES 2, 2do Parcial (2021PAO2) C6
PPTX
⭐⭐⭐⭐⭐ Performance Comparison of Database Server based on #SoC #FPGA and #ARM ...
PDF
⭐⭐⭐⭐⭐ SOLUCIÓN EXAMEN SISTEMAS DIGITALES 2, 1er Parcial (2021PAO2)
PDF
⭐⭐⭐⭐⭐ Charla FIEC: #SSVEP_EEG Signal Classification based on #Emotiv EPOC #BC...
PDF
⭐⭐⭐⭐⭐ #FPGA Based Meteorological Monitoring Station
PDF
⭐⭐⭐⭐⭐ SSVEP-EEG Signal Classification based on Emotiv EPOC BCI and Raspberry Pi
PDF
⭐⭐⭐⭐⭐ SOLUCIÓN LECCIÓN FUNDAMENTOS DE ELECTRICIDAD Y SISTEMAS DIGITALES, 2do ...
PDF
⭐⭐⭐⭐⭐ SOLUCIÓN EVALUACIÓN SISTEMAS DIGITALES 1, 1er Parcial (2021 PAO1)
PDF
⭐⭐⭐⭐⭐ SISTEMAS DIGITALES 2, PROYECTOS PROPUESTOS (2021 PAO1)
⭐⭐⭐⭐⭐ Device Free Indoor Localization in the 28 GHz band based on machine lea...
⭐⭐⭐⭐⭐ SOLUCIÓN EXAMEN SISTEMAS DIGITALES 2, 1er Parcial (2022PAO2)
⭐⭐⭐⭐⭐ CV Victor Asanza
⭐⭐⭐⭐⭐ Trilateration-based Indoor Location using Supervised Learning Algorithms
⭐⭐⭐⭐⭐ Learning-based Energy Consumption Prediction
⭐⭐⭐⭐⭐ Raspberry Pi-based IoT for Shrimp Farms Real-time Remote Monitoring wit...
⭐⭐⭐⭐⭐Classification of Subjects with Parkinson's Disease using Finger Tapping...
⭐⭐⭐⭐⭐ SOLUCIÓN EVALUACIÓN SISTEMAS EMBEBIDOS, 1er Parcial (2022 PAO1)
⭐⭐⭐⭐⭐ CHARLA #PUCESE Arduino Week: Hardware de Código Abierto TSC-LAB
⭐⭐⭐⭐⭐ #BCI System using a Novel Processing Technique Based on Electrodes Sele...
⭐⭐⭐⭐⭐ SOLUCIÓN EVALUACIÓN FUNDAMENTOS DE ELECTRICIDAD Y SISTEMAS DIGITALES, 2...
⭐⭐⭐⭐⭐ SOLUCIÓN LECCIÓN SISTEMAS DIGITALES 2, 2do Parcial (2021PAO2) C6
⭐⭐⭐⭐⭐ Performance Comparison of Database Server based on #SoC #FPGA and #ARM ...
⭐⭐⭐⭐⭐ SOLUCIÓN EXAMEN SISTEMAS DIGITALES 2, 1er Parcial (2021PAO2)
⭐⭐⭐⭐⭐ Charla FIEC: #SSVEP_EEG Signal Classification based on #Emotiv EPOC #BC...
⭐⭐⭐⭐⭐ #FPGA Based Meteorological Monitoring Station
⭐⭐⭐⭐⭐ SSVEP-EEG Signal Classification based on Emotiv EPOC BCI and Raspberry Pi
⭐⭐⭐⭐⭐ SOLUCIÓN LECCIÓN FUNDAMENTOS DE ELECTRICIDAD Y SISTEMAS DIGITALES, 2do ...
⭐⭐⭐⭐⭐ SOLUCIÓN EVALUACIÓN SISTEMAS DIGITALES 1, 1er Parcial (2021 PAO1)
⭐⭐⭐⭐⭐ SISTEMAS DIGITALES 2, PROYECTOS PROPUESTOS (2021 PAO1)

Último (20)

PDF
Aumente su Autoestima - Lair Ribeiro Ccesa007.pdf
PDF
La Inteligencia Emocional - Fabian Goleman TE4 Ccesa007.pdf
DOCX
Programa_Sintetico_Fase_4.docx 3° Y 4°..
PDF
el - LIBRO-PACTO-EDUCATIVO-GLOBAL-OIEC.pdf
PDF
IDH_Guatemala_2.pdfnjjjkeioooe ,l dkdldp ekooe
PPTX
Doctrina 1 Soteriologuia y sus diferente
PDF
Introducción a la historia de la filosofía
DOC
Manual de Convivencia 2025 actualizado a las normas vigentes
PPTX
Presentación de la Cetoacidosis diabetica.pptx
PDF
Teologia-Sistematica-Por-Lewis-Sperry-Chafer_060044.pdf
DOCX
Informe_practica pre Final.docxddadssasdddddddddddddddddddddddddddddddddddddddd
PPTX
MATEMATICAS GEOMETRICA USO TRANSPORTADOR
PDF
Atencion prenatal. Ginecologia y obsetricia
PDF
TOMO II - LITERATURA.pd plusenmas ultras
PDF
5°-UNIDAD 5 - 2025.pdf aprendizaje 5tooo
PDF
Escuelas Desarmando una mirada subjetiva a la educación
DOCX
PLAN DE CASTELLANO 2021 actualizado a la normativa
PDF
EL aprendizaje adaptativo bajo STEM+H.pdf
PDF
informe tipos de Informatica perfiles profesionales _pdf
DOCX
PLANES DE área ciencias naturales y aplicadas
Aumente su Autoestima - Lair Ribeiro Ccesa007.pdf
La Inteligencia Emocional - Fabian Goleman TE4 Ccesa007.pdf
Programa_Sintetico_Fase_4.docx 3° Y 4°..
el - LIBRO-PACTO-EDUCATIVO-GLOBAL-OIEC.pdf
IDH_Guatemala_2.pdfnjjjkeioooe ,l dkdldp ekooe
Doctrina 1 Soteriologuia y sus diferente
Introducción a la historia de la filosofía
Manual de Convivencia 2025 actualizado a las normas vigentes
Presentación de la Cetoacidosis diabetica.pptx
Teologia-Sistematica-Por-Lewis-Sperry-Chafer_060044.pdf
Informe_practica pre Final.docxddadssasdddddddddddddddddddddddddddddddddddddddd
MATEMATICAS GEOMETRICA USO TRANSPORTADOR
Atencion prenatal. Ginecologia y obsetricia
TOMO II - LITERATURA.pd plusenmas ultras
5°-UNIDAD 5 - 2025.pdf aprendizaje 5tooo
Escuelas Desarmando una mirada subjetiva a la educación
PLAN DE CASTELLANO 2021 actualizado a la normativa
EL aprendizaje adaptativo bajo STEM+H.pdf
informe tipos de Informatica perfiles profesionales _pdf
PLANES DE área ciencias naturales y aplicadas

⭐⭐⭐⭐⭐ #Microcontroladores y #LabView

  • 3. 3 LabView MICROCONTROLADOR - UC: El corazón de todo módulo programable es el microcontrolador (el PIC16F886 para los ejemplos que mostraremos), por tanto debemos considerar lo importante de conocer las pines de conexión del microcontrolador: - Programación serial ICSP: MCLR (Pin1), ICSPDAT (Pin28), ICSPCLK (Pin27), VSS (GND), VDD (Vcc). - Entradas analógicas: AN0, AN1, AN2, AN3, AN4, AN8, AN9, AN10, AN11, AN12, AN13. - Modulación de Ancho de Pulso (PWM): CCP1 y CCP2. - Comunicación serial: TX y RX.
  • 4. 4 LabView MICROCONTROLADOR - UC: ICSP Programación Serial en Circuito. PWM Entradas Analógicas Com. Serial GND VCC Master Clear
  • 5. 5 LabView Pasos para configurar el uc: Para programar el microcontrolador debemos saber configurar los registros, entre los cuales destacan: - Registro TRIS: Este registro de 8 bits nos permite configurar los puertos (A,B,C,E) del microcontrolador pin a pin como entrada o salida. - Registro ANSEL y ANSELH: Nos permite configurar como entradas digitales ó analógicas de los pines que poseen la habilidad de digitalizar entradas analógicas. - Registro PORT: Nos permite obtener el estado lógico booleano de las entradas digitales, sin embargo a los pines que son salido nos permite poner un estado lógico booleano.
  • 6. 6 LabView Pasos para configurar el uc: MICROCONTROLADOR PUERTOS: TRISX=(7,6,5,4,3,2,1,0) X=A,B,C,E. 1->In. 0->Out. ENTRADAS: ANSEL=(_,_,_,4,3,2,1,0) ANSELH=(_,_,13,12,11,10 ,9,8) 1->Anlg. 0->Dig. SALIDAS: PORTX=(7,6,5,4,3,2,1,0) 1, 0.
  • 7. 7 LabView Pasos para programar: Se desarrolla el algoritmo de programación en el computador en un ID o software de desarrollo, para microcontroladores. Compilar código realizado y generamos el archivo “.HEX”. Programar el microcontrolador importando el archivo “.HEX”.
  • 10. VISA Configure Serial Port: 10 LabView
  • 12. VISA Bytes at Serial Port: 12 LabView
  • 13. 13 LabView PRÁCTICA 1: Uso de Botón y Leds RECURSOS: Código PIC
  • 14. 14 LabView Uso de Botón y Leds: PIC16F886 Leds PuertoBBotón, E.3 BOTONERA LEDS Esta práctica nos enseñará el uso del botón para controlar el encendido y apagado de los leds. Usaremos el botón para controlar el cambio de estado lógico de las salidas que encienden o apagan los leds, adicional a ello deberá tener un anti rebote que evite cambiar incontrolablemente el estado de la salida digital. Recordar que los leds están conectados por hardware al puerto b.
  • 15. 15 LabView Código de Programación: 1- Creamos symbol de el botón usado, el mismo que está conectado por hardware al puerto E.3. 2- Empezamos configurando el registro TRISB como salida, además como entrada el registro TRISE.3. 3- Usamos el registro TRISB para asignar valor booleanos a las salidas del puerto B donde están conectados los leds por hardware. 4- Usamos la condición IF para validar el cambio de estado del botón, adicional a ello usaremos el bucle WHILE para programar el anti rebote.
  • 16. 16 LabView Código de Programación: program ejerccio1 SYMBOL BOTON=PORTE.3 DIM VALOR AS BYTE MAIN: '----------------CONFIG IN-OUT---------------- ' Registro PUERTO A TRISA = 0X00 '%00000000=0' PORTA -> out ' Registro PUERTO B TRISB = 0X00 ' PORTB -> out para los leds ' Registro PUERTO C TRISC = 0X00 ' PORTB -> out para los leds ' Registro PUERTO E TRISE = %00001000 ' PORTE.3 <-in '----------------CONFIG IN -> DIG ó ANLG----- ' Seleccion de registro analogico. 1 analogico, 0 digitales ANSEL = 0X00 ' AN<7:0> AN(_,_,_,4,3,2,1,0) ANSELH = 0X00 ' AN<13:8> AN(_,13,12,11,10,9,8) '---------------- SETEAR LAS SALIDAS--------- PORTB=%10101010 delay_ms(300) PORTB=%01010101 delay_ms(300) PORTB=0 '-----------------SET DE VARIABLES----------- VALOR=0 WHILE(1) IF(BOTON =0) THEN 'SI PRESIONO EL BOTON MCLR PORTB= NOT PORTB WHILE(BOTON=0)WEND 'ESPERO QUE SUELTE EL BOTON MCLR END IF WEND END.
  • 17. 17 LabView Cargar el Firmware: 1.- Conectamos el programador de microcontroladores al módulo de desarrollo (tarjeta programable). 2.- Conectamos el hardware programador al computador y Haciendo uso del software del programador de microcontroladores, luego importamos el archivo “.HEX”. 3.- Procedemos a programar el módulo de desarrollo.
  • 18. 18 LabView PRÁCTICA 2: Uso Contador y Leds RECURSOS: Código PIC
  • 19. LabView Uso Contador y Leds: Esta práctica nos enseñará el uso de variables para controlar la información binaria que se muestra en los leds. Usaremos la variable como contador y para incrementar pausadamente usaremos un delay de 200 ms. Recordar que los leds están conectados por hardware al puerto b. PIC16F886 Leds PuertoBBotón, E.3 LEDS=CONTADOR+1
  • 20. 20 LabView Código de Programación: 1- Creamos symbol para el puerto b, que es donde están conectados los leds por hardware. 2- Creamos una variable tipo Byte llamada CNT. 3- Empezamos configurando el registro TRISB como salida. 4- Usaremos el symbol LED para asignar la varibale a las salidas de leds. program leds '----------SYMBOL.---------- SYMBOL LED=PORTB SYMBOL BTN=PORTE.3 '-----CREAR VARIABLES------- DIM CNT AS BYTE main: '------CONFIG IN (1)- OUT (0)------ TRISA=%00000000 TRISB=%00000000 'Leds -> OUT TRISC=%00000000 TRISE=%00001000 'RE3 -> IN BOTONERA '--CONFIG IN: DIG (0)- ANALOG (1)--- ANSEL= %00000000 '<_,_,_,An4,An3,An2,An1,An0> 'An0->A0, An1->A1, An2->A2, An3->A3, An4->A5 ANSELH= %00000000 '<_,_,An13,An12,An11,An10,An9,An8> 'An8->B2, An9->B3, An10->B1, An11->B4, An12->B0, An13->B5 '-----SET DE VARIABLES---- CNT=0 while (1) LED=CNT INC(CNT) DELAY_MS(200) wend end.
  • 21. 21 LabView Cargar el Firmware: 1.- Conectamos el programador de microcontroladores al módulo de desarrollo (tarjeta programable). 2.- Conectamos el hardware programador al computador y Haciendo uso del software del programador de microcontroladores, luego importamos el archivo “.HEX”. 3.- Procedemos a programar el módulo de desarrollo.
  • 22. 22 LabView PRÁCTICA 3: Uso Botón, Contador y Leds RECURSOS: Código PIC
  • 23. LabView Uso Contador y Leds: Esta práctica nos enseñará el uso del botón para manipular una variable, para controlar el encendido de los leds. Usaremos el botón para incrementar la variable usándola así como un contador. Recordar que los leds están conectados por hardware al puerto b. Leds PuertoBBotón, E.3 PIC16F886 BOTONERA LEDS=CONTADOR+1
  • 24. 24 LabView Código de Programación: 1- Creamos un symbol de el botón usado, el mismo que está conectado por hardware al puerto E.3. 2- Creamos un symbol para el puerto b, que es donde están conectados los leds por hardware. 3- Creamos una variable tipo Byte llamada CNT. 4- Empezamos configurando el registro TRISB como salida, además como entrada el registro TRISE.3. 5- La condición IF nos permite validar el cambio de estado del botón, adicional a ello usaremos el bucle WHILE para programar el anti rebote y evitar así que incremente la variable más de una vez. 6- Usamos la función INC para incrementar la variable en una unidad. 7- El registro TRISB nos permite asignar un valor a las salidas del puerto B donde están conectados los leds por hardware.
  • 25. 25 LabView Código de Programación: program leds '----------SYMBOL.---------- SYMBOL LED=PORTB SYMBOL BOTON=PORTE.3 '-----CREAR VARIABLES------- DIM CNT,VALOR AS BYTE main: '------CONFIG IN (1)- OUT (0)------ TRISA=%00000000 TRISB=%00000000 'Leds -> OUT TRISC=%00000000 TRISE=%00001000 'RE3 -> IN BOTONERA '--CONFIG IN: DIG (0)- ANALOG (1)--- ANSEL= %00000000 '<_,_,_,An4,An3,An2,An1,An0> 'An0->A0, An1->A1, An2->A2, An3->A3, An4->A5 ANSELH= %00000000 '<_,_,An13,An12,An11,An10,An9,An8> 'An8->B2, An9->B3, An10->B1, An11->B4, An12->B0, An13->B5 '-----SET DE VARIABLES---- CNT=0 while (1) IF(BOTON =0) THEN 'SI PRESIONO EL BOTON MCLR INC(VALOR) 'INCREMENTO VALOR=VALOR+1 PORTB=VALOR 'ENVIO EL VALOR DE LA VARIABLE A LOS LED-PORTB WHILE(BOTON=0)WEND 'ESPERO QUE SUELTE EL BOTON MCLR END IF wend end.
  • 26. 26 LabView Cargar el Firmware: 1.- Conectamos el programador de microcontroladores al módulo de desarrollo (tarjeta programable). 2.- Conectamos el hardware programador al computador y Haciendo uso del software del programador de microcontroladores, luego importamos el archivo “.HEX”. 3.- Procedemos a programar el módulo de desarrollo.
  • 28. LabView Slide-Meter: Diseñar un VI que permita desde el panel frontal ingresar un valor numérico de 8 bits sin signo con un slide horizontal y que permita visualizar este valor en un Meter. En este ejercicio aprendemos a realizar una interfaz. En el panel frontal usaremos un control numérico para generar un valor numérico y también un indicador numérico para visualizar dicho valor. Además usaremos un control booleano para dar stop al programa. Front Panel:
  • 30. LabView Block Diagram: En el diagrama de bloques inicializaremos el indicador numérico con una constante cero. Usaremos un “While Loop” como una lazo condicional que dependerá del esta booleano del control “Stop”. Dentro del lazo condicional conectaremos el control numérico a la variable local del indicador numérico “Meter”.
  • 32. 32 LabView PRÁCTICA 5: Ejemplo Boolean, Char y Case Structure RECURSOS: Código LabView
  • 33. LabView Boolean, Char y Case Structure: Diseñar un VI que permita desde un control booleano poner en un indicador numérico dos posibles valores (0 ó 10) y en un indicador de texto (VERDADERO - FALSO). Usar la estructura While Loop. En este ejercicio aprendemos a realizar una interfaz con control booleano en indicador numérico y booleano. En el panel frontal usaremos un control booleano para generar dos posibles valores numéricos que veremos en el visualizador numérico, usaremos también un indicador de texto, además el estado booleano del botón se verá en un led indicador booleano. Además usaremos un control Boolean para dar stop al programa. Front Panel:
  • 35. LabView Block Diagram: Usaremos un “While Loop” como una lazo condicional que dependerá del esta booleano del control “Stop”. Dentro del lazo condicional usaremos un selector condicional “Case Structure”, este selector condicional estará controlado por un botón booleano. En la condición verdadera se asigna el texto “VERDADERO” en el indicador de texto y además el valor numérico de 10 en el NumIndicator. En la condición falsa se asigna el texto “FALSO” en el indicador de texto y además el valor numérico de 0 en el NumIndicator.
  • 37. 37 LabView PRÁCTICA 6: Ejemplo Numeric, Comparison, Boolean y Case Structure RECURSOS: Código LabView
  • 38. LabView Boolean, Char y Case Structure: Diseñar un VI que permita desde el panel frontal ingresar un valor numérico de 8 bits sin signo con un slide vertical y que permita visualizar este valor incrementado en 5 unidades en un Meter y en un indicador numérico, si el valor incrementado es mayor o igual a 15 se activará un indicador booleano y en un Gauge se mostrará el valor de 100, caso contrario 300. Si el valor incrementado en 5 unidades es menor o igual a 20 encenderá otro indicador booleano. Usar la estructura While Loop. En este ejercicio aprendemos a realizar una interfaz con un control numérico y además indicadores numéricos y booleano. En el panel frontal usaremos un control numérico para generar un valor numérico que se validará con operadores relacionales para activar los indicadores booleanos, se podrán usar operadores aritméticos para representar valores en los indicadores numéricos. Además usaremos un control booleano para dar stop al programa. Front Panel:
  • 40. LabView Block Diagram: En el diagrama de bloques usaremos un “While Loop” como una lazo condicional que dependerá del esta booleano del control “Stop”. Usaremos el operador aritmético de suma para incrementar en dos unidades el valor del Slide cuyo resultado se mostrará en “Meter” y además se comparará para con el resultado booleano controlar el “Case Structure”, en cuyo caso falso se asignará el valor de 300 en el indicador numércio “nombre” y en caso falso el valor de 100. Dentro del lazo condicional conectaremos el control numérico a la variable local del indicador numérico “Meter”.
  • 42. 42 LabView PRÁCTICA 7: Ejemplo Envío de datos por comunicación serial RECURSOS: Código LabView Código PIC
  • 43. LabView Envío de datos por comunicación serial: Programar el módulo MEI&T04 para que envíe por puerto serial el conteo ascendente de una variable de 8 bits (0-255), el envío se realizará cada 500 milisegundos. Monitorear el dato recibido en código ASCII por el AccesPort. Para programar el microcontrolador debemos saber configurar los registros, entre los cuales destacan: - Registro TRIS: Este registro de 8 bits nos permite configurar los puertos (A,B,C,E) del microcontrolador pin a pin como entrada o salida. - Registro ANSEL y ANSELH: Nos permite configurar como entradas digitales ó analógicas de los pines que poseen la habilidad de digitalizar entradas analógicas. - Registro PORT: Nos permite obtener el estado lógico booleano de las entradas digitales, sin embargo a los pines que son salido nos permite poner un estado lógico booleano. Pasos para configurar el uc:
  • 44. 44 LabView Pasos para configurar el uc: MICROCONTROLADOR PUERTOS: TRISX=(7,6,5,4,3,2,1,0) X=A,B,C,E. 1->In. 0->Out. ENTRADAS: ANSEL=(_,_,_,4,3,2,1,0) ANSELH=(_,_,13,12,11,10 ,9,8) 1->Anlg. 0->Dig. SALIDAS: PORTX=(7,6,5,4,3,2,1,0) 1, 0.
  • 46. 46 LabView Código de Programación: program ejemplo2 ' Declarations section '1)----------SYMBOL.---------- SYMBOL LEDS=PORTB '2)-----CREAR Y SET VARIABLES------- DIM CNT AS BYTE DIM txt as string[3] CNT=0 '3)------CONFIG IN (1)- OUT (0)------ TRISA=%00000001 '<7,6,5,4,3,2,1,0> TRISB=%00000000 'Leds -> OUT TRISC=%00000000 '<7,6,5,4,3,2,1,0> TRISE=%00000000 'RE3 -> IN BOTONERA '4)--CONFIG IN: DIG (0)- ANALOG (1)--- ANSEL= %00000000 '<_,_,_,An4,An3,An2,An1,An0> 'An0->A0, An1->A1, An2->A2, An3->A3, An4->A5 ANSELH= %00000000 '<_,_,An13,An12,An11,An10,An9,An8> 'An8->B2, An9->B3, An10->B1, An11->B4, An12->B0, An13->B5 '5)--- COMUNICACIÓN------- UART1_Init(9600) ' Initialize UART module at 9600 bps Delay_ms(50) main: ' Main program while(1) inc(CNT) LEDS=CNT ByteToStr(CNT, txt) UART1_Write_text(txt)' Dato delay_ms(500) wend end.
  • 47. 47 LabView Cargar el Firmware: 1.- Conectamos el programador de microcontroladores al módulo de desarrollo (tarjeta programable). 2.- Conectamos el hardware programador al computador y Haciendo uso del software del programador de microcontroladores, luego importamos el archivo “.HEX”. 3.- Procedemos a programar el módulo de desarrollo.
  • 48. Pruebas Hardware: 48 LabView Es importante que luego de la programación del código con comunicación serial UART debemos cargar el código en el módulo de entrenamiento. Una buena práctica de comprobación de que el código que usa comunicación serial que está en le módulo de entrenamiento funciona, es conectarla al computador y verificar la comunicación serial con tramas de comunicación, para lo cual usaremos en AccesPort que es un Hiperterminal.
  • 49. Pruebas Hardware: 49 LabView ACCES PORT – HIPERTERMINAL USB USB a Serial.
  • 50. 50 LabView PRÁCTICA 8: Ejemplo Recepción de Datos por Comunicación Serial RECURSOS: Código LabView Código PIC
  • 51. LabView Recepción de Datos por Comunicación Serial: Crear un VI en Labview que permita monitorear el dato recibido en código ASCII por el AccesPort. Front Panel:
  • 53. Pruebas Software: 53 LabView De igual forma que el hardware usaremos el Acces port para verificar las tramas de comunicación con el Software Labview, pero debido a que ambos software están en el computador debemos usar el Virtual Serial Por Emulator para crear dos puertos de comunicación serial virtual y hacer las pruebas de la comunicación serial.
  • 54. Pruebas Software: 54 LabView VIRTUAL SERIAL PORT VIRTUAL SERIAL PORT ACCES PORT – HIPERTERMINAL VIRTUAL SERIAL PORT EMULATOR LABVIEW OJO: USB2 y USB3 virtuales deben Ser diferentes a USB1 real.
  • 55. Pruebas Hardware y Software: 55 LabView Finalmente luego de las pruebas independientes tanto de hardware y software, conectamos con seguridad el hardware del módulo de entrenamiento MEI&T04 con labview, haciendo para ello la conexión con el puerto USB el computador y el micro USB del módulo de entrenamiento.
  • 56. Pruebas Hardware y Software: 56 LabView USB OJO: USB1 real es del módulo.
  • 57. 57 LabView PRÁCTICA 9: Ejemplo Manejo de Led Serial RECURSOS: Código LabView Código PIC
  • 59. 59 LabView Código de Programación: program led_serial '----------SYMBOL.---------- SYMBOL LED=PORTB SYMBOL BTN=PORTE.3 '-----CREAR VARIABLES------- main: '++++++++++++++++++++++++++++ '------CONFIG IN (1)- OUT (0)------ TRISA=%00000000 TRISB=%00000000 'Leds -> OUT TRISC=%10000000 TRISE=%00001000 'RE3 -> IN BOTONERA '--CONFIG IN: DIG (0)- ANALOG (1)--- ANSEL= %00000000 '<_,_,_,An4,An3,An2,An1,An0> 'An0->A0, An1->A1, An2->A2, An3->A3, An4->A5 ANSELH= %00000000 '<_,_,An13,An12,An11,An10,An9,An8> 'An8->B2, An9->B3, An10->B1, An11->B4, An12->B0, An13->B5 '-----SET DE VARIABLES---- '------COMUNICACION SERIAL---- UART1_Init(9600) PORTB=%10101010 DELAY_MS(200) PORTB=%01010101 DELAY_MS(200) while (1) if BTN =0 THEN WHILE (BTN=0) UART1_Write(1) LED=255 WEND UART1_Write(0) LED=0 END IF wend end.
  • 60. 60 LabView Cargar el Firmware: 1.- Conectamos el programador de microcontroladores al módulo de desarrollo (tarjeta programable). 2.- Conectamos el hardware programador al computador y Haciendo uso del software del programador de microcontroladores, luego importamos el archivo “.HEX”. 3.- Procedemos a programar el módulo de desarrollo.
  • 61. Pruebas Hardware: 61 LabView ACCES PORT – HIPERTERMINAL USB USB a Serial.
  • 64. Pruebas Software: 64 LabView VIRTUAL SERIAL PORT VIRTUAL SERIAL PORT ACCES PORT – HIPERTERMINAL VIRTUAL SERIAL PORT EMULATOR LABVIEW OJO: USB2 y USB3 virtuales deben Ser diferentes a USB1 real.
  • 65. Pruebas Hardware y Software: 65 LabView USB