Notas de versión del software de Arduino

 

0018 - 2010.01.29

[core / librerías]

* Añadidas las funciones tone() y noTone() para la generación de la frecuencia.
* Añadido el comando Serial.end().
* Añadido el parámetro precision para imprimir los floats / doubles.
* Incorporada la última versión de Firmata.
* Solucionado el problema con desactivar el uso del pin RW en la librería LiquidCrystal. 
* Ya no se deshabilitan interrupciones en delayMicroseconds().
* Solucionado el problema con la función micros() que devolvía valores incorrectos desde 
dentro de una interrupción.
* Solucionado el problema que impedía el uso de entradas analógicas 8-15 en el Mega.

[entorno de desarrollo]

* Sincronizado con la base de código de Processing 1.0.9, consiguiendo varias correcciones,
  incluyendo un error que provoca que falle la grabación al cerrar el último sketch. 

* Añadido soporte para hardware de terceros en la carpeta 
SKETCHBOOK/hardware folder,
 refleja la estructura actual de la carpeta de hardware en Arduino.

* Añadidos los accesos directos Ctrl-Shift-M / Command-Shift-M para el monitor serie.

* Manteniendo pulsada la tecla 'shift' mientras pulsamos los botones Verify/Compile o 
Upload de la barra de herramientas genera la salida detallada (incluyendo las líneas de comandos).

* Movido el ejecutable generado (en la grabación de un ''sketch'') de la 
subcarpeta applet/ del ''sketch'' a un directorio temporal 
(soluciona de problemas con la grabación en el microcontrolador de ejemplos 
  desde dentro de la imagen de disco de Mac OS X o desde una carpeta de aplicaciones Linux). 

* Solucionado un fallo al impedir la inclusión de archivos .cpp y .h (o .c y .h)
  del mismo nombre en un sketch. 

* Mejorada la imagen de disco de Mac OS X (.dmg): añadido un acceso directo a la
  carpeta 'Aplications', una imagen de fondo con una flecha, y los nuevos controladores FTDI. 

0017 - 2009.07.25

[documentación / ejemplos]
* Más ejemplos revisados y nuevos de Tom Igoe.

[core / librerías]
* Actualizada la librería LiquidCrystal por Limor Fried.  Ver Guía de Referencia para más detalles.
* Actualizada la librería Firmata a la version 2.1 (rev. 25).
* Reemplazada la librería Servo con una (MegaServo) por Michael Margolis.
  Soporta hasta 12 servos en la mayoría de las placas Arduino y hasta 48 en la Mega.
* Mejora de la precisión de los cálculos de velocidad de transmisión para las comunicaciones serie.
(corrige los problemas de doble-velocidad en las placas Arduino que trabajan a 8 MHz).
  Gracias a gabebear.

[entorno de desarrollo]
* Sincronizado con la base de código de Processing 1.0.3 (rev. 5503), ofreciendo bringing
  muchas mejoras (que se enumeran a continuación).
* Nuevos iconos e imagen "acerca de" por Thomas Glaser (envis precisely).
* Soporta múltiples ventanas de ''sketch''.
* El monitor serie ahora tiene su propia ventana.
* Nuevo elemento de menú ''Comment/Uncomment'' (dentro de ''Edit'') y teclas de acceso rápido.
* Nuevos elementos de menú ''Increase'' y ''Decrease Indent'' (dentro del menú ''Edit'') y teclas de acceso rápido.
* Soporte para librerías de terceros en la carpeta SKETCHBOOK/libraries.
* Las librerías se compilan ahora con el ''sketch'', eliminando la demora cuando tenemos que cambiar de placas y la necesidad de borrar los archivos .o cuando cambia el código fuente de la librería.
* Arduino ahora viene como un archivo app (en un dmg) en los Mac.
* Añadido ''Arduino Nano con ATmega328'' al menú ''Tools > Board''.


0016 - 2009.05.30

[documentación / ejemplos]
* Nuevos ejemplos de comunicación (con el correspondiente código de Processing y Max/MSP) por 
  Tom Igoe.

[core / librerías]
* Añadido el soporte para el Arduino Pro y Pro Mini 3.3V / 8 MHz con ATmega328.
* Añadido soporte para el Arduino LilyPad con ATmega328.
* Añadidos los métodos write(str) y write(buf, size) a  Print, Serial, y las clases
  Cliente y Server de la librería Ethernet. Esto permite más eficiencia 
  (menos paquetes) en la comunicación Ethernet. (Gracias a  mikalhart.)
* Mejorada la forma de conexión y desconexión de la clase Cliente de la librería Ethernet.
 Debe reducir o eliminar los fallos de conexión y los largos tiempos de espera.(Gracias a Bruce Luckcuck.)
* Optimizado el ''timer0 overflow interrupt handler'' (usado en millis() y
  micros()).  Gracias a westfw y mikalhart.
* Corregido el error que limita la macro bit() a 15 bits.  Gracias a Paul Badger.
* Añadida la constante de versión ARDUINO (gracias a la insistencia de mikalhart).

[entorno de desarrollo]
* Ordenadas los elementos del menú ''Tools > Board''.
* Añadido el comando "Copy as HTML" al menú ''Tools''.
* Eliminados (tal vez) los errores ocasionales de "No se pudo determinar el tamaño
 del programa." (''"Couldn't determine program size"'').  Gracias a Clever Monkey.
* Movida la selección del aspecto y estilo Linux al script de arduino para que
 pueda ser cambiado por los usuarios. Gracias a Eberhard Fahle.

[herramientas]
* Añadida la generación automática de dependencias al Makefile.  (Lars Immisch)


0015 - 2009.03.26

[core / librerías]
* Añadido soporte para el Arduino Mega (ATmega1280).

[entorno de desarrollo]
* Restablecimiento del uso de la librería core.a en el proceso de generación de ejecutable, 
disminuyendo ligeramente
 el tamaño del ''sketch'' compilado.  (Gracias a William Westfield.)
* Corregido error en la copia a foro (gracias a eried).


0014 - 2009.03.07

[core / librerías]
* Corregido error que impedía múltiples conexiones de salida de Client con la librería Ethernet.

[entorno de desarrollo]
* Distinción clara de ATmega168 vs. ATmega328 en el menú ''Tools > Boards''.

[herramientas]
* Actualizadas las herramientas AVR para Mac OS X a AVR MacPack 20081213.  Esto incluye 
  avr-gcc 4.3.2, que corrige problemas con las llamadas a funciones desde las interrupciones.


0013 - 2009.02.06

[documentación / ejemplos]
* Añadidos ejemplos para el Sensor Ping de Parallax y el acelerómetro Memsic 2125.

[core / librerías]
* Añadido soporte para imprimir ''datos flotantes'' a la clase Print (significa que funcionará también
  en las clases Serial, Ethernet, y LiquidCrystal). Incluye dos 
  dígitos decimales.
* Añadidas word, word(), bitRead(), bitWrite(), bitSet(), bitClear(), bit(),
  lowByte(), y highByte(); ver la Guía de Referencia para más detalles.
* Trabajo entorno al problema que causó la salida PWM de los pines 5 y 6 que 
nunca llegaba a ser 0 (esto provocaba, por ejemplo, que un LED continuara luciendo débilmente).
* Eliminadas las macros ''cast'', puesto que los ''casts'' al estilo función son una
 característica de C++.Esto 
  debe corregir las librerías que dejaron de funcionar en Arduino 0012.
* Modificada pulseIn() para que espere a una transición para comenzar a cronometrar
 (es decir, ignorando cualquier pulso que ya hubiera compenzado cuando se llamó a la función).
* Corregido un error en random() que limita los rangos de valores generados. Gracias 
  a Mikal Hart.
* Modificada delay() para realizar una pausa de al menos el número de milisegundos dado.
* Corregido un error en la librería Ethernet que interfiere con el uso de los pines 8 y 9.
* Originating each outgoing network connection from a different port (en la
  clase Client de la librería Ethernet).  Gracias a Paul y joquer.
* Actualizado el cargador de arranque del ATmega168 para que trabaje con las distribuciones
 estándar de avrdude 
  (responding to signature requests made with the universal SPI command) y 
  almacenar información en la EEPROM correctamente. Thanks a ladyada.
* Añadido soporte para el ATmega328.  La velocidad para grabar ''sketch'' es 57600 baudios,
 también puedes necesitar editar boards.txt o regrabar su gestor de arranque si compras un  
  ATmega328 con cargador de arranque de adafruit u otro proveedor.

[entorno de desarrollo]
* Omisión de las funciones no utilizadas en la compilación de ''sketches'', reduciendo su tamaño.
* Cambio en el proceso de compilación para permitir el uso de la directiva EEMEM  (aunque
  aún no se grabe información en la EEPROM).


0012 - 2008.09.18

* Añadido Arduino Nano al menú ''Boards''.
* Añadido Arduino Pro o Pro Mini (8 MHz) al menú ''Boards''.
* Añadida la librería Firmata de Hans Steiner y otros.  Esta provee un protocolo
  estándar para la comunicación con software en una computadora.
* Añadida una librería Ethernet para utilizarla con el escudo (''shield'') Arduino Ethernet.
* Añadida una librería Servo basada en el trabajo de Jim Studt.
* Añadida una librería LiquidCrystal basada en el trabajo en el ''playground''.  Soporta los modos 4- y 8-bit.
* Mejora en millis(): Ahora se desborda después de 49 días en lugar de a las 9 horas, pero 
ahora usa algo más de potencia de proceso.
* Se ha corregido el error en la dirección de marcha atrás de la librería Stepper. (Gracias a Wayne titular.)
* Movida la inserción de #include <WProgram.h> al final de todos los comentarios y órdenes #include
  en el archivo principal del ''sketch''.  Esto significa que un #include <stdlib.h> ahora funciona.
* Actualizadas a las nuevas versiones de avr-gcc (4.3.0) y avr-libc (1.6).  Esto
  proporciona compatibilidad con los nuevos chips Atmel, pero puede incrementar el tamaño de los ''sketches''.
* Habilitar, por cada placa, especificar la preferencia upload.using, permitiendo
  grabar los ''sketches'' en el microcontrolador vía cargador de programas
 para algunas placas y vía un programador para otras.
* Añadidos valores devueltos en algunas funciones de la librería Wire para permitir un
  mejor control de errores.
* Corregida random() para que trabaje con valores ''long''.
* Creación de una clase base abstracta Print para permitir que Serial, SoftwareSerial,
  y LiquidCrystal compartan código de print() y println().
* Incorporados los modos de temporización ''watchdog'' de ladyada para el código del 
cargador de arranque, pero sólo compilándolos para la Pro y Pro Mini (porque están incluidas
  en el gestor de arranque que se graba en las placas de SparkFun).


0011 - 2008.03.28

* Mejora de la fiabilidad para grabar sketches al microcontrolador de  Arduino BT.
* Mejor soporte para la grabación del gestor de arranque con un programador paralelo.
* Se ha corregido 'Find' en la Guía de Referencia.
* Añadida la función map() para asignar (mapear) valores de un rango a otro.
* Añadida la función analogReference().
* Se han añadido las funciones interrupts() y noInterrupts().
* Se han añadido las funciones degrees() y radians().
* Añadido parámetro de tiempo de espera (en microsegundos) para pulseIn(); por defecto es 1 segundo.
* Permite grabar un ''sketch'' en el microcontrolador con un programador.
* Mejora de la detección de las funciones que necesitan de prototipos.
* Colocación de los prototipos de las funciones después de los #include y los #define.
* Ya no se mueven las órdenes #include al principio del 'sketch''.
* Ahora puede arrastrar los archivos .pde al icono de Arduino en el escritorio de Mac OS X.
  Gracias a Peter Sgouros.
* Nuevo script, de Tom Pollard, para descargar la guía de referencia. Gracias Tom!
* Varios cosas para Mac OS X y otros parches de Wim Lewis. Gracias Wim!
* Actualización de los controladores de FTDI para Mac OS X. 


0010 - 2007.10.11

* Soporta la Arduino LilyPad.
* Soporta Vista.
* Distribución universal para Mac OS X.
* Impresión!
* Copia a portapapeles para pegar en el foro.
* Nuevo menú 'Board' sustituye al menú 'Microcontroller'.
* El nuevo menú 'Burn Bootloader' ofrece una selección de programadores.
* Nuevo y mejordos accesos directos del teclado.
* Se han solucionado algunos errores encontrados/reemplazados.
* Mejor auto-formato.
* Mejora en los mensajes de error al cargar.
* Soporte para COM10 y superior en Windows.
* Corregida la carga automática del menú 'Serial Port' bajo Windows.
* Aspecto y comportamiento de Quaqua en Mac OS X.
* Reorganización de la carpeta de la aplicación Arduino. 


0009 - 2007.08.06

* Añadido soporte para la Diecimila Arduino.
* Se pasa a utilizar avrdude (en lugar de uisp) para grabar los ''sketches'' en el microcontrolador.
* Se ha añadido la capacidad de grabar los cargadores de arranque del NG y Diecimila (con un AVRISPmkII).
* Se ha corregido un error en SoftwareSerial (se estaba llamando a una función serie hardware en lugar
de a su equivalente serie software). Gracias a brianbr por informarlo y corregirlo.


0008 - 2007.06.09

* Actualizados ejemplos (en la distribución y en el sitio web).
* Añadida una librería EEPROM (ver guía de referencia para más detalles).
* Añadida una librería de motor paso a paso (ver guía de referencia).
* Parche para reducir el tamaño del binario de un ''sketch'' construyendo el 
núcleo (''core'') de Arduino como una librería (.a) - ahora únicamente las partes 
necesarias del ''core'' se enlazan para crear el ''sketch''.
Originalmente escrito por Nicolás Roland, revisado por el don de la Cruz.
* Solucionado un problema en Serial.available().  Informado y corregido por Don Cross.
* Now recompiling libraries when switching microcontrollers.  Report by
  Julian Bleecker; fix by Nicholas Zambetti.
* Ahora se vuelven a compilar las librerías cuando se cambian microcontroladores. Informado por 
  Julian Bleecker, corregido por Nicholas Zambetti.
* Se han limpiado las funciones básicas (del ''core''): se han movido las definiciones
de los pines al espacio de programa para ahorrar RAM, y otras mejoras de 
menor importancia. Escrito por Jim Studt.
* Muchas aportaciones y correcciones en la guía de referencia por Paul Badger.
* Cambiado el microcontrolador por defecto. Ahora es ATmega168 antes ATmega8.
* Se ha eliminado el retardo en analogRead().
* Activación de las resistencias de pull-up de TWI/I2C en el ATmega168 (además de la  
  ATmega8).


0007 - 2006.12.25

* Núcleo (''core'') más pequeño (alrededor de 3,5 KB en lugar de 4,5 KB).
* Añadida la librería SoftwareSerial (gracias a Antonio, Heather Dewey-Hagborg, y 
''bigengineer'' por su ayuda).
* Implementada la rutina Serial.flush(); ver guía de referencia para más detalles.
* Digital pines 0 y 1 se puede utilizar para E / S hasta una llamada a Serial.begin().
* Sustituidas las rutinas UART de avr-lib con código personalizado para 
gestionar la comunicación serie y modificar los comandos serie C++ para llamar a comandos serie C;
  el código se puede comportar de forma diferente en los casos determinados 
(por ejemplo, velocidades no estándar, o en desbordamientos (''overflow'')).
* Se ha añadido las funciones attachInterrupt() y detachInterrupt() para 
manejar las interrupciones externas en los terminales (''pins'') 2 y 3.
* Implementada la rutina shiftOut(); ver guía de referencia para más detalles.
* Definición de constantes binarias: p.ej. B1010 es 6.
* Las versiones para Mac ya no necesitan ejecutar el script macosx_setup.command.
* Las versiones Windows vienen con los controladores de FTDI para USB actualizados y descomprimidos.
* Nueva distribución de los binarios para Linux (todavía requiere algunos programas, para ser
  pre-instalado).


0006 - 2006.10.21

La versión para Mac ya no requiere Java 1.5, lo que significa que debería funcionar en 10.3.9.
Añadido soporte para entradas analógicas 6 y 7 y PWM en los pines 5 y 6 para la
en el ATmega168 utilizado en el Arduino Mini (las entradas analógicas adicionales
no están disponibles en ATmega168s DIP).
Ahora se selecciona la velocidad de transmisión para el
monitor serie desde 
la barra de estado del editor cuando el monitor serie está ejecutándose en lugar 
desde el menú ''Tools''.
Al pulsar ''enter'' en la caja de edición del monitor serie ya no añade una nueva línea
al mensaje enviado a la placa.
Incluye la librería Wire (TWI) de Wiring.
Actualizada la Guía de Referencia.


0005 - 2006.09.06

Las librerías básicas (''core'') más pequeñas (~ 4,5 KB en lugar de 5,5 KB).
Se aplica el parche de Hans Steiner para mejorar el soporte de Linux para que 
las herramientas avr busquen en la ruta del usuario en lugar de esperar 
encontrarlas en una ubicación fija.
Se ha agregado la preferencia upload.verbose para ayudar en la depuración.
Soporta ATmega168!
Nuevas funciones compatibles con Wiring randomSeed(), random(max) y random(min, max)
(Salvo que operan con ''longs'' en lugar de ''floats'').
Corregido error que a veces causaba la grabación en el 
microcontrolador de versiones anteriores de un ''sketch''.
El monitor serie incluye una interfaz para enviar mensajes a la placa Arduino.
Al pulsar 'enter' añade una nueva línea, presionando el botón 'Send' no lo hace.
Ahora se muestran los mensaje de estado "burning bootloader..." y "compiling...". 


0004 - 2006.04.26

El ''sketch'' principal ahora está compilado como C++ (en lugar de C).
Actualizado conjunto de herramientas (''toolchain'') de AVR 
printInteger (), printHex (), etc ahora manejan ''long''.
millis() corregido (ahora se desborda después de días, no de minutos)
Corrige la ubicación de java en run.bat para Windows.
Añadidas las librerías Matrix y Sprite (escritas por Nicholas Zambetti).
PWM trabajando ahora en el pin 11 (en adición a los pines 9 y 10).
Ralentizada la frecuencia PWM (en los tres pines PWM) a 1 KHz.
Ahora da un error si el ''sketch'' compilado es demasiado grande.
Corregidas las macros abs(), min(), max() y constrain().
Añadidas opciones de menú al IDE para grabar el gestor de arranque.
Ahora muestra el tamaño del ''sketch'' al grabarlo en el microcontrolador, y da 
un error si es demasiado grande.
Añadido la librería serie C++.

Resincronizado con el código del IDE de Processing/Wiring (mejora del auto-formato, registro más 
rápido de la consola del monitor serie, otras correcciones de errores)
Nuevo librería del sistema (da unos errores falsos cuando se inicia Arduino).
Actualizada última versión de la librería serie RXTX; los usuarios de Mac tendrán que
volver a ejecutar macosx_setup.command. 


0003 - 2006.01.16

Cambios en el API
Invertidos los pines de entrada analógica para que
correspondan con la disposición en las nuevas placas. Esto
significa que una llamada, por ejemplo, a analogRead(0) se debe cambiar a 
analogRead(5) para leer el mismo pin físico.
Se ha añadido la función printNewline() (que envía '\n' = ASCII 10).

Cosas nuevas
Referencia incluida (características nativas de C aún no documentadas).
Añadido monitor serie (haz clic en el botón de la barra de herramientas para activarlo o desactivarlo). La 
velocidad de transmisión se controla con el menú 'Serial Monitor Baud Rate', por defecto es 9600. Icono
e implementación de Wiring.
menú del puerto serie ahora se actualiza automáticamente cuando se abre.
Nueva combinación de colores azul y cortesía iconos de Noé Shibley (los colores son codificados
en el código fuente para garantizar la coherencia con los archivos de imagen).
Keyspan y conductores FTDI USB incluido con el Mac y las distribuciones de Windows.

Corrección de errores
La función millis() ahora se actualiza cada milisegundo en vez de cada segundo.
Gestor de arranque incluido en la distribución de Windows (que ya estaba en el dist Mac).
Actualizado el icono del archivo ejecutable de Windows.
Ahora descarga el puerto serie antes de grabar el 
''sketch'' (hay que arreglar algunos errores).
Mejora de la precisión de la función delayMicroseconds().

Otros
La tasa de grabación de ''sketch'' ya no es seleccionable desde un menú en el IDE. En su lugar,
modifica la entrada serial.download_rate en el archivo preferences.txt.
Creado proyecto Xcode para la generación del ejecutable de Arduino en Mac (aún no se regenera
los archivos de gramática o el paquete de distribución); el destino debe ser "App".
Eliminados elementos no utilizados o que no se han aplicado de los menús.


0002 - 2005.10.05
El nuevo proceso de generación del ejecutable ya utiliza ''makefiles'',
ahora se controla con preferences.txt.
core/ reemplazada por targets/; ahora se puede enlazar con la librería Wiring.
Sustituida print() con printString, printInteger, printHex, printByte, etcétera.
Añadido menú de selección de velocidad del puerto serie.
Actualizado el icono.
Bootloader reducido a menos de 1 KB, ''fuses'' actualizados en consecuencia.
Añadidas serialRead (), serialAvailable () y delayMicroseconds ().


0001 - 2005.08.25 
Esta es la primera vesión del IDE unificado + la librería del lenguaje
Es una solución terrible... pero funciona. De momento está en fase alfa 
pero puede usarse para trabajar.
El preprocesador de Processing está incluido pero no se utiliza.

 

Share