Вы находитесь на странице: 1из 31

PinginoVE - Gua de Iniciacin

Proyecto Nacional de Hardware Libre PinginoVE


Documento para la edicin colaborativa y distribuida de la primera: GUA DE INICIACIN PINGUINO PAA LA COMUNIDAD PINGINOVE Objetivos: Obtener en un ciclo gil de edicin documental colaborativa (3 a 5 das), una primera versin publicable, bajo libre licenciamiento, de la 1 Gua de Iniciacin PinginoVE, con el propsito de estimular, y continuar impulsando la creacin de documentacin tcnica para el proyecto en idioma espaol para factibilizar el uso del proyecto por nuevos usuarios interesados, y muy especialmente, lograr a la par, mediante este ejercicio de edicin colaborativa, una primera ejercitacin real prctica que nos permita sistematizar la experiencia y factibilizar su replicacin, para las iniciativas documentales siguientes. Plan Bsico de Trabajo: 1. Invitacin a suscripcin voluntaria a la iniciativa, entre los miembros de la lista PinginoVE. 2. Confirmar la lista de miembros que constituirn el equipo de trabajo. 3. Distribuir roles entre los colaboradores suscritos a la iniciativa: Redactores y Revisores. 4. Abordar la edicin del ndice, mediante lluvia de ideas de todos, sobre ste documento. 5. Distribuir tareas de edicin, segn el ndice acordado entre los Redactores y Revisores. 6. Editar el documento. 7. Convenir el cierre (o extensin de plazo) publicar en Forjas y difundir en redes sociales. Equipo de Trabajo y Roles (voluntarios confirmados entre jue 5 y mar 10 de mayo 2001): 1. 2. 3. 4. 5. 6. 7. 8. 9. Pablo Bacouros Juan Pablo Toledo Alexis Sanchez Rafael Torrealba Bakhos Mousa Arturo Cuicas Rafael Salazar Joan Espinoza Ali Moreno Redactor Redactor Redactor Revisor Revisor Revisor Revisor (posible aporte como redactor) Redactor Redactor (y porque no... Revisor)

Formato de Publicacin Propuesto al concluir la 1 versin del documento: Formatos Libres ODT y docBook para continuidad de edicin y PDF para distribucin. Modelos de Licenciamiento propuestos: Creative Commons BY-SA o FDL.

PinginoVE - Gua de Iniciacin

PROPUESTA DE INDICE DE CONTENIDOS Consideraciones importantes: El documento, por su naturaleza introductoria debera ser: suficiente, pero de reducido tamao (aprox. 40 pginas), con poco o ningn texto rettico, lenguaje tcnico sencillo, aunque: acrnimos y tecnicismos complejos en Glosario. rico en ilustraciones y ejemplos. explicaciones objetivas, cortas, claras y precisas.

Por favor indique a continuacin los tpicos/temas tcnicos que considera vitales para eta Gua: Slo coloque el nombre del tema propuesto. Si desea ampliar detalles, o consideraciones respecto a su propuesta temtica, realicelo con absoluta libertad y detalle en las pginas siguientes. Es libre de plantear de cara a cada tema propuesto, porque/cmo si/no incluirlo, agregarlo, reordenarlo, eliminarlo, renombrarlo, entre otros. Los cuadros/columnas con el nombre de cada miembro del equipo serviran para: 1. Votar quines estn de acuerdo o no con la inclusin de cada tema en la Gua (no para saber quin lo propuso). 2. Luego, asignar la edicin de los mismos, una vez se convenga el contenido temtico. Tema / Captulo / SubCaptulo
Introduccin Qu es Hardware Libre Qu es Pingino (Dispositivo) Qu es PinginoVE (Proyecto) Cmo Instalar el IDE Pingino Hola Mundo Pingino ABC del Software de Pingino ABC del Hardware de Pingino Detalle Caracteristicas del Tecnicas de Pinguino (PWM, UART, ADC, Manejo de Puertos) con ejemplos Referencia del Lenguaje
Salazar Pblo Juan Alexis Torrealba Bakhos Arturo Joan Ali

Y Y Y Y Y Y Y Y Y Y Y Y

y y y y y y y y y y

y y y y y y y y

PinginoVE - Gua de Iniciacin

Dnde conseguir ms Informacin Preguntas y Respuestas Frecuentes Soluciones a Problemas Comunes Cmo contribuir con PinginoVE Glosario de Trminos y Acrnimos Referencias (Libros y/o URLs)

Anexos

Espacio para comentarios, recomendaciones, sugerencias, objeciones, y dems propuestas de cambios, inclusiones y eliminacin de temas: PABLO BACOUROS:

JUAN PABLO TOLEDO: Est excesiva la referencia tcnica dentro del ndice Los ejemplos tambin superan por mucho las necesidades de un usuario no iniciado en la electrnica Falta una introduccin a los componentes bsicos: resistencia, capacitor, diodo, diodo emisor de luz y quizs hasta el transistor y la protoboard. Sigo creyendo que las imgenes hechas en fritzing son muy esclarecedoras (para quien lea esquemticos es muy simple), pero hace falta algo ms amigable y atractivo para el principio del libro, donde ser crucial el primer contacto que tenga el lector no iniciado. Fritzing ser muy til luego de que se haga la introduccin a los componentes, cuando ya se tenga idea de cmo se ven, cmo se miden, cmo se usan en un proyecto simple de electrnica (sin el pinguino) y est claro que no muerden. En vez de hacer ejemplos abstractos sera bueno que tengan razn de ser, proyectos que puedan interesarle a un nio.

ALEXIS SANCHEZ: Hace Mucho tiempo se intento comenzar esto... este fue el primer resultado, realizado en docbook

PinginoVE - Gua de Iniciacin

http://pinguino.org.ve/descargas/Aportes/manual.pdf Apoyo el uso de la licencia Creative Commons BY-SA me parece la mas adecuada para este tipo de desarrollos. Esta documentacion aunque sera extensa, sera no mas que una guia referencia para comenzar a trabajar con Pinguino. Esta guia debera contar con al menos una mension de todas las funciones primarias de Pinguino, entiendase... del manejo de una LCD, es Lcd.begin, Lcd.home, Lcd.print y otras, no siendo primarias las de configuracion de la lcd, como Lcd.leftToRight, ya que seria muy extensa la documentacion. Para las imagenes, recomiendo el ampliamente usar el modulo Fritzing de BD4550, ya que es una de las 2 tarjetas de produccion nacional y por ahora es la unica que esta en Fritzing, asi como usar Esta herramienta para la completa creacion de graficos, esquematicos y demas por su amigabilidad en las imagenes. No hay q olvidar que esta version sera la colaborativa de bosquello y llenado de informacion, luego esta sera llevada a algun formato mas configurable, y sobre todo portable, como docbook, latex incluso Scribus. Pero eso sera un trabajo como quien diria de Post Produccion. Toda esta informacin de una forma u otra debe llevarse a la wiki, ya que la wiki siempre sera la principal centro de documentacion y actualizacion, un libro no es tan actualizable como una wiki, pero una wiki no sera tan portable como un libro :D Eliminar los tutoriales, pero agregarlos en la seccion donde se habla de esto, por ejemplo en vez de agregar un tutorial de Comunicacion con una pc usando el puerto UART, en donde se explica lo que son los modulos de comunicacion, agregar alli el ejemplo completo, los ejemplos deben ser lo mas cortos posibles, especificos y funcionales, basicamente un Hola Mundo de la funcion a manera de no hacer tan largo el libro.

RAFAEL TORREALBA: .- Propongo hacer nfasis tambin en la parte de la Comunidad de Pinguino, no lo veo en las Primeras secciones, debera haber una Seccin despus de las Secciones de Que es Pinguino, Que es Pinguino-VE, una de Comunidad Pinguino mundial y Comunidad Pinguino-VE. Propongo que sea un tpico aparte y no agregarlo a como contribuir con Pinguino. Uno de los aspectos mas importantes de la tecnologa libre es el desarrollo comunitario, se que al final se hace referencia pero propongo colocarlo en las primeras secciones, es muy importante. .- Seria excelente agregar tambin la forma de poder adquirir los dispositivos bases, para comenzar a trabajar con Pinguino, se pueden adquirir en cualquier tienda electrnica?, Que cosas si y que cosas no?. .- Investigando, encontre que en la pagina de fritzing.org, tienen un starter kit. http://fritzing.org/shop/starterkit/,

algo asi es que recomiendo que debe ir, al principio. .- Ejercicios Prcticos, con muchos dibujos, tutoriales ejemplos en: http://sites.google.com/site/ pinguinotutorial/beginners/led-blink BAKHOS MOUSSA: Viendo la guia y las propuestas de los compaeros, propongo lo siguiente:

PinginoVE - Gua de Iniciacin

La parte de los diagramas y seria bueno hacer una guia aparte con la simbologia de electronica de los componentes mas usados en pinguino. Tambien se puede agregar como un anexo. o usar un forma de diagrama de tipo cableado, pero para circuitos grandes (por si llega a existir) seria muy engorroso entenderlos, por eso prefiero la primera opcion. Seria bueno ensear o explicar como funciona un protoboard, porque de seguro los que no son electronicos no saben nada de eso aqui hay les dejo un link http://www2.ing.puc.cl/~dmery/arqui/ el_protoboard.pdf codeblock y fritzing seria bueno ir en otra guia separada para asi no complicariamos tanto la persona que inicializa. separar informacion entre principiante, intermedio y avanzado, a que me refiero con esto dejar solamente aqui en esta primera guia de "INICIALIZACION" lo que se necesita para saber programar en pinguino, en el mercado hay libros de distintos que atras dicen que el nivel del libro. entonces la idea es que podemos separar esta guia en 3 principiante, que es la que queremos realizar ahora se podria tomar referencia la guia de inicializacion de arduino que tiene 20 paginas y explica lo basico y necesario. Luego se podria crear una guia para intermedios y avanzados con informacion mas especifica y amplia. Por ejemplo un principiante no le intereza ahora usar memorias eeprom la idea es que el que lea esta guia empieze a trabajar en pinguino y sepa hacer el manejo basico del dispositivo y aprenda a hacer cosas para impresionar a sus amigos y eso.

ARTURO CUICAS: Estoy de acuerdo en que los tutoriales deben ser los mas breves y sencillos posibles, bsicamente que sirvan de apoyo a la teora y permitan al lector poder imaginar sus variantes, adems que cosas muy complejas pueden asustar a los iniciados.

RAFAEL SALAZAR: Sugiero colocar en la seccin Instalacion MS Windows un aparte referido a Windows 7 ya que es diferente y ha generado problemas a algunas personas, esta parte esta documentada en ingles en el wiki de pingino internacional (http://wiki.pinguino.cc/index.php/Windows_7) (seria cuestin de traducir probar y adaptar a nuestros objetivos) Se debe hacer incapie en la instalacin deI IDE en todas las plataformas posibles ya que sin el IDE instalado no tenemos nada y los principiantes podran fustrarce y abandonar JOAN ESPINOZA: Sugiero que se desarrollen los mismos tutoriales que irn al Wiki, y Portal, para resolver transversarlmente las 3 necesidades. Para tales fines, sugiero emplear la estructura de contenido de tutoriales planteada por Alexis Sanchez en el Wiki. En el apartado Referencia del Lenguaje considero muy provechoso, apoyarnos en el esfuerzo de catalogacin de instrucciones y libreras, del CheatSheet y el Cubo, recientemente publicados, y referirnos slo a las instrucciones heredadas de Arduino/Wiring y una compilacin muy bsica, muy elemental de las estructuras de control y operadores de C ANSI.

PinginoVE - Gua de Iniciacin

Propongo que no se incluya en sta Guia el detalle de uso de las Libreras Pingino, de las Libreras C ANSI, ni de las Libreras SDCC. Pues perdera su caracter introductorio, y ampliara en complejidad el documento. Estos temas, aunque requieran documentacin deberan ser objeto de otro manual de Referencia, dedicado a la Programacin SDCC. ALI MORENO: En los comentarios pues creo que uds ya tocaron los temas mas relevantes ;)

PinginoVE - Gua de Iniciacin

bitacora del editor


Cada vez que se realize una edicion colocar aqui que se hizo, fecha y quien para llevar una especie de control de veriones.

10-05 Pablo Bacouros>> Redaccin de los conceptos 1 y 2. 18-05 Rafael Salazar >> Inicio de Redaccin sobre I2C 19-05 Alexis Sanchez>> Bitacora del Editor, Se comenzo a finalizar el paso 4 y comenzar al 5. 29-05 Alexis Sanchez >> Definicion de Indice y Comienzo de la etapa de asignacion de contenido. 31-05 Alexis Sanchez >> Finalizado Modulo PWM 22-07 Pablo Bacouros >> hola mundo

PinginoVE - Gua de Iniciacin

INDICE GENERAL
INDICE GENERAL INTRODUCCIN Qu es Hardware Libre?: Qu es Pingino? (Dispositivo) Qu es PinginoVE (Proyecto) Qu es PinginoVE (Comunidad Venezolana) Cmo Instalar el IDE Pingino Instalacin en GNU/Linux Instalacin en MS-Windows Instalacin en MAC OS Hola Mundo Pingino Bootloader IDE Compilacion y Carga SDCC Pinguino 2550 Pinguino 4550 Pinguino 32X COMPILADOR SDCC Estructura de un programa Tipos de datos Las constantes Variables Operadores Asignacin Aritmticos Relacionales Lgicos De bits Punteros Funciones Declaraciones de control if - else Switch For While / Do-While Comentarios La gestin de los puertos Manejo de indivivual de un Pin

PinginoVE - Gua de Iniciacin

Manejo de Grupal de Pines LCD LCD grfico Teclado (keypad 3x4) Las interrupciones y los temporizadores Interrupciones Cambio en Pin0 Cambio en Pin1 Cambio en Pin2 Cambio entre los pines 4 y 7 Comparador 1 Comparador 2 Contador por Timer0 Contador por Timer1 Contador por Timer2 Contador por Timer3 Convertidor Analgico - Digital Modulo PWM PWM.setdutycycle Ejemplo: Modulos de Comunicacion Comunicacon RS232 Interfaz Inter-Circuitos (I2C) Memoria EEPROM Memoria FLASH USB - Universal Serial Bus USB CDC (Communication Device Class) DNDE CONSEGUIR MS INFORMACIN PREGUNTAS Y RESPUESTAS FRECUENTES SOLUCIONES A PROBLEMAS COMUNES CMO CONTRIBUIR GLOSARIO Trminos Acrnimos Anexos Temas (Skins) i18nPack

INTRODUCCIN

PinginoVE - Gua de Iniciacin

Qu es Hardware Libre?:
El termino Hardware Libre[1], surge de la necesidad de hacer referencia a un nuevo concepto en el desarrollo de tecnologas accesibles y disponibles, para el uso o acceso del publico en general donde el estudio, modificacin, reproduccin y distribucin son Legales.

Qu es Pinguino? (Dispositivo)
Pingino es un Dispositivo Electrnico y Embebido capaz de realizar tareas complejas, procesando distintos tipos de datos; por los puerto perifricos de entrada y salida que lo conforman. Un Pinguino puede ser programado con instrucciones lgicas para automatizar procesos industriales y/o particulares, donde una ventaja de su plataforma de desarrollo es interactuar con el hardware de manera sencilla y rpida.

Qu es Pinguino? (Comunidad Internacional) Qu es PinginoVE (Proyecto)


PinginoVE es un proyecto base en el cual pueden derivar otros proyectos que den soluciones particulares a diferentes problemas de un colectivo o sociedad.

Qu es PinginoVE (Comunidad Venezolana)


PinginoVE es una comunidad orientada a difundir el uso y el desarrollo de hardware libre nacional.

Cmo Instalar el IDE Pingino


1.- Obtener el IDE
Accedemos a www.pinguino.cc y entramos a la seccion de Download

PinginoVE - Gua de Iniciacin

Solo seleccionamos el sistema operativo que vamos a usar y descargamos.

2.- Descomprimimos de los archivos


Se descomprimen los archivos contenedores del IDE en alguna carpeta de facil acceso.

T3.- Instalacin de las dependencias.

PinginoVE - Gua de Iniciacin

GNU/Linux
Debian y/o Derivados $ sudo apt-get install libusb-1.0-0 python-wxgtk2.8 python-usb Fedora (Buscas los siguientes paquetes en el Mandriva Control Center) libwxPythonGTK2.8 libwxPythonGTK2.8-devel libusb1.0_0 libusb1.0-devel Descarga e instala pyusb desde: https://sourceforge.net/projects/pyusb/files/

Microsoft Windows

Descarga e Instala Python 2.5.2 http://www.python.org/ftp/python/2.5.2/python-2.5.2.msi Descarga e Instala wxpython 2.8 http://downloads.sourceforge.net/wxpython/wxPython2.8win32-unicode-2.8.9.1-py25.exe Descarga e Instala pyusb http://bleyer.org/pyusb/PyUSB-1.5.win32-py2.5.exe Descarga e Instalal pyusb http://sourceforge.net/projects/pyusb/files/PyUSB%200.x/0.4.1/ pyusb-0.4.1.win32-py2.5.exe/download para windows XP LibUSB 1.2.1 Pinguino necesita LibUSB para comuninicarse con la computadora. No instalar versiones previas a 1.2.1. Descarga: http://sourceforge.net/projects/libusb-win32/files/libusb-win32-releases/1.2.1.0/ libusb-win32-src-1.2.1.0.zip/download. y extrae los archivos 1. Desconecta el Pinguino 2. Necesitas saber que Procesador tienes Si tu computadora es una X86 32 bit system: i. Ve a la carpeta libusb-win32-bin-1.2.1.0\bin\x86. ii. Renombra el archivo libusb0_x86.dll a libusb0.dll. iii. copia este nuevo archivo en c:\Windows\system32\. iv. Copia el libusb0.sys en c:\Windows\system32\drivers\. Si tu computadora es una X86 64 bit system: i. Ve a la carpeta libusb-win32-bin-1.2.1.0\bin\x86 ii. Renombra el archivo libusb0_x86.dll a libusb0.dll. iii. copia este nuevo archivo en c:\Windows\syswow64\ iv. Copia el libusb0.sys en c:\Windows\system32\drivers\. Si tu computadora es una AMD 64 bit system: i. Ve a la carpeta libusb-win32-bin-1.2.1.0\bin\amd64 ii. copia este nuevo archivo c:\Windows\system32\ folder, iii. Copia el libusb0.sys en c:\Windows\system32\drivers\. If your computer is an intel IA64 bit system:

PinginoVE - Gua de Iniciacin

i. Ve a la carpeta libusb-win32-bin-1.2.1.0\bin\ia64. ii. copia este nuevo archivo en c:\Windows\system32\. iii. Copia el libusb0.sys en c:\Windows\system32\drivers\.
Windows XP 1. Antes de Conectar tu placa debes descargar el Driver de Microchip modificado por el Proyecto Pinguino: http://www.hackinglab.org/pinguino/download/ driver%20pinguino%20windows/ 2. Extrae los archivos en una nueva carpeta. 3. Ahroa es momento de conectar tu Pinguino, Windows preguntara sobre el driver. Selecciona la carpeta donde descomprimiste los archivos en el paso anterior. 4. Para verificar la conexion ir a C:\Program Files\LibUSB-Win32\bin\ y ejecuta testlibusb-win.exe Para Windows 7 1. Descarga el driver pinguino w7 http://www.hackinglab.org/pinguino/download/ driver%20pinguino%20windows/driver%20pinguino%20w7.zip 2. Extrae los archivos en la carpeta libusb-win32-bin-1.2.1.0.

Mac OS X 10.6.x
Vamos a necesitar las Herramientas de Desarrollo para Mac OS X Developer Tools para compilar todo lo necesario. If you type: gcc in a terminal and get "command not found", you need to install the compiler and its associated OS X SDKs (Software Development Kits) which are all included in the Mac OS X developer tools package. You can install the developer tools package from your Mac OS X installation DVD. The latest versions may be downloaded from developer.apple.com. libusb Download the libusb 0.1.4 universal binary for Snow Leopard from here and run the install package. pyusb Download the pyusb 0.4.3 source code from here Before you compile and install the pyusb source code, you need to fix the paths in setup.py for Snow Leopard by: 1. adding '-L/Developer/SDKs/MacOSX10.6.sdk/usr/lib' to the extra_link_args 2. adding '-I/Developer/SDKs/MacOSX10.6.sdk/usr/include' to the extra_compile_args and then you can compile and install pyusb with the command sudo python setup.py install. wxPython While wxPython is already installed, it is only a 32 bit installation which is not compatible with the default 64 bit Python installation. To fix this, you need to open a terminal and type: defaults write com.apple.versioner.python Prefer-32-Bit -bool yes If you ever need to re-enable the 64 bit version you simply type: defaults write com.apple.versioner.python Prefer-32-Bit -bool no to reverse the process.

4.- Creando Permisos de Usuario (Necesario para GNU/Linux)

PinginoVE - Gua de Iniciacin

$ sudo groupadd microchip 2>/dev/null $ sudo usermod -a -G microchip $USER $ sudo cp 41-microchip.rules /etc/udev/rules.d/ $ sudo cp 26-microchip.rules /etc/udev/rules.d/

5.- Lanzamos el IDE


$ sudo python Pinguino/pinguinobeta9-05.py

PinginoVE - Gua de Iniciacin

Hola Mundo Pingino


(Primer Ejemplo PASO a PASO de Uso de Pingino - Encender y apagar un LED)

Descripcin General: El primer paso para hacer una aplicacion con pingino es configurar los repectivos Pin que constituyen los puertos del micro-controlador principal. De manera que esta configuracion de los puertos establecen los procesos de escritura y/o lectura de forma digital y/o analogica. Paso 1: Definicion o Configuracin de los puertos para flujo de Lectura/Escritura, en el cuerpo de la sentencia setup(). Paso: 2: Diseo de algoritmo donde se estable cuando, como o porque debe encender y/o apagar un LED. en el cuerpo de la sentencia void().

Lista componentes necesarios para la elaboracin de su primera practica : 1. 2. 3. 4. 5. 6. 7. 8. Protoboard Resistencias Cables LED. Pinguino. IDE. Codigo Fuente. Animo y Confianza

PinginoVE - Gua de Iniciacin

ABC del Software de Pingino


(Descripcin General de las herramientas de Software la Plataforma Pingino)

Bootloader
Cargador de Arranque de Pingino

IDE
Entorno Integrado de Desarrollo

Compilacion y Carga
Como Compilar y Cargar a nuestro Pinguino

SDCC
Compilador C para Pequenos Dispositivo

PinginoVE - Gua de Iniciacin

ABC del Hardware de Pingino


Pinguino 2550
Caracteristicas tecnicas de Pinguino usando un 18F2550

Pinguino 4550
Caracteristicas tecnicas de Pinguino usando un 18F4550

Pinguino 32X
Caracteristicas de Pinguino Usando un Pic a 32Bits

PinginoVE - Gua de Iniciacin

COMPILADOR SDCC
Que es SDCC

Estructura de un programa Tipos de datos Las constantes Variables Operadores


Asignacin

Aritmticos

Relacionales

Lgicos

De bits

PinginoVE - Gua de Iniciacin

Punteros Funciones Declaraciones de control


if - else

Switch

For

While / Do-While

Comentarios

La gestin de los puertos


Manejo de indivivual de un Pin
Con este ejemplo simplemente vamos realizar un primer ejercicio, el cuale es el encendido y apagado de 1 LED, para mostrar como es el manejo de un pin.

PinginoVE - Gua de Iniciacin

void setup() { // Indicamos que la salida de la seal sera digital y en el Pin 7 pinMode(7, OUTPUT); } void loop() { digitalWrite(7, HIGH); //Encendemos el led delay(1000); // Esperamos un segundo digitalWrite(7, LOW); // Apagamos el led delay(1000); // Esperamos un segundo }

Manejo de Grupal de Pines


importante ya que aqui no se tiene un PORTB, PORTC, hay q explicar como se hace esto

LCD Teclado (keypad 3x4)

Las interrupciones y los temporizadores


Que es una Interrupcion y un Temporizacion

Interrupciones
Cambio en Pin0 Cambio entre los pines 4 y 7 Comparador 1

PinginoVE - Gua de Iniciacin

Contador por Timer1

Convertidor Analgico - Digital Modulo PWM


El Modulo PWM (Puslse Width Modulation) o Modulacin de Ancho de Pulso, Permite obtener una seal peridica a la cual se le puede modificar el Ciclo de Trabajo, Con esto modificamos el tiempo durante el cual a seal de se encuentra en estado alto o bajo, de modo que el voltaje promedio aplicado a la carga es proporcional al tiempo en alto de la seal. Esta funcin esta implementada en los pines 11 y 12 de Pinguino (18F2550 y 18F4550).

PWM.setdutycycle
Con una sintaxis PWM.setdutycycle( pin, ciclo ), donde pin indica que pin sea usado para la salida de la seal y dato s(ciclo) era el valor asignado a la seal, esta debe estar entre 0 y 1023, siendo este su rango de trabajo.

Ejemplo:
Descripcin del Circuito: Control de Potencia de un motor DC a travs de pulsadores. Diagrama y Montaje:

PinginoVE - Gua de Iniciacin

Cdigo del Programa:


#define MASPWM 0 #define MENOSPWM 1 #define SALIDA 11 int pwm; int paso; void subirpwm(){ delay(100);//Retardo de 100ms para evitar seal de Rebote pwm = pwm + paso; PWM.setdutycycle(SALIDA,pwm); } void bajarpwm(){ delay(100);//Retardo de 100ms para evitar seal de Rebote pwm = pwm - paso; PWM.setdutycycle(SALIDA,pwm); } void setup(){ pinMode(MASPWM, INPUT); pinMode(MENOSPWM, INPUT);

PinginoVE - Gua de Iniciacin

pwm = 0; paso = 256; } void loop(){ if(digitalRead(MASPWM)) {subirpwm();} if(digitalRead(MENOSPWM)) {bajarpwm();} }

Modulos de Comunicacion
Comunicacon RS232 Interfaz Inter-Circuitos (I2C)
I2C es un bus de comunicacin serial sincrono, su nombre se deriva de las iniciales de Inter-IntegradeCircuit y su protocolo fue desarrollado por Philips Inc. para la transferencia de data entre integrados a nivel de PCB. El protocolo I2C se implementa a travs de dos hilos, uno para la seal de reloj (SCL) y uno para la data (SDA), siendo la seal de reloj generada por un dispositivo Maestro sincronizando de esta manera toda transferencia de data a los dispositivos Esclavos. En todo bus I2C debe existir al menos un dispositivo Maestro (pudiendo existir mas de uno , configuracin multi-maestro) y uno o mas Esclavos. El dispositivo Maestro es el nico que puede iniciar la transferencia de data, decidir con cual dispositivo se realiza, el sentido de la misma ( envo o recepcin) y cuando se finaliza. Cada dispositivo Esclavo conectado al bus tiene asignada una direccin codificada en 7 o 10 bit.

Memoria EEPROM Memoria FLASH

PinginoVE - Gua de Iniciacin

USB - Universal Serial Bus


USB CDC (Communication Device Class)

PinginoVE - Gua de Iniciacin

DNDE CONSEGUIR MS INFORMACIN

Comunidad Nacional PinginoVE


Sitio Oficial del Proyecto / Comunidad Wiki Oficial del Proyecto Twitter e Identi.ca http://www.pinguino.org.ve http://wiki.pinguino.org.ve @pinguinove

Comunidad Internacional Pingino


Sitio Oficial de Hacking Lab

Otras Fuentes de Informacin

PinginoVE - Gua de Iniciacin

PREGUNTAS Y RESPUESTAS FRECUENTES

PinginoVE - Gua de Iniciacin

SOLUCIONES A PROBLEMAS COMUNES

PinginoVE - Gua de Iniciacin

CMO CONTRIBUIR

GLOSARIO Trminos
Arduino Pinguino Hardware Software Firmware Microcontrolador Microprocesador Proyecto predecesor de Pinguino. Dispositivo Microcontrolador para Computacin Fsica y prototipado rpido.

Acrnimos

PinginoVE - Gua de Iniciacin

BIOS USB PIC HL SL GNU GPL CC PCB

Sistema Bsico de Entrada/Salida (del ingls Basic Input Output System) Bus Serial Universal (del ingls: Universal Serial Bus) Controlador de Interfaces Programables (de ingls: Programmable Interface Controller) Hardware Libre Software Libre Proyecto GNU (del ingls: GNU is not UNIX) Licencia Pblica General (del ingls: Gerenal Public License) Creative Commons: Licenciamiento de Obras Print Circuit Board (Tarjeta soporte de los componentes electronicos)

PinginoVE - Gua de Iniciacin

FUENTES DE REFERENCIA
Sitios Web
[1] - http://www.pinguino.org.ve [2] - http://www.openmoko.org [3] - http://www.hackinglab.org Sitio Oficial del Proyecto y comunidad PinginoVE Proyecto dedicado a Liberar telefonos moviles . Consejos y Trucos para Hackear Juguetes.

Bibliografa

Fuente viva

PinginoVE - Gua de Iniciacin

Anexos
Temas (Skins)
Juego de Iconos para personalizacin del IDE

i18nPack
Paquete de Internacionalizacin

Вам также может понравиться