Curso de Flowcode PDF
Curso de Flowcode PDF
Curso de Flowcode PDF
Objetivo general.
Estudiar y manejar el programa de Flowcode, para que los participantes
puedan programar a cualquier microcontrolador PIC .
Objetivo especficos.
Describir de forma breve la funcin, programacin y aplicaciones de los
microcontroladores.
Conocer el Entorno Flowcode.
Estudiar las herramientas y configuraciones bsicas que posee flowcode
para realizar los ejercicios pautados en el curso.
Elaborar los ejercicios establecidos en el curso, incorporando mejoras en
las aplicaciones exigidas.
Conocer las conexiones bsicas a nivel de hardware para la elaboracin
de montajes prototipos.
Herramientas requeridas en curso.
1. Herramientas Fsicas.
Los recursos utilizados para impartir el curso son: pizarra acrlica, marcador,
lapto, video bean, protoboard con montaje de prueba, tarjeta programadora.
2. Herramientas Virtuales Software.
Power Point, Word, Flowcode, Labview y WINPIC800 3.55B.
Metodologa.
Basado en el mtodo cientfico, una vez estudiado las aplicacin y evolucin
de la programacin de los microcontroladores, se proceder a conocer el
entorno y las herramientas bsicas de flowcode, posteriormente se realizaran
ejercicios prcticos, siendo estos dirigidos por el instructor, cuando los mismos
estn funcionando de manera virtual en el programa, cada usuario deber
compilar el programa en flowcode y extraer en un pendriver el archivo .hex
generado por el compilador que posee flowcode, luego el estudiante se dirigir
al montaje de prueba, donde se cargara en el micro el programa realizado,
verificando el funcionamiento real del programa a nivel de hardware. Se
Definicin de Flowcode.
CURSO DE FLOWCODE
10
11
ENTORNO FLOWCODE
7. Entorno Flowcode.
IUT Cumana Ext. Punta de Mata
1era Revisin
12
13
14
16
Manejo de formatos:
Todos los bloques de configuracin a la hora de pedir el valor de una
variable, el usuario debe elegir el tipo de variable que solicita el programa, tiene
dos opciones, tomar una variable del tipo que se solicita, o colocar un valor
constantes, las cuales podr ser dependiendo del formato de la variable.
Flowcode admite valores entre el intervalo -32768 a 32767 de todos sus
formatos numericos. Es decir no maneja coherentemente valores numricos
fuera de ese intervalo, manejndose de forma circular o modular.
A nivel numrico a la ahora que se desea asignar un valor a un variable
numrica constante como byte y entero (int) se puede introducir de tres forma.
En decimal: se coloca el nmero deseado: 255
En hexadecimal: se coloca el nmero hexadecimal deseado con el
prefijo 0x ejemplo: 0xFF
En binario se coloca el nmero binario deseado con el prefijo 0b
ejemplo: 0b11111111
Las variables float (punto flotante) admiten nmeros con signo y decimales,
para definir los decimales deben ser a travs de un punto ejemplo 1.23
Las variables string (secuencia) admiten cadena de caracteres a travs de
las comillas como por ejemplo hola usuario adems a la hora de crear la
variable por defecto admite hasta 20 caracteres, y el usuario puede reducir a
esta cadena si lo requiere, editando la variable y bajando este numero.
17
El bloque I esta sigla proviene del idioma ingles (in: entrada), este
bloque puede ser orientado a un bit especfico del puerto o a todo el puerto
como registro.
Para lectura de un bits, en la caja de texto variable, el ejemplo de la figura 9
ilustra la lectura del porta,0 (ra0) la cual es un pin fsico del micro, el valor de
este bit se almacena en la variable VALOR1 la cual tomara el estado de este
bits que puede ser bien sea 0 1.
18
El bloque O esta sigla proviene del idioma ingles (out: salida), este
bloque puede ser orientado a un bit especifico del puerto, o a todo el
puerto como un registro o variable tipo byte.
Para escribir en un bit, se utiliza especficamente para colocar un 1 o 0, lgico
en la caja de texto variable, a un pin determinado de los puertos del micro. Este
pin, tambin puede asumir el valor de una variable entera o byte, que puede
estar en 0 o 1. La figura 11 ilustra cmo se coloca un uno lgico en el porta,2
(RA2).
19
El bloque con la letra D, esta sigla proviene del idioma ingles (delay:
demora), este bloque produce un retardo de tiempo que puede ser en
microsegundo, milisegundo segundo. Segn sea la exigencia del programa,
en la caja de texto Tiempo de Demora o Variable, se puede colocar un valor
de 0 a 1000 o que el tiempo vari de acuerdo con la variacin de una variable
externa, elegida por el usuario en el botn variable. La figura 13 ilustra la
ventana de programacin del bloque.
20
21
22
23
24
25
26
27
28
29
byte = isnan(float)
un nmero
30
31
Funcin ToUpper$(string)
Si Str1= hello
Cambias las letras a maysculas.
TestStr = ToUpper$(Str1)
TestStr es ahora "HELLO "
32
Funcin ToLower$(string)
Si Str1= HELLO
Cambias las letras a minsculas.
TestStr = ToLower$(Str1)
TestStr es ahora "hello "
Funcin Length$(string)
Si Str1= HELLO
Retorna el nmero de caracteres
RetVal = Length$(Str1)
RetVal es ahora 5
Funcin: Right$(string, size)
Str1= hello
string: variable string
size: nmero de caracteres
El siguiente ejemplo ilustra que la variable Str1 tomaran solo los 3 caracteres
que estn a la derecha de la variable tomando en cuenta que si Str1= hello al
tomar los ltimo 3 caracteres de la derecha queda "lo "quedando la variable
TestStr "lo
TestStr = Right$(Str1, 3)
Ahora la variable TestStr es "lo "
Funcin: Mid$(string, start, size)
string: variable string
Start: posicin de inicio
size: nmero de caracteres a tomar
El siguiente ejemplo ilustra segn la funcin si la variable Str1= hello al usar
la funcin Mid$(Str1, 2, 3) tomara de la variable str1 los caracteres a partir del
carcter 2, y el nmero de caracteres a tomar es 3.
TestStr = Mid$(Str1, 2, 3)
TestStr is ahora "llo"
Compare$(string1, string2, compare_type)
String1= variable de secuencia1
String2= variable de secuencia2
compare_type = variable de retorno de resultado
Compara 2 string o variable de secuencia, y retorna un byte correspondiente al
siguiente resultado
33
RetVal es ahora 0 porque es un caso de sensibilidad flexible por ende las dos
variables son idnticas debido a que son las misma letras as que una este
maysculas y otras en minsculas.
Si Str2 = Str1
RetVal = Compare$(Str1, Str2, 0)
RetVal es 0 porque ambos string son idnticos.
Funcin FloatToString$(): convierte un nmero flotante a string.
Ejemplo: pasa la variable de nmero flotante resultado a una variable de
nmeros string denominada valorx.
Valorx= FloatToString$(resultado)
Funcin StringToInt$(): convierte un string a un nmero entero
Ejemplo
Pasa la variable string result a un nmero entero almacenado en la variable
de nmeros entero retx.
34
retx=StringToInt$(result):
Funcin StringToFloat$(): convierte un string a un nmero flotante
Ejemplo
Pasa una variable string result a un nmero flotante almacenado en la
variable de nmero flotante Valorx.
Valorx=StringToFloat$(result):
Funcin NumberToHex$(): convierte un nmero a cdigo hexadecimal.
Ejemplo
Pasa la variable de nmero entera estex a un cdigo hexadecimal en la
variable Verx.
Verx= NumberToHex$(estex)
35
Tal como se muestra en la figura 34. En la caja de texto Nombre del Nuevo
Macro se debe colocar el nombre del macro que se va a realizar,
preferiblemente con un nombre asociado a la operacin del macro.
En la caja de texto Descripcin del Nuevo macro: si es de preferencia del
programador da una breve explicacin de la funcin del nuevo macro a realizar,
a manera de ilustracin
Crear un macro como un macro de usuario propia del programa.
En la figura 31. Si el usuario no va a crear un macro como una herramienta de
usuario para exportar, sencillamente establece el nombre del nuevo macro y le
da ok. Luego procede a dar click al botn OK&Editar Macro, visto en la figura
32, luego se abrir una nueva sub-ventana, de panel de diagrama de flujo
donde el programador podr estructurar el nuevo macro.
Crear un macro de herramienta de usuario para exportar y usar en otros
programas.
Si el usuario va a Crear un macro herramienta, debe utilizar las cajas de texto
de, Parmetros, Variables locales, Tipo de retorno
En la caja de texto de Parmetros en editar parmetros, se establecen las
variables que el macro les va a solicitara al programador que introduzca, sobre
las cuales se realizaran operaciones, dentro del macro.
En la caja de texto de Variables locales en editar variable, se establecen las
variables que se va a utilizar en el macro, las cuales van a trabajar con las
variables de parmetros,
En la caja de texto de Tipo de retorno, se elige el tipo de variable que
retornara el macro una vez utilizado, siendo este el ltimo resultado de la ltima
operacin que se realizo dentro del macro dentro del macro. De tal forma se
recomienda no tomar esta variable como resultado que se espera de la
operacin, si no utilizar variables declaradas en el programa principal y dentro
macro tomara el valor de una operacin determinada deseada por el
programador.
36
37
38
39
40
41
42
43
44
45
46
47
Errores de compilacin
En ocasione cuando se manejan varias variables en un macro o subrutina,
a la hora de compilar da error, le exige una variable de retorno, en ese caso, se
debe generar una variable de retorno en la subrutina, para desaparecer este
tipo de error de compilacin.
A la hora de compilar un programa donde se utilicen herramientas virtuales, se
deben realizar todas las conexiones de ese instrumento virtual con los pines del
micro, si no dar error de compilacin.
Algunas veces el compilador se desconfigura y de forma constante enva
error de compilacin, en ese caso se debe cerrar flowcode, luego se vuelve
abrir, tomar un programa de la carpeta Flowcode_V4_Examples/Examples
dentro de la carpeta Interrupts se elige el ejercicio 2. Interrupt every second,
luego se guarda en la misma direccin donde esta el programa que le arrojo el
error en la compilacin, se compila Interrupt every second en .hex y luego sin
cerrar el programa abre el programa que estaba mostrando el error de
compilacin, esta operacin soluciona el problema del compilador
reconfigurndolo permitiendo compilar su programa sin problema.
48
49
50
51
52
53
54