1
0
mirror of https://github.com/arduino/Arduino.git synced 2024-12-02 13:24:12 +01:00
Commit Graph

264 Commits

Author SHA1 Message Date
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
David A. Mellis
956a4f2024 Revert "Adding noAnalogWrite() function to disable PWM."
This reverts commit 38d4a34fec.
2011-02-18 10:40:56 -05:00
David A. Mellis
38d4a34fec Adding noAnalogWrite() function to disable PWM.
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-12 14:47:08 -05:00
David A. Mellis
aa1f1cbda9 Changes to optimized digitalWrte(), etc.
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-11 19:29:46 -05:00
David A. Mellis
9dccd634c5 Optimized digitalWrite(), etc. from Alvaro Lopez. 2011-02-11 17:53:24 -05:00
David A. Mellis
94168bd0f4 Fix to optiboot infinite loop problem.
Explicitly setting R1 to 0 so that the watchdog timer is properly initializing, preventing it from timing out and resetting the processor.

http://code.google.com/p/optiboot/issues/detail?id=26
http://code.google.com/p/arduino/issues/detail?id=446
2011-01-15 13:29:08 +00:00
David A. Mellis
63f4021447 Changing String append to use realloc(); thanks to Paul Stoffregen.
http://code.google.com/p/arduino/issues/detail?id=332
2010-12-11 15:22:07 -05:00