Commit Graph

270 Commits

Author SHA1 Message Date
Thibaut VIARD d1d60447e9 [sam] adding sam3u-ek and arduino due for IDE 2011-09-14 19:32:41 +02:00
Thibaut VIARD 80d5368b52 [sam] LED Blink test app working on Arduino Due 2011-09-13 18:12:51 +02:00
Thibaut VIARD 6f2d59ed2f [sam] adding variant definition for Due 2011-09-13 17:01:32 +02:00
Thibaut VIARD b014d9eacd [sam] led blink working on SAM3U-EK using validation app 2011-09-13 11:18:38 +02:00
Thibaut VIARD d287bba7d1 [sam] ready for sam3u debug on sam3u-ek 2011-09-12 18:43:26 +02:00
Thibaut VIARD bc253722a6 [sam] PIO and PMC drivers adapted to enable SAM3U compilation, makefiles prepared for SAM3U-EK and Due 2011-09-12 18:01:48 +02:00
Thibaut VIARD 5d92281c3c [sam] integrating ARM CMSIS patch for DSPLib 2011-09-12 17:52:55 +02:00
Thibaut VIARD 19b2218df4 [sam] introducing sam3u-ek and arduino due into variants, libsam is broken 2011-09-12 01:55:10 +02:00
Thibaut VIARD 0c2bba55c8 [sam] test app (led blink) working using GCC and GDB server for debug 2011-09-10 23:54:56 +02:00
Thibaut VIARD 2963a37075 [sam] adding HOWTO for whole projects compilation 2011-09-10 23:37:23 +02:00
Thibaut VIARD 79ee7a1f6a [sam] daily commit: EWARM project working, GCC compiling but fail due to missing match for Reset_Handler 2011-09-09 19:15:21 +02:00
Thibaut VIARD 3916472a36 [sam] Introducing preliminary files for Due and SAM3U-EK 2011-09-08 01:22:16 +02:00
Thibaut VIARD a60e8d7236 [sam] Working LED Blink on variant SAM3S-EK using IAR EWARM 2011-09-08 01:17:26 +02:00
Thibaut VIARD beefd467f9 [sam] deleting duplicate useless headers and renaming variant 2011-09-07 17:58:45 +02:00
Thibaut VIARD a5d2349761 [sam] fixing last stupid commit 2011-09-06 21:05:41 +02:00
Thibaut VIARD 8f01f92e87 [sam] committing state-of-the-art code: compiling under EWARM 6.21.1 but debug not easy 2011-09-05 22:59:49 +02:00
Thibaut VIARD bb4c1af790 [sam] adding up to date sam3s8 headers 2011-08-31 10:32:31 +02:00
Thibaut VIARD 08344ef892 [sam] adding up to date sam3x headers 2011-08-31 10:30:18 +02:00
Thibaut VIARD 48ebcf5b84 [sam] adding up to date sam3n headers 2011-08-31 10:29:53 +02:00
Thibaut VIARD d09f81d623 [sam] adding up to date sam3u headers 2011-08-31 10:29:27 +02:00
Thibaut VIARD b9935eb38c [sam] adding up to date sam3s headers 2011-08-31 10:28:32 +02:00
Thibaut VIARD 5479b611ac [sam] removing useless peripheral drivers and modifying validation build 2011-08-31 10:24:00 +02:00
Thibaut VIARD 2260c6875d [sam] Adding CMSIS 2.10 2011-08-08 16:58:06 +02:00
Thibaut VIARD 32f3cf5734 [sam] removing CMSIS 2.0 before introduction of 2.1 2011-08-08 16:47:13 +02:00
David A. Mellis d9dcc66232 [sam] fixing compilation in IDE (changing some #includes). 2011-07-17 09:50:36 -04:00
aethaniel 25e3924dda [sam] Implementing timings and delay functions 2011-07-14 01:18:08 +02:00
aethaniel 2713ec4dca [sam] Fixing wrong reference to Wait() and some cosmetics 2011-07-14 00:10:48 +02:00
aethaniel 3707a81640 [sam] fixing pure virtual link errors 2011-07-13 23:59:20 +02:00
aethaniel 6c6038f81a [sam] adding wiring_digital and validation app 2011-07-13 01:20:40 +02:00
aethaniel 03c064e946 [sam] state-of-the-art commit 2011-07-11 01:51:24 +02:00
aethaniel ef4abb62b0 [sam] adding libraries into hw/core/sam 2011-07-10 12:18:38 +02:00
aethaniel e1912bf9bd [sam] modified files following previous push 2011-07-10 12:16:31 +02:00
aethaniel 5df1f6c7dc [sam] removing old cmsis folder 2011-07-10 12:15:06 +02:00
aethaniel 43b599ddfb [sam] adding CMSIS 2.00 release to obtain benefit of DSPLib 2011-07-10 11:56:19 +02:00
David A. Mellis d1e8402cbc Adding additional files. 2011-06-25 12:53:35 -04:00
David A. Mellis 05d622f3ac Adapting Rick's platform work to other platform changes. 2011-06-25 12:51:56 -04:00
David A. Mellis f7f9f78b5a Merge remote branch 'ricklon/platforms' into new-extension 2011-06-25 11:08:42 -04:00
ricklon dacfa86223 Addtional debuggin. Trying to find the pins compile issue. 2011-06-22 21:20:45 -06:00
Thibaut VIARD 32231aac95 Adding sam bootloaders folder 2011-06-21 01:07:24 +02:00
Thibaut VIARD 37b2409f28 Modifying Arduino.h to reflect outer changes 2011-06-21 01:05:39 +02:00
Thibaut VIARD c6850d60b7 Adding mk files for future use and readme 2011-06-21 01:03:39 +02:00
Thibaut VIARD 1a57af05dd Removing unused file board.h 2011-06-21 00:51:55 +02:00
Thibaut VIARD 37fe55e52e Updating files as done last week with David 2011-06-21 00:48:47 +02:00
Thibaut VIARD ad017bf01b Renaming board files to variant.* 2011-06-21 00:47:56 +02:00
Thibaut VIARD 7c708132c1 Moving sam3s peripheral library to more global sam library 2011-06-21 00:42:25 +02:00
Thibaut VIARD 61c55be1cb Removing wrong file from sam3s-ek variant folder 2011-06-21 00:32:32 +02:00
Thibaut VIARD 01f726a0e1 Adding linker and deubg scripts 2011-06-21 00:31:20 +02:00
Thibaut VIARD fabdccef78 Deleting unused pins.txt 2011-06-21 00:26:34 +02:00
Thibaut VIARD ec51290d86 Renaming pins folders to variants 2011-06-21 00:25:24 +02:00
Thibaut VIARD dedf1b5fc3 Adding README file at root of tools folders 2011-06-21 00:22:54 +02:00
Thibaut VIARD f4fdcb6e8e Moving all AVR specific libraries to hardware/avr 2011-06-21 00:20:43 +02:00
Thibaut VIARD 3da8227878 Removing CodeSourcery toolchain from GIT 2011-06-21 00:08:25 +02:00
Thibaut VIARD be2c9273c2 Adding SAM specific libraries 2011-06-21 00:03:22 +02:00
ricklon aa01546b55 Switched to a nonconflicting delimeter |. Compile process is working. Need to make sure that it matches 1.0 process exactly. 2011-06-17 22:12:21 -04:00
ricklon 67c9dfc667 A bit of cleanup. Delimeter not figured out yet. 2011-06-17 00:54:58 -04:00
ricklon b0556c2e74 Changed :: to , for platforms.txt. Also, changes to compile process to support execAsynchronously changed to Stringp[] 2011-06-15 23:04:38 -04:00
David A. Mellis 7c9a03410f Renaming platform components. 2011-06-14 23:49:47 +02:00
ricklon 58de95a905 Added platforms.txt, and update boards.txt with platform=avr 2011-06-06 21:57:11 -04:00
aethaniel 6f1482baba Adding Atmel SAM3 specific files 2011-06-01 01:54:47 +02:00
aethaniel 65ce0cd0a2 Modified syscalls.* to fit CPP compilation 2011-06-01 01:53:32 +02:00
aethaniel 49b03a0ea7 Putting back all vectors to libchip (Core based) 2011-06-01 01:24:23 +02:00
aethaniel 799c348db5 Adding needed folder for CS 2011-06-01 00:04:17 +02:00
aethaniel fdfdd0b4bf Adding minimal libboard with lowlevel init and vectors 2011-05-31 23:17:52 +02:00
aethaniel f08e822b17 Adding libchip_sam3s into tools, needed to add all SAM3S peripheral drivers 2011-05-31 23:09:42 +02:00
aethaniel 4e0df49a5d Adding CodeSourcery just in case of, to be removed later 2011-05-31 22:04:30 +02:00
David A. Mellis 2711c9910b Fixing 300 baud communication for serial.
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-20 13:29:13 -04:00
David A. Mellis 8c0fdf1e43 Small optimization in HardwareSerial.
begin(long) -> begin(unsigned long)

Conflicts:

	hardware/arduino/cores/arduino/HardwareSerial.h
2011-05-12 16:58:56 -04:00
David A. Mellis 1747292711 Optimizing printing of numbers (writing a single buffer).
Fix from Bill Greiman via Limor.
2011-05-07 18:17:32 -04:00
David A. Mellis cf044cd236 Adding serialEvent(), serialEvent1(), etc.
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-07 13:04:13 -04:00
David A. Mellis c740778bf6 Refactoring the UART0 / USART0 receive interrupt handler. 2011-05-07 12:47:43 -04:00
David A. Mellis 694b8ad392 Changing Serial.flush() to write outgoing data, not drop incoming data.
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-05-07 12:05:27 -04:00
David A. Mellis d12fe18480 Restoring concatenation of built-in types with String. 2011-03-31 10:56:14 -04:00
David A. Mellis 0ac0dcf158 Adding F("foo") syntax for flash strings. 2011-03-27 15:06:20 -04:00
David A. Mellis e3c7a54725 String: removing implicit numeric conversions and new approach to "if (s)".
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-26 18:52:54 -04:00
David A. Mellis efae89ea0e Commenting String API behavior. 2011-03-23 22:42:05 -04:00
David A. Mellis 7d4073ef73 Return an invalid string (not a partial one) when operator+() fails. 2011-03-19 11:14:17 -04:00
David A. Mellis d3a5532d13 Starting to distinguish between empty strings and invalid (null) ones. 2011-03-18 21:45:27 -04:00
David A. Mellis 6f3ceb399d Protecting String copy() and move(). 2011-03-13 19:39:04 -04:00
David A. Mellis 488e672ea0 Adding additional String + operators for disambiguation.
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-13 19:31:10 -04:00
David A. Mellis cc24d41b74 Moving move() to __GXX_EXPERIMENTAL_CXX0X__ only, adding operator bool(). 2011-03-13 16:46:06 -04:00
David A. Mellis f5f2e09636 Modifying String.concat() to return success or failure, not this.
Which means you can't chain multiple concat() calls together, but you can check if they succeeded or not.
2011-03-12 14:03:34 -05:00
David A. Mellis 6727c8a831 Don't return the string when modifying its value.
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-11 18:54:58 -05:00
David A. Mellis 7fa866ffea Renaming append() back to concat(). 2011-03-11 18:04:31 -05:00
David A. Mellis 9139094c36 Removing F("string") syntax for now.
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-11 18:01:40 -05:00
David A. Mellis 1d9bbc01e3 Rewrite of the String class by Paul Stoffregen.
http://www.pjrc.com/teensy/string_class_experimental.html
2011-03-11 17:56:10 -05:00
David A. Mellis 6b890f8c7d Fixing typo in boards.txt. 2011-03-09 21:22:04 -05:00
David A. Mellis af841d166d Flushing outgoing and incoming data in Serial.end().
That is, waiting for outgoing data to transmit and dropping any received data.
2011-03-06 12:20:42 -05:00
David A. Mellis 1bef2990b6 Fixing race condition in Serial write (Brian Cook). 2011-03-06 11:47:18 -05:00
David A. Mellis 10ecfa8bea Moving TCCR1B reset into #ifdef check. 2011-03-06 11:29:35 -05:00
David A. Mellis 7f0cc2111c Implemented serial transmit buffering.
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-05 14:17:26 -05:00
David A. Mellis 19597b1d0b Factoring pin definitions out of the core.
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-04 21:05:05 -05:00
David A. Mellis afb60e1163 Moving all pin definitions into pins_arduino.h.
This is a step towards providing portability across AVR's by simply including an appropriate header file.
2011-03-03 23:54:33 -05:00
David A. Mellis 5234a96b34 Rearranging internal #defines in headers. 2011-03-03 18:57:05 -05:00
David A. Mellis ba14230883 Removing optimized digitalWrite(), digitalRead(), pinMode(). 2011-03-03 18:46:45 -05:00
David A. Mellis 4ea2d99c1a Re-arranging header files and small fixes to optimized core functions. 2011-03-02 23:05:25 -05:00
David A. Mellis bb7a044884 Moving wiring.h contents into Arduino.h. 2011-03-01 20:00:16 -05:00
David A. Mellis d05e4021d0 Renamed WProgram.h to Arduino.h. 2011-03-01 19:52:13 -05:00
David A. Mellis 97abbd7a31 Removing BYTE keyword (use Serial.write() instead). 2011-02-26 13:58:03 -05:00
David A. Mellis d15e9aa98a Merge branch 'master' into new-extension 2011-02-22 22:02:22 -05:00
David A. Mellis d180ad18a9 Revert "Changes to optimized digitalWrte(), etc."
This reverts commit aa1f1cbda9.
2011-02-18 10:41:29 -05:00