aboutsummaryrefslogtreecommitdiff
path: root/cores
AgeCommit message (Collapse)Author
2011-03-26String: removing implicit numeric conversions and new approach to "if (s)".David A. Mellis
This makes explicit the String constructors that take numeric types and chars and removes the versions of concat() and operator=() and operator+() that accept numberic types. It also replaces the operator bool() with a operator that converts to a function pointer. This allows for uses like "if (s)" but not "s + 123". See: http://www.artima.com/cppsource/safebool.html. This allowed removing the disambiguating operator+() functions and relying solely on StringSumHelper and anonymous temporaries once again. Also, now treating unsigned char's like int when constructing Strings from them, i.e. String(byte(65)) is now "65" not "A". This is consistent with the new behavior of Serial.print(byte).
2011-03-23Commenting String API behavior.David A. Mellis
2011-03-19Return an invalid string (not a partial one) when operator+() fails.David A. Mellis
2011-03-18Starting to distinguish between empty strings and invalid (null) ones.David A. Mellis
2011-03-13Protecting String copy() and move().David A. Mellis
2011-03-13Adding additional String + operators for disambiguation.David A. Mellis
The operator bool() means that you could implicitly convert a String to a bool and then add it to it an int, for example. Which means our operator+ has to match exactly or it will be ambiguous.
2011-03-13Moving move() to __GXX_EXPERIMENTAL_CXX0X__ only, adding operator bool().David A. Mellis
2011-03-12Modifying String.concat() to return success or failure, not this.David A. Mellis
Which means you can't chain multiple concat() calls together, but you can check if they succeeded or not.
2011-03-11Don't return the string when modifying its value.David A. Mellis
Changing toLowerCase(), toUpperCase(), trim() and replace() to return void instead of a reference to the string that's just been changed. That way, it's clear that the functions modify the string they've been called on.
2011-03-11Renaming append() back to concat().David A. Mellis
2011-03-11Removing F("string") syntax for now.David A. Mellis
We should probably add something like this back in later, but I want to do one thing at a time. This removes the __FlashStringHelper class as well.
2011-03-11Rewrite of the String class by Paul Stoffregen.David A. Mellis
http://www.pjrc.com/teensy/string_class_experimental.html
2011-03-06Flushing outgoing and incoming data in Serial.end().David A. Mellis
That is, waiting for outgoing data to transmit and dropping any received data.
2011-03-06Fixing race condition in Serial write (Brian Cook).David A. Mellis
2011-03-06Moving TCCR1B reset into #ifdef check.David A. Mellis
2011-03-05Implemented serial transmit buffering.David A. Mellis
Now Serial.write() places characters in the transmit buffer, and the data register empty interrupt reads and transmit them. Based loosely on the implementation here: ftp://wookey.org.uk/arduino. http://code.google.com/p/arduino/issues/detail?id=262
2011-03-04Factoring pin definitions out of the core.David A. Mellis
That is, there's now a pins/ directory in a platform, which includes multiple directories, each of which has its own pins_arduino.h. The boards.txt gets a new preferences, <BOARD>.build.pins, whose values is a sub-directory of the pins/ directory (possibly with a "platform:" prefix). That sub-directory is then placed in the include path during compilation.
2011-03-03Moving all pin definitions into pins_arduino.h.David A. Mellis
This is a step towards providing portability across AVR's by simply including an appropriate header file.
2011-03-03Rearranging internal #defines in headers.David A. Mellis
2011-03-03Removing optimized digitalWrite(), digitalRead(), pinMode().David A. Mellis
2011-03-02Re-arranging header files and small fixes to optimized core functions.David A. Mellis
2011-03-01Moving wiring.h contents into Arduino.h.David A. Mellis
2011-03-01Renamed WProgram.h to Arduino.h.David A. Mellis
2011-02-26Removing BYTE keyword (use Serial.write() instead).David A. Mellis
2011-02-18Revert "Changes to optimized digitalWrte(), etc."David A. Mellis
This reverts commit aa1f1cbda9d6bb52785f98b40746920853d6579b.
2011-02-18Revert "Adding noAnalogWrite() function to disable PWM."David A. Mellis
This reverts commit 38d4a34fec6925b29a732d13e200f54ee4b42025.
2011-02-12Adding noAnalogWrite() function to disable PWM.David A. Mellis
Also, removing the inline version of digitalPinToTimer() (since we're not optimizing the functions that use it anyway). The noAnalogWrite() function is in wiring_analog.c, deriving from the previous turnOffPWM() which has moved from wiring_digital.c. http://code.google.com/p/arduino/issues/detail?id=476
2011-02-11Changes to optimized digitalWrte(), etc.David A. Mellis
Factoring out the implementation of digitalWrite(), digitalRead(), and pinMode() into macros that can either be inlined (for constant pin numbers) or executed within a function (non-constant pins). Removing testing for timers on pins in digitalWrite(), digitalRead(), and pinMode(). Moving pin to port macros from pins_arduino.h to wiring.h.
2011-02-11Optimized digitalWrite(), etc. from Alvaro Lopez.David A. Mellis
2010-12-11Changing String append to use realloc(); thanks to Paul Stoffregen.David A. Mellis
http://code.google.com/p/arduino/issues/detail?id=332
2010-12-03Replacing custom String.toInt() function with a call to atol().David A. Mellis
2010-11-29Redoing 448222e4b65e0cf44dfc0c494f7f76901f1fabea without all the extra files.David A. Mellis
Adds toInt() to String, WCharacter.h (from Wiring), and an SD Datalogger example.
2010-11-29Revert "added toInt() function to WString".David A. Mellis
This reverts commit 448222e4b65e0cf44dfc0c494f7f76901f1fabea.
2010-11-29added toInt() function to WStringTom Igoe
2010-11-22pulseIn() now times out while measuring the pulse, not just while waiting ↵David A. Mellis
for it to start.
2010-11-20SD File object implements Stream.David A. Mellis
Added peak() and available() using a single byte buffer. Added flush().
2010-11-11Fixing bug w/ subsequent calls to tone().David A. Mellis
http://code.google.com/p/arduino/issues/detail?id=397
2010-11-11Cast to encourage optimization of Serial ring buffer index calculations.David A. Mellis
http://code.google.com/p/arduino/issues/detail?id=391
2010-11-11Changing baud rate calculation to always use double speed mode except for ↵David A. Mellis
57600 baud at 16 MHz. http://code.google.com/p/arduino/issues/detail?id=394
2010-11-08Modifying Tone.cpp to use register-based (not CPU-based) #ifdefs.David A. Mellis
2010-10-17Modifying basic functions (digital and analog, read and write) to use ↵David A. Mellis
register-based ifdefs, not cpu-based. http://code.google.com/p/arduino/issues/detail?id=307 http://code.google.com/p/arduino/issues/detail?id=316 http://code.google.com/p/arduino/issues/detail?id=323 http://code.google.com/p/arduino/issues/detail?id=324
2010-10-17Making attachInterrupt() check registers, not CPUs.David A. Mellis
Patch by Mark Sproul, via Christian Maglie. http://code.google.com/p/arduino/issues/detail?id=340
2010-10-17Making HardwareSerial tests register-based, not CPU-based.David A. Mellis
Mark Sproul's patches, via Christian Maglie. http://code.google.com/p/arduino/issues/detail?id=315
2010-10-09Changing #include <> to #include "" in Tone.cpp.David A. Mellis
2010-10-02Fixing PWM on pins 9 & 10 on the Uno.David A. Mellis
Resetting TCCR1B to 0 after it's configured by optiboot. http://code.google.com/p/arduino/issues/detail?id=364
2010-09-081280 -> 1280/2560.David A. Mellis
2010-08-28Changing String::toCharArray() and getBytes() to accept a buffer, rather ↵David A. Mellis
than return one. That way they don't expose the internal representation of the String class, allowing future optimization. Thanks to Paul Stoffregen.
2010-08-28Returning a reference to a dummy character for indices beyond the string ↵David A. Mellis
length (in operator[]).
2010-08-18Adding some basic error checking to the String class (i.e. checking for a ↵David A. Mellis
non-null buffer before modifying its contents).
2010-08-17Now including stdlib.h from wiring.h so our abs() #define comes after the ↵David A. Mellis
stdlib abs() definition (and therefore doesn't break it).