Está en la página 1de 3

Microcontroladores

Flowcode y PICkitTM 2. Un arma letal


contra los problemas que atenazan al
Ingeniero de Diseño
Por John Dobson

El PICkit 2 Debug Express de Micro- El diseño de un programa co-


chip junto con la Demo Board de 44 mienza generalmente con el desa-
pines dos productos de calidad, en rrollo de un diagrama de flujo, en
línea para constituir el programador el que se va planificado la secuencia
Para de PIC® más pequeño del mundo. de pasos que el microprocesador
empezar a Igualmente impresionante es el len- debe ejecutar. Con Flowcode, es una
diseñar este guaje de programación Flowcode cuestión muy sencilla convertir el
interesante de Matrix Multimedia, el cual es dis- diagrama de flujo simbólico en un
proyecto o pensado junto con MPLAB IDE, pro- programa de Flowcode.
cualquier porcionando al usuario una intuitiva Este primer ejemplo desarrolla
otro, interfaz de programación de diagra- un simple sistema que haga salir uno
consulte mas de flujo. de dos patrones de iluminación, de-
la oferta pendiendo de si un interruptor está o
especial de Este artículo ofrece una introduc- no presionado. Ver figura 1.
Microchip ción de como programar PICs usando
en la página la versión libre de Flowcode (limitado Flowcode – step-by-
29. a 2k del código compilado), y de- step
muestra cómo debe ser utilizado para
crear un sencillo programa capaz de Ahora vamos a convertir el Flo-
Figura 2. Flowcode controlar el destelleo de un LED en wchart original en un programa Flow-
flowchart inicial la PICkit 2 Demo Board de 44 pines. code. Para ello precisaremos de la
Esto debe permitir al usuario, comen- versión Free Demo de Flowcode, la
zar a dominar las operaciones básicas cual está disponible en:
de Flowcode y de su PICkit 2. http://www.matrixmultimedia.com/
temp/FlowcodeV3.exe
Figura 1. Diagrama de Primero de todo: El
flujo inicial diagrama de flujo Al instalarla, nos cercioraremos
de que “la opción “Microchip PICkit
2” esté seleccionada y procederemos
del siguiente modo:
•Ejecute (Run) la aplicación Flowco-
de
•Click sobre el botón OK cuando se
abra la pantalla de confirmación
• Ahora el usuario dispone de la op-
ción de crear un nuevo Flowcode
flowchart, o de abrir uno ya existente.
Seleccionaremos la opción para crear
un nuevo. • Ahora agregaremos el hardware.
• Deberemos elegir un PIC. La tarje- Pincharemos sobre el icono LEDs en la
ta Demo Board lleva un PIC16F887 Barra de Herramientas de componen-
como dotación, así que elegiremos tes, al ejecutarse se abre justo sobre
ese PIC de la lista. dicha barra. Haremos click también
• Ahora se abrirá un nuevo espacio sobre el icono SWITCH. Ahora dis-
de trabajo denominado ‘Main’ pondremos de dos items operativos
• Ahora, haremos Click y arrastrare- sobre el área de trabajo.
mos los iconos de la barra de herra- • A continuación seleccionaremos
mientas de iconos, desde el borde el componente LED en el espacio
izquierdo al punto deseado del área de trabajo, haciendo click sobre él
de trabajo, así podremos construir y desplazándonos hasta la opción
el Flowcode flowchart mostrado en ´Component Connections´. La se-
la figura 2. Por el momento, no nos leccionaremos. En el menú abierto
preocuparemos de su configuración pincharemos ´Connect to Port’ y aho-
- haremos eso después. ra escogeremos el Port D (ya que los

28 REE • Julio 2009


Microcontroladores

Configuración de el botón ‘Use Variable’. A continuación


iconos sobre la ventana ‘Input Properties’, se-
leccionaremos el port B y ‘Single bit’, de
Ahora es hora de configurar los forma que la caja de diálogo quedará
iconos que componen el Diagrama como muestra la figura 8.
de Flujo de Flowcode. Para hacer
esto, haremos doble-click en cada El icono de Decisión
icono alternadamente y fijaremos En la caja de diálogo ‘Properties’
las configuraciones mostradas en haremos click sobre el botón ‘Variables’
los siguientes diagramas. y seleccionaremos la correspondien-
En la ventana ‘Display name’ te variable ‘Input’. Ahora, en la caja
escribiremos el texto del elemento ‘Display name’ indicaremos ‘Is switch
correspondiente del diagrama de pressed’ con lo que obtendremos el
flujo. Esto facilitará comprobar su cuadro de diálogo representado en la
progreso. figura 9.

Figura 3. Asignación del LEDs de la Demo Board de 44 pins El icono Loop


port al componente LED están conectados al port D). La ven-
tana de diálogo para las conexiones
debería quedar similar a la mostrada
en la figura 3.
• Ahora seleccionaremos el compo- Figura 9. Propiedades del Bucle
nente SWITCH en el área de trabajo.
Haremos Click y nos desplazaremos No loop- El icono output
hasta la opción ´Properties”. La ac- Figura 6. Propiedades del Bucle El LED 7 corresponde al bit más
tivamos y ajustamos el número de significativo del display, siendo su
switches a 1. El icono Input valor 27 =128.
Primero deberemos crear una va- El LED 0 tiene un valor de 20 =1.
Figura 4. Propiedades de riable donde acarrear la información del Para iluminar ambos LED será necesa-
la Edición de Compo- conmutador (switch). Para ello debere- rio que suministremos un valor de 129
nentes mos pinchar sobre el botón ‘Variables’ en el port donde están conectados los
para abrir la ventana ‘Variable Manager’, LED (Port D). Ver figura 10.
Seguidamente haremos click sobre el
botón ‘Add New Variable’ y escribiremos
‘Input’ como nombre de la nueva varia-
ble tal y como muestra la figura 7.

En ‘Connect to Port’ seleccio-


naremos Port B (ya que el pulsador
sobre la Demo Board de 44 pines
está cableado en el bit cero del port Figura 10. Propiedades de la salida
Figure 5. Especificando B). La caja de diálogos de conexión
los Pines de conexión de ofrece el aspecto indicado en la ‘Yes’ Loop: LSB bits
componentes figura 5. Los primeros cuatro LEDs, 0 al 3,
Figura 7. Creando una nueva variable toman los valores de 20, 21, 22, 23,
equivalentes respectivamente a: 1, 2, 4,
Ahora deberemos pinchar sobre 8. Podemos iluminar los cuatro suminis-
el botón ‘OK’ y sobre la nueva ventana trando el valor 15 (1+2+4+8) al port D
‘Variable Manager’ haremos click sobre tal y como muestra la figura 11

Figura 8. Propiedades de la Entrada Figura 11. Selección bits LSB

30 REE • Julio 2009


Microcontroladores

Los dos iconos de Retardo (Delay) mando Run en la barra de herramien- piló el diagrama de flujo gráfico como
La duración del retardo puede ser tas del menú. Elegiremos la opción un archivo en C y a continuación a otro
especificada indistintamente en mili- ‘Go/Continue’. La ventana ‘Variables’ y en assembler. Esto puede ser visualizado
segundos o en segundos. Teclee 500 la ‘Call Stack) se mostrarán y los LED 0 mediante los comandos ‘View C’ and
como ‘Delay value’ con el botón de mili- a 7 lucirán. ‘View ASM’ que visualizan los buffers
segundos seleccionado. Ver figura 12. Ahora pincharemos sobre el icono C y Assembler respectivamente. Ambos
‘push switch’ y si los LEDs destellean, al- comandos están bajo el comando ‘Chip’
ternando los LED 0 a 3 con los LEDs 4 a en la barra de herramientas del Menú o
7, entonces el programa ..¡Funciona! bien abriendo los archivos prog1name.
En caso de que no funcione de- c y prog1name.asm situados en la car-
beremos revisar detenidamente los peta donde hemos salvado nuestro
detalles de las configuraciones des- programa generado por Flowcode.
Figura 12. Propiedades de los bloques Delay critas anteriormente. A continuación
se puede simular el funcionamiento Y.. Finalmente
‘Yes’ Loop: MSB bits del programa paso a paso, pinchando
Los LED 4 a 7, toman los valores de sobre la opción ‘Step Into’ en el menú Aunque este artículo haya demos-
24, 25, 26 y 27 , equivalentes respec- ‘Run’. Para ejecutar el siguiente paso trado con un cierto detalle, cómo cons-
tivamente a: 16, 32, 64, 128. Podemos haremos click sobre la tecla F8. truir y configurar diagramas de flujo con
iluminar los cuatro, suministrando el Flowcode, muchas funcionalidades de
valor 240 (16 + 32 + 64 + 128) al port Programación del Flowcode no se han mencionado. La
D tal y como muestra la figura 13 microcontrolador PIC capacidad de realizar cálculos, de ma-
nipular variables de secuencias, de crear
Ya hemos realizado la parte funda- macros modificadas para requisitos
mental del proyecto, gracias al trabajo particulares y de incrustar segmentos
realizado con nuestro programa Flowco- escritos en C no se ha mencionado, jun-
de. Ahora veremos unas instrucciones to con otras importantes características
para colocar nuestro programa dentro del programa.
de un chip. Por suerte el programa viene equi-
• Conectaremos el modulo PICkit 2 a pado con un juego de tutoriales accesi-
nuestro ordenador vía un cable USB bles vía el menú Help. Matrix Multime-
• Enchufar la Demo Board 44 pin al dia también ofrece una amplia variedad
Figura 13. Selección bits MSB PICkit 2 de recursos de apoyo, disponibles desde
•Click sobre el comando ‘Chip’ en la su website www.matrixmultimedai. Figure 14. Aspecto final
Ahora nuestro Flowcode flow- barra de herramientas del menú, y se- com. del Flowcode flowchart
chart quedará tal cual está represen- leccionar la opción ‘Compile to chip’. .
tado en la figura 14. (El programa nos interrogará sobre si
deseamos salvar los datos generados
Simulación del por Flowcode, deberemos hacer click
programa sobre el botón ‘Yes’)
•Se desplegará una ventana de mensa-
Flowcode permite comprobar jes del compilador ‘Compiler Messages’
si nuestro programa se ejecuta co- para mostrar el progreso de la compila-
rrectamente en una simulación so- ción, así como la puesta en marcha de
bre pantalla. Esto se puede hacer de diversos elementos. Durante la transfe-
dos maneras, simulando el programa rencia del programa pueden encenderse
completo, o realizando una simulación eventualmente diversos LEDs entre ellos
paso a paso, es decir icono a icono. En el Busy LED del PICKIT 2. Finalmente la
ambos casos, dos ventanas, la ventana ventana ‘Compiler Messages’ mostrará
‘Variables’ y la ventana ‘Call Stack’, la palabra FINISHED. Al llegar este punto
aparecen mientras se ejecuta la simu- deberemos pinchar en el botón ‘Close’
lación. Cuando la simulación se ejecuta •Nuestro programa deberá ahora eje-
a máxima velocidad, los valores en cutarse de forma autónoma sobre la
ambas ventanas no se actualizan. Si Demo Board de 44 pin. Tal y como se
la simulación se efectúa ejecutando el ha indicado con anterioridad el grupo
programa a velocidad reducida o paso de LEDS 0 a 3 y el 4 a 7, lucirán alter-
a paso entonces veremos el efecto de nativamente. Pulse el Push Switch y el
cada etapa sobre cada una de las va- patron de LEDs deberá cambiar, con
riables. Esto se mostrará en la ventana solo los LED 0 y 7 encendidos. Esto es
‘Variables’ todo lo que nuestro pequeño programa
Por ahora, efectuaremos la simula- puede hacer!
ción completa, funcionando a máxima •De forma transparente al usuario, el
velocidad. Haremos click sobre el co- programador Flowcode primero com-

REE • Julio 2009 31

También podría gustarte