Paso 3: Prepare su arduino
Porque el búfer serial de arduino tiene un límite de 64 bytes y un sms en modo PDU es un más grande tendremos que aumentar el tamaño del búfer serial. El siguiente procedimiento le anuncio un arduino extra en el software de arduino con un buffersize más grande.
La solución es crear una copia completa del código del núcleo de arduino (es realmente no tan grande y espacio en disco es barato), modificar el tamaño del búfer en el nuevo código de la base y luego para crear una nueva junta que cotiza en el Arduino IDE que utiliza este nuevo core directorio. Los pasos a seguir son los siguientes...
Todo el código del núcleo de Arduino está localizado en un directorio similar a
C:\Program Files\arduino-1.0.5\hardware\arduino\cores\arduino hacer una copia completa de este directorio y guárdelo para
C:\Program Files\arduino-1.0.5\hardware\arduino\cores\arduino_256_serialbuf que el tamaño del búfer duro cifrado se almacena en un archivo llamado HardwareSerial.cpp
Aquí está la definición estándar situada en la parte superior del archivo
#define SERIAL_BUFFER_SIZE 64 editar el archivo HardwareSerial.cpp en el nuevo directorio y modificar el tamaño de búfer
#define SERIAL_BUFFER_SIZE 256 ahora necesitamos añadir una opción en el archivo boards.txt para utilizar este nuevo directorio. El archivo boards.txt debe estar en un directorio similar a
C:\Program Files\arduino-1.0.5\hardware\arduino abajo es parte del archivo boards.txt. La primera sección es para el Arduino Uno estándar. Es necesario añadir una sección debajo de él que se muestra en el IDE de Arduino como Arduino Uno (tampón de serie 256). Puedes ver que el directorio de la base se hace referencia a nuestro nuevo directorio con el archivo modificado (uno256.build.core=arduino_256_serialbuf)
##############################################################
uno.Name=Arduino Uno uno.upload.protocol=arduino uno.upload.maximum_size=32256 uno.upload.speed=115200 uno.bootloader.low_fuses=0xff uno.bootloader.high_fuses=0xde uno.bootloader.extended_fuses=0x05 uno.bootloader.path=optiboot uno.bootloader.file=optiboot_atmega328.hex uno.bootloader.unlock_bits=0x3F uno.bootloader.lock_bits=0x0F uno.build.mcu=atmega328p uno.build.f_cpu=16000000L uno.build.core=arduino uno.build.variant=standard
##############################################################
uno256.Name = Arduino Uno (256 Buffer Serial) uno256.upload.protocol=arduino uno256.upload.maximum_size=32256 uno256.upload.speed=115200 uno256.bootloader.low_fuses=0xff uno256.bootloader.high_fuses=0xde uno256.bootloader.extended_fuses=0x05 uno256.bootloader.path=optiboot uno256.bootloader.file=optiboot_atmega328.hex uno256.bootloader.unlock_bits=0x3F uno256.bootloader.lock_bits=0x0F uno256.build.mcu=atmega328p uno256.build.f_cpu=16000000L uno256.build.core=arduino_256_serialbuf uno256.build.variant=standard
##############################################################
Eso es todo lo que necesitas hacer. Ahora cuando quieras un búfer serial más grande (para una tabla específica) usted sólo elegir esta como la Junta en el IDE de Arduino y compila como normal. Si quieres hackear alguna otra configuración en la base del Arduino, esto también es una excelente manera de hacerlo sin modificar la fuente original.