aboutsummaryrefslogtreecommitdiff
path: root/cores
AgeCommit message (Collapse)Author
2011-08-27Merge branch 'new-extension' of https://github.com/arduino/Arduinoamcewen
2011-08-26Moving write errors out of return value into separate API methods.David A. Mellis
write(), print(), println() now return size_t (and don't use negative values to signal errors). Print adds writeError() for checking for write errors, clearWriteError() to reset the flag to false, and a protected setWriteError() for signalling errors. http://code.google.com/p/arduino/issues/detail?id=598
2011-08-26Changing from long to ssize_t (int) for write(), print(), println() return.David A. Mellis
2011-08-23write(), print(), and println() now return number of bytes written.David A. Mellis
The type is long, and negative values indicate errors. Needs more testing. http://code.google.com/p/arduino/issues/detail?id=551
2011-08-18Stream.readBytesUntil() now writes null terminator within length.David A. Mellis
2011-08-17A few API changes to new Stream parsing functions.David A. Mellis
Renamed readChars() -> readBytes(), readCharsUntil() -> readBytesUntil(). Changed timeouts to milliseconds from seconds; default from 5 to 1 seconds. Removed readCharsBetween().
2011-08-17Integrating Stream searching & parsing (Michael Margolis)David A. Mellis
This from Michael's TextFinder library, incorporated into the Stream class: find(), findUntil(), parseInt(), parseFloat(), readChars(), readCharsUntil(), readCharsBetween(), setTimeout().
2011-06-11Merge remote branch 'upstream/new-extension'amcewen
Moved my fork to the Arduino 1.0 codebase
2011-06-04Added Printable interface class to allow printing of classes such as IPAddressDavid A. Mellis
2011-05-20Fixing 300 baud communication for serial.David A. Mellis
Because UBBR is only 12 bits, we were overflowing it at 300 baud because of the use of the U2X bit. Now we turn off U2X if it would yield a UBBR value that would overflow. Note that this breaks 300 baud communication with the computer on the Uno and Mega 2560 because the 8U2 USB-serial firmware has this same bug (and previously they cancelled each other out). Since, however, it seems more likely that people will need to use 300 baud to communicate with other (legacy) hardware than with the computer, I'm making this change. Issue for 8U2 firmware bug: http://code.google.com/p/arduino/issues/detail?id=542 http://code.google.com/p/arduino/issues/detail?id=522
2011-05-12Small optimization in HardwareSerial.David A. Mellis
begin(long) -> begin(unsigned long) Conflicts: hardware/arduino/cores/arduino/HardwareSerial.h
2011-05-07Optimizing printing of numbers (writing a single buffer).David A. Mellis
Fix from Bill Greiman via Limor.
2011-05-07Adding serialEvent(), serialEvent1(), etc.David A. Mellis
Called from within the serial receive interrupt. These are implemented as an empty weak function in the core that be overridden by the user's sketch. http://code.google.com/p/arduino/issues/detail?id=263
2011-05-07Refactoring the UART0 / USART0 receive interrupt handler.David A. Mellis
2011-05-07Changing Serial.flush() to write outgoing data, not drop incoming data.David A. Mellis
This brings it in line with most other uses of flush(), both in and out of Arduino. http://code.google.com/p/arduino/issues/detail?id=497
2011-04-10Added virtual destructor to Printable, which also requires new and delete ↵amcewen
operators to be added
2011-04-02Added a brief explanation of how you'd use Printableamcewen
2011-04-01Added Printable interface class to allow printing of classes such as IPAddressamcewen
2011-03-31Restoring concatenation of built-in types with String.David A. Mellis
2011-03-27Adding F("foo") syntax for flash strings.David A. Mellis
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