Documentos de Académico
Documentos de Profesional
Documentos de Cultura
NDICE 1/2
Presentacin Gambas Entorno Gambas Ejecutar programa Objetivo de la interfaz Cdigo asm del PIC16F87x Primer cdigo Gambas Recibir mensajes
NDICE 2/2
Extras Fotos Vdeos Libros Otros manuales Enlaces de inters Versin del manual Contacto Autor
PRESENTACIN
PRESENTACIN
Este manual est enfocado a los novatos en microcontroladores PICs, en especifico en la serie 16f87x, y a la programacin de aplicaciones grficas en gambas para los sistemas GNU/Linux. No aprenderemos a programar PICs en assembly (asm) ni el lenguaje que usa Gambas (cuya sintaxis es muy parecida a BASIC y a Java) sino que se daran los pasos necesarios para llevar a cabo la comunicacin PIC PC por el puerto serie sin tener grandes conocimientos de programacin. Este manual bsico puede servir de ejemplo para aplicaciones ms ambisiosas o para proyectos de fin de curso en niveles bsico, medio, superior o incluso de maestria.
Introduccin
Gambas
Vamos a desarrollar una pequea aplicacin bajo el Entorno de Desarrollo Gambas (que es Software Libre) en sistemas GNU/Linux. Si se desea conocer ms sobre Gambas una buena idea es visitar la pgina oficial del proyecto (gambas.sourceforge.net) y mirar la documentacin.
En este manual se ha trabajado en su momento con: Ubuntu 9.04 Jaunty Jackalope Gambas 2.8
DESCARGAR/INSTALAR GAMBAS
En sistemas derivados de Debian (como lo es Ubuntu) podemos descargar/instalar Gambas (gambas2) y todas sus dependencias desde aptget, aptitude o synaptic
# apt-get install gambas2
NOTA: El carcter '#' indica que el que debe hacer la instalacin es el root, para usuarios de Ubuntu si no tienen activo a root pueden anteponer en la orden el comando sudo.
DESCARGAR/INSTALAR GAMBAS
DESCARGAR/INSTALAR GAMBAS
Para usuarios de otras distros, buscar si existen ya paquetes instaladores, y si no se cuenta con ellos o se prefiere tener la ultima versin disponible se pueden compilar las fuentes. Para saber como, lea lo siguiente http://gambasdoc.org/help/readme?view y tambien http://gambasdoc.org/help/install?view
Si eres totalmente novato en este tema, porfavor continua con las siguientes pginas. En caso de que ya estes familiarizado con el Entorno de Desarrollo Gambas o sepas compilar los programas o tus aplicaciones puedes saltarte a la seccin 'OBJETIVO DE LA INTERFAZ'
Ejecutar Gambas
En Ubuntu, el icono de acceso a Gambas se encuentra en el men 'Aplicaciones' 'Programacin' 'Gambas2' O tambien se puede ejecutar desde terminal u oprimiendo 'Alt' + 'F2' y usando la orden gambas2
Ejecutar Gambas
Cuando iniciemos Gambas nos aparecer una pantalla de Bienvenida, donde seleccionaremos 'Nuevo proyecto...'
En la pantalla 1 seleccionaremos 'Aplicacin grfica QT...' y damos click al botn 'siguiente' En la pantalla 2 daremos la ruta donde se guardar el proyecto, sugiero se cree una carpeta en ~/proyectos_gambas/picrs232 . Damos click en 'siguiente'
Cuando se abra gambas con el proyecto nos aparecer una ventanita con un consejo, la cerramos. Ya dentro de Gambas en el men 'Vista' habilitamos 'Proyecto', 'Propiedades' y 'Cajas de Herramientas' o simplemente oprimimos F10, F4 y F6.
Ahora en la vista del proyecto vemos que tenemos un item llamado FMain, esa es la ventana principal de nuestro proyecto, demosle un doble click para que se muestre.
Ya que dejamos como queriamos a Gambas, hay que saber donde introducir el cdigo del programa. Hay varias formas de ver el cdigo. Como muestra la imagen si pulsamos el botn 'Cdigo' se mostrar el editor de cdigo y si pulsamos el botn 'Formulario' se muestra el diseo del formulario.
Tambin puedes ver el cdigo dando click con el botn secundario del mouse dentro del diseo del formulario y luego en 'Abrir cdigo'. Igualmente simplemente puedes oprimir 'Ctrl' + 'W'
Objetivo de la Interfaz
Objetivo de la Interfaz
El objetivo principal de esta aplicacin es hacer una interfaz en Gambas capaz de comunicarse con un microcontrolador PIC16F87x al igual que lo hace el minicom o el cutecom pero con su propio control y diseo. Vamos a dar el primer paso de la interfaz
Objetivo de la Interfaz
Introducir el nombre de nuestro programa en el formulario. Centrar el formulario en el escritorio al ejecutarse la aplicacin. Colocar 5 botones en el formulario con las coordenadas indicadas. Orden de jerarquia de los botones. Depurar nuestra aplicacin.
Objetivo de la Interfaz
Selecciona el Formulario En el cuadro de 'Propiedadas' modifica el valor de la propiedad texto a PicRS232 ya que es el nombre de nuestro programa
Objetivo de la Interfaz
Para centrar la aplicacin accedemos a la ventana de cdigo y la funcin Form_Open, que corresponde al evento Open del Fmain, la dejamos como sigue:
Objetivo de la Interfaz
Objetivo de la Interfaz
Lo que hemos hecho es decirle al programa que cuando se abra la aplicacin, al formulario FMain lo ponga en el centro de la pantalla. El texto que se encuntra despues de la comilla sencilla ( ' )es simplemente un comentario, esa comilla simple es como el equivalente al punto y coma ( ; ) del lenguaje assembly
Objetivo de la Interfaz
De la caja de herramientas pulsa con el botn primario y sin soltar al objeto Button arrastralo y sueltalo en el formulario. Tambien puedes dar doble click en Button para que se agregue automaticamente al formulario.
Objetivo de la Interfaz
Objetivo de la Interfaz
Has insertado el botn llamado Button1 en el formulario. Ahora toca modificar sus propiedades que se describen en la tabla.
PROPIEDADES
Objetivo de la Interfaz
De la misma forma arrastra un segundo button. Y cambia sus propiedades como indica la tabla.
PROPIEDADES
Objetivo de la Interfaz
PROPIEDADES
Valor a button_a 0 67
Objetivo de la Interfaz
Ahora toca el turno al cuarto button, pero CUIDADO! la letra que estamos usando es la 'L' minuscula que puede confundirse con la 'I' latina mayuscula.
PROPIEDADES
Objetivo de la Interfaz
Al quinto button tambin le cambiaremos el color y Propiedad Text el tipo de fuente la pondremos en negrita. (Name)
PROPIEDADES
X Y
Background Font
Objetivo de la Interfaz
En el cuadro de propiedades de button_espacio seleccionamos Background y en la columna de valor nos aparecer un botn con tres puntos (...), le damos click y se abrir un cuadro de dialogo. Entramos a la pestaa 'Libre' y en el cuadro de texto escribimos FF8000.
Objetivo de la Interfaz
Objetivo de la Interfaz
De forma parecida lo haremos para tener la fuente en negrita. En el cuadro de dialogo que nos aparezca seleccionaremos 'Negrita' en el cuadro de 'Estilo'.
Objetivo de la Interfaz
Objetivo de la Interfaz
La Jerarqua de los elementos de nuestra aplicacin nos permite tener un mejor control de ella, podremos dar un orden de tabulacin Para ello, donde se encuentra nuestra rea de propiedades se encuentra una pestaa llamada 'Jerarqua' Damos click en esa pestaa
Objetivo de la Interfaz
Objetivo de la Interfaz
En la seccin 'Jerarquia' puedes ver como estn organizdos los elementos. Puedes cambiar el orden con los botones en forma de flechas.
Guarde el proyecto completo y luego pulse F5 o el botn con un icono como de 'play'. Debemos tener algo similar como muestra en la imagen de la derecha. Puedes pulsar los botones que notars que no hace nada ya que no hemos programado ninguna accin sobre ellos. Ahora cierra el programa con la X como cualquier otro programa. Ya hemos cumplido el objetivo de esta parte. Ahora nos centramos a explicar un poco el cdigo del PIC16F87x y as entender cmo recibe los datos que Gambas enva por el puerto serie.
Para entender los datos que enviamos desde el Gambas, debemos entender el cdigo fuente del PIC16F87x, en este caso en assembly. Los datos que enviamos desde Gambas es en hexadecimal, con lo cual conviene ver la tabla ASCII. ASCII, pronunciado ski significa del Ingls American Standard Code for Information Interchange o lo que es lo mismo Cdigo Estadounidense Estndar para el Intercambio de Informacin.
Tabla ASCII