Sunteți pe pagina 1din 4

Arduino - Firmata

http://arduino.cc/es/Reference/Firmata

search

Compra

Descarga

Primeros Pasos

Aprende

Referencia

Hardware

FAQ

Blog

Forum

Playground

Reference Language (extended) | Libraries | Comparison | Changes

Firmata - Library - Detalles del ratio de baudios - Detalles del Protocolo - Prouestas de Protocolo

Librera Firmata
La librera Firmata implementa el protocolo Firmata que permite comunicarse con un software alojado en un ordenador servidor. Esto permite escribir un firmware personalizado sin tener que crear tu propio protocolo y objetos, para el entorno de programacin que ests usando.

Mtodos
begin()

Inicia la librera
begin(long)

Inicia la librera y sobreescribe el ratio de baudios por defecto


printVersion()

Enva la versin del protocolo al ordenador servidor


blinkVersion()

Parpadea la versin del protocolo en el pin 13


printFirmwareVersion()

Enva el nombre del firmware al ordenador servidor


setFirmwareVersion(byte mayor, byte menor)

Establece el nombre del firmware y la versin, usando el nombre del sketch, menos .pde Enviando mensajes
sendAnalog(byte pin, int valor)

Enva un mensaje analgico


sendDigitalPorts(byte pin, byte puertoPrimario, byte puertoSecundario)

Enva los puertos digitales como bytes individuales


sendDigitalPortPair(byte pin, int valor)

Enva los puertos digitales como un entero (int)


sendSysex(byte comando, byte bytec, byte* bytev)

1 de 4

26/03/12 02:28

Arduino - Firmata

http://arduino.cc/es/Reference/Firmata

Enva un comando con un array arbitrario de bytes


sendString(const char* string)

Enva un String al ordenador servidor usando tipo de comando personalizado


sendString(byte comando, const char* string)

Enva un string al ordendor servidor usando un tipo de comando personalizado Recibiendo mensajes
available()

Chequea si hay algn mensaje entrante en el buffer


processInput()

Procesa los mensajes entrantes en el buffer, enviando los datos a cualquier funcin de retrollamada registrada
attach(byte command, funcionRetrollamada miFuncion)

Vincula una funcin a un tipo de mensaje de entrada


detach(byte command)

Desvincula una funcin de un tipo de mensaje de entrada

Funciones de retrollamada (Callback)


A la hora de vincular tu funcin a un tipo de mensaje, tu funcin debe ajustarse a la funcin de retrollamada estndar. Actualmente hay tres tipos de funciones de retrollamada en Firmata: generic, string, and sysex. generic
void callbackFunction(byte pin, int valor);

system_reset
void systemResetCallbackFunction(void);

string
void stringCallbackFunction(char *miString);

sysex
void sysexCallbackFunction(byte pin, byte byteCount, byte *arrayPointer);

Tipos de Mensajes Estos don varios tipos de mensajes que puedes vincular a las funciones.
ANALOG_MESSAGE

el valor analgico para un nico pin


DIGITAL_MESSAGE

Los 8-bits de datos del pin digital (un puerto)


REPORT_ANALOG

habilitar/deshabilitar el informe de un pin analgico


REPORT_DIGITAL

habilitar/deshabilitar el informe de un puerto digital


SET_PIN_MODE

Cambia el modo del pin entre INPUT/OUTPUT/PWM/etc.


FIRMATA_STRING

2 de 4

26/03/12 02:28

Arduino - Firmata

http://arduino.cc/es/Reference/Firmata

Strings de estilo C, utiliza stringCallbackFunction para el tipo de funcin


SYSEX_START

Genrico, mensajes de longitud arbitraria (va protocolo MIDI SysEx), emplea sysexCallbackFunction para el tipo de funcin
SYSTEM_RESET

Mensaje para resetear el firmware a us estado por defecto , utiliza systemResetCallbackFunction para el tipo de funcin

Ejemplo
This example shows how to send and receive analog messages using Firmata.
#include <Firmata.h> byte pinAlalogico; void analogWriteCallback(byte pin, int valor) { pinMode(pin,OUTPUT); analogWrite(pin, valor); } void setup() { Firmata.setFirmwareVersion(0, 1); Firmata.attach(ANALOG_MESSAGE, analogWriteCallback); Firmata.begin(); } void loop() { while(Firmata.available()) { Firmata.processInput(); } for(pinAlalogico = 0; pinAlalogico < TOTAL_ANALOG_PINS; pinAlalogico++) { Firmata.sendAnalog(pinAlalogico, analogRead(pinAlalogico)); } }

Pgina principal Referencia Correcciones, sugerencias, y nueva documentacin debern ser publicadas en el Foro (castellano) o en el Foro (ingls). El texto de la referencia de Arduino est publicado bajo la licencia Creative Commons Reconocimiento-Compartir bajo la misma licencia 3.0. Los ejemplos de cdigo de la referencia estn liberados al dominio pblico. Share|

Arduino | Edit Page | Page History | Printable View | All Recent Site Changes

3 de 4

26/03/12 02:28

Arduino - Firmata

http://arduino.cc/es/Reference/Firmata

4 de 4

26/03/12 02:28

S-ar putea să vă placă și