miércoles, 19 de junio de 2013

Comunicación serial con lazarus

Lazarus
LAZARUS
Lazarus es una herramienta de programación tipo RAD (Desarrollo rápido de aplicaciones) que emplea el lenguaje de programación orientado a objetos Object Pascal.
Lazarus permite realizar aplicaciones para múltiples plataformas Windows, GNU/Linux, Mac OS X y recientemente Android.

Vídeo Tutoriales
Vídeos de programación en Pascal con Lazarus, estos vídeos se enfatizan el el lenguaje mas que en el IDE.
Estos vídeos explican como se utiliza el IDE de lazarus realizando una aplicación

Guías en PDF
Las guías tratan sobre Delphi, el entorno en que esta inspirado Lazarus


Comunicación serial 
Para realizar la comunicación serial, se empleara un componente para lazarus llamados 5DPO.
Este componente hay que descargarlo e instalarlo.
Instalación Del Paquete sdpo 

  1. Descomprimir sdpo-0.2.0.zip preferiblemente C:\lazarus\components que la ruta donde estan los componentes de lazarus. Si se descomprimio correctamete se tendra una carpeta con el nombre de Sdpo
  2. En lazarus vamos a Paquete > Abrir archivo de paquete(.lpk)...
  3. seleccionamos C:\lazarus\components\Sdpo\SdpoSerial\sdposeriallaz.lpk
  4. Damos click a compilar.
  5. Damos click a Usar > Instalar
  6. Aparecera un mensaje que dice "Desea reconstruir lazarus ahora" damos click a si
  7. Reiniciamos lazarus
  8. Aparecerá una nueva pestaña de componentes con el nombre de 5dpo
 Ejecución del ejemplo con sdpo
  1. En lazarus vamos a proyecto>abrir proyecto
  2. Abrimos C:\lazarus\components\Sdpo\SdpoSerial\test\sertest.lpi
  3. En el formulario seleccionamos el componente y en las propiedades>device colocamos el nombre del puerto
  4. Para los usuarios de windows colocar en propiedades>device com1, com2, com10 etc. Según donde este su puerto serial.
  5. Finalmente ejecutar la aplicación.   
Administrador de dispositivos

Selección de COM10

Trabajo Sobre Lazarus Grupo 801b ( 1 puntos del parcial )
Simular el vaciado de un tanque.


Formulario
  1. El tanque tendrá un valor inicial de nivel configurable por medio de un scrollbar
  2. Cuando se le de click al botón iniciar, el tanque empezara a vaciarse.
  3. Utilizar el Timmer para realizar la animación correspondiente al vaciado del tanque.
  4. Se utilizara un TShape para simular el tanque, el color sera verde para indicar que el tanque esta lleno mas allá de la mitad y rojo para indicar que el tanque es menor o igual a la mitad de nivel.
  5. Cuando el tanque este completamente vació debe parar la simulación y mostrar un mensaje que indique el tanque esta vacío.
Cuestionario:
  1. ¿ Cual es el lenguaje de programación empleado en lazarus ?
  2. ¿ Que significa RAD ?
  3. ¿ Es posible hacer aplicaciones para dispositivos android empleando lazarus ?
  4. ¿ Que es un componente en lazarus ?
  5. ¿ Como se declara una variable tipo entero en pascal ?
  6. ¿ Como se declara una variable tipo real en pascal ?
  7. ¿ Como se declara una variable tipo cadena de caracteres en pascal ?
  8. ¿ Como se convierte una variable cadena de caracteres a entero ?
  9. ¿ Como se convierte una variable tipo cadena de caracteres a real ?
  10. ¿ Como se convierte una variable tipo entero a cadena de caracteres ?
  11. ¿ Como se convierte una variable tipo real a cadena de caracteres ?
  12. ¿ Que es la programación orientada a objetos ?
  13. ¿ Cual es la diferencia entre una clase y un objeto ?
  14. ¿ Que son las propiedades de un objeto ?
  15. ¿ Que son eventos en un objeto ?
  16. Para el objeto Button1 diga que hacen las siguientes propiedades: Caption, Enabled, Font, Height, Width.
  17. ¿ Que son los eventos asociados a un objeto ?
  18. Para el objeto Button1, que hacen los eventos OnClick, OnMouseMove, OnMouseLeave.
  19. Para el objeto Timer1 para que sirven las propiedades Enabled e Interval.
  20. Para el objeto Timer1 para que sirve el evento OnTimer
  21. Para que sirve TShape

miércoles, 12 de junio de 2013

Como Hacer Una Presentación Al Estilo Prezi Con Impress.js

Impress.js


IMPRESS.JS
Impress.js es una herramienta para hacer presentaciones similar a Prezi, el cual se base en las versatilidades de CSS3 y los navegadores modernos como Firefox o Chrome.
Impress.js permite hacer presentaciones con características de traslación, rotación y más, incluyendo efectos 3D. A diferencia de Prezi que cuenta con plantillas, Impress necesita ser programado pero es suficiente con lo que se puede aprender en un curso básico de programación.
También en la actualidad este proyecto de software libres ha crecido y muchos colaboradores han desarrollado plantillas que pueden ser descargadas, así como también herramientas de edición online.

ENLACES DE INTERÉS
EDITORES HTML
Estos son algunos editores de código  que harán mas fácil la verificación de sintaxis y escritura de código.

Editores Online

CONCEPTOS BÁSICOS
Hyper Text Markup Languaje (HTML)
El uso predominante de este lenguaje es el de elaboración de paginas WEB y se utiliza para describir la estructura e información de la pagina en forma de texto.
Para editar un contenido HTML solo se necesita un editor de texto sin formato como el Gedit de Linux o el bloc de notas de windows, y para la visualización se necesita un navegador como Firefox o Chrome.

Videos Tutoriales de (HTML)


Como insertar una imagen


Cascading Styles Sheets (CSS)
Las hojas de estilo en cascada es una manera de aplicar estilos a una pagina web como el tipo de letra, el color, el fondo, etc. Este permite dar formato a un documento HTML, en términos web en HTML se realiza el contenido, pero CSS le da la presentación y diseño a ese contenido en un documento externo.
La ventaja de CSS esta en que se puede tener diferenciado el contenido de la apariencia y que si solo queremos cambiar la apariencia sin afectar el contenido modificamos el archivo CSS.


Java Script
Tiene una sintaxis similar al lenguaje C, pero los nombres y convenciones son adoptados del lenguaje Java, hay que aclarar que Java y JavaScript son dos lenguajes de programación diferentes con propósitos también diferentes.
La utilización mas común del JavaScript es de tener funciones embebidas en paginas HTML que puedan ser ejecutadas desde el lado del usuario por medio de un navegador como los actuales que pueden interpretar el código JavaScript.

Processing Js
Las versiones actuales de Processing cuentan con la opción de llevar el código realizado en Processing a código de JavaScript de manera que pueda utilizar y ejecutar este código en una pagina web. Esto ofrece a los programadores web disponer de la facilidad de realización de aplicaciones gráficas con Processig.

Trabajo Sobre Impress Js Grupo 801b ( 2 puntos del parcial )
Siguiendo los tutoriales realice su propia presentación, el tema a elegir para su presentación es libre puede ser sobre deportes, música, historia, una enseñanza, un trabajo de curso etc.
Ejercicios:
  • Descomprima la carpeta impress.js-master.zip y abra el archivo index.html en un navegador
  • Observe y siga la presentación utilice la barra espaciadora y las flechas del teclado.
  • Abra en un editor de texto index.html y cambie la linea  <q>Aren't you just <b>bored</b> with all those slides-based presentations?</q> con una traducción en español mas adecuada y verifique que el cambio se realiza en la diapositiva.
  • Modifique la primer diapositiva de manera que la letra sea mas grande
  • Por que la primer diapositiva tiene los valores en data x -1000 y en data y -1500, que pasa si son cambiados ?
  • Para que sirve el "step side" ?
  • Para que sirve data-rotate y como se utiliza ? 
  • Para que sirve el data-scale y como se utiliza ?
  • Realice modificaciones en la presentación modificando el data-rotate y el data-scale
  • Como funciona la opción 3D ?
  • Modifique la presentación de manera que se vea un efecto 3D diferente al que viene por defecto.
Cuestionario:
  1. Que es computación en la nube ?
  2. Que significa HTML ?
  3. Que es HTML y para que sirve ?
  4. Cual es la versión mas actual de HTML ?
  5. En HTML para que sirve el head ?
  6. En HTML para que sirve el body ?
  7. En HTML para que sirve la instrucción script ?
  8. En HTML para que se emplean los símbolos < > 
  9. Es posible en en navegador ver el código HTML de una pagina ?
  10. Como se editar el código HTML ?
  11. Que significa CSS ?
  12. Para que sirve el CSS?
  13. CSS es un lenguaje de programación ?
  14. Cual es la versión mas actual de CSS ?
  15. Que relación hay entre CSS y HTML ?
  16. Que es JavaScript ?
  17. Para que sirve JavaScript ?
  18. Que relación hay entre Java y JavaScript ?
  19. Que relación hay entre JavaScript y HTML ?
  20. Que es processing js ?
  21. Que es impress js ?
  22. Que herramienta web permite hacer la presentación online utilizando Impress ?
  23. Es posible agregar efectos 3d con Impress ?
  24. Es posible agregar música con Impress ?
  25. Por que impress js utiliza CSS y JavaScript ?