Cristian Maglie
f39a246be5
Increased malloc margin to 128.
...
https://github.com/arduino/Arduino/pull/1329#issuecomment-15609148
See #857 #1329
2013-03-29 11:48:35 +01:00
Cristian Maglie
f567db7573
Backported malloc and realloc from avr-libc 1.8.0 (without test code)
...
See #857
2013-03-23 21:40:52 +01:00
David A. Mellis
aa218e803a
Use analogPinToChannel() macro if present for ATtiny25/45/85.
...
This allows use of A0, A1, A2, A3 constants and for them to be mapped to the appropriate analog input channel. It should only be used if the macro is actually defined.
2013-03-06 17:49:44 -05:00
Cristian Maglie
5f4e55a3d2
Merged 1.0.4 pre-release into 1.5
2012-12-17 16:53:45 +01:00
Cristian Maglie
09b755fb9c
Add trivial new[] and delete[] operators (Justin R. Cutler)
...
Fixes #73
Fixes #883
2012-12-16 14:30:12 +01:00
Cristian Maglie
025ec2bc84
Fixed malloc() bug. (Paul Stoffregen)
...
Fixes #857
2012-12-16 14:16:35 +01:00
Cristian Maglie
433090f18b
Merged 1.0.3
2012-12-10 15:55:05 +01:00
Federico Fissore
c453e0a32e
fixed permissions on a lot of text files. see #1116
2012-12-10 10:42:49 +01:00
David A. Mellis
c4337d812b
Moving TXCO definition into HardwareSerial.cpp from HardwareSerial.h.
...
Otherwise, you get an error when compiling for processors with no serial port because the header file is always compiled.
See, for an example of the problem: https://github.com/damellis/attiny/issues/8
2012-12-08 10:44:48 -05:00
Cristian Maglie
1668039101
Added support for Arduino Esplora
2012-12-07 18:11:07 +01:00
David A. Mellis
9d638ca052
Clarifying comment.
2012-11-29 13:55:59 -05:00
David A. Mellis
4a01b84cab
Moving TXCO definition into HardwareSerial.cpp from HardwareSerial.h.
...
Otherwise, you get an error when compiling for processors with no serial port because the header file is always compiled.
See, for an example of the problem: https://github.com/damellis/attiny/issues/8
2012-11-29 13:48:01 -05:00
Cristian Maglie
706f5c74b2
Merged 1.0.2
...
Merge remote-tracking branch 'arduino/master' into ide-1.5.x
Conflicts:
app/src/processing/app/debug/AvrdudeUploader.java
build/shared/examples/09.USB/Keyboard/KeyboardLogout/KeyboardLogout.ino
build/shared/examples/09.USB/Keyboard/KeyboardReprogram/KeyboardReprogram.ino
build/shared/examples/09.USB/Keyboard/KeyboardSerial/KeyboardSerial.ino
build/shared/examples/09.USB/Mouse/ButtonMouseControl/ButtonMouseControl.ino
build/shared/examples/09.USB/Mouse/JoystickMouseControl/JoystickMouseControl.ino
hardware/arduino/boards.txt
2012-11-04 22:49:14 +01:00
Cristian Maglie
69aead513d
Added general yield()-hook for cooperative scheduling development (part 2)
2012-11-02 18:12:21 +01:00
David A. Mellis
769aab0115
HardwareSerial: change byte to uint8_t (since byte definition isn't present).
2012-11-02 09:24:51 -04:00
David A. Mellis
cfec7864e9
Adding LilyPad Arduino USB.
2012-11-01 10:45:50 -04:00
Cristian Maglie
6e2b0e8755
Added general yield()-hook for cooperative scheduling development
2012-10-31 01:37:37 +01:00
David A. Mellis
42ca56fb83
Adding Micro.
2012-10-27 14:12:26 -04:00
David A. Mellis
69fa44473b
Updating USB core to work at 8 MHz (different PLLCSR value).
2012-10-18 15:03:23 -04:00
Cristian Maglie
037020e938
Merged latest changes in AVR arduino core
2012-10-18 18:47:50 +02:00
Cristian Maglie
6a45ba48ab
Merged upstream arduino branch
2012-10-18 15:50:09 +02:00
David A. Mellis
6d296e0fab
Adding ATmega644P check to ATmega1284P check.
2012-10-09 13:53:09 -04:00
David A. Mellis
1a0f22225b
Moving ATmega32U4 Timer 2 #undef's to Leonardo pins_arduino.h file.
2012-09-13 09:19:52 -04:00
David A. Mellis
999619579b
Merge pull request #102 from sgk/leonardoTone
...
Fix for tone() on Leonardo.
2012-09-13 06:07:10 -07:00
Peter Van Hoyweghen
dc86d26a11
Avoid serial buffer overrun on leonardo
2012-09-13 08:46:45 -04:00
David A. Mellis
5ca747e312
Changing setting of the UMSELn bits (for UART mode) and serial config values.
...
Before, the UMSELn1 bit was being to set to 1, putting the UART into a reserved mode. Now, we only set the high (0x80) bit to 1 for the ATmega8, which is needed to access UCSRnC (whose i/o address is shared with UBRRH).
Also, no longer bitwise-or the new config with the existing register value, because we're actually configuring all the settings in the register. (We're not using UCPOL, but it's supposed to be 0 in asynchronous mode.)
2012-08-30 08:47:35 -04:00
David A. Mellis
1650169f5d
Renaming serial config constants to, e.g., SERIAL_8N1.
2012-08-30 08:21:12 -04:00
David A. Mellis
6542625bc2
Merge pull request #109 from Alarus/master
...
Serial.begin() parameter to set data bits, parity, stop bits.
2012-08-30 05:08:28 -07:00
David A. Mellis
70b6f11d63
Fixing Serial.flush() breakage on Leonardo (WestFW).
...
http://code.google.com/p/arduino/issues/detail?id=1020
2012-08-30 07:44:25 -04:00
David A. Mellis
912092b03f
Fixing ATmega8 breakage from flush() change. (WestFW)
...
http://code.google.com/p/arduino/issues/detail?id=1019
2012-08-29 20:52:30 -04:00
David A. Mellis
c29b408a9d
Adding overloads so Serial.write(0) works.
...
http://code.google.com/p/arduino/issues/detail?id=1006
2012-08-29 16:32:05 -04:00
David A. Mellis
00ab72619e
Serial.flush() waits for last character to be transmitted (michele.mazzucchi)
...
http://code.google.com/p/arduino/issues/detail?id=871
2012-08-28 08:02:54 -04:00
Adam Dunlap
c40ab91c41
Fix issue 866
...
Fix issue 866 by adding a const qualifier to what the F macro casts to.
2012-08-16 20:59:33 -07:00
Alarus
af8ff1d1e0
Update hardware/arduino/cores/arduino/HardwareSerial.cpp
...
New Serial.begin(baud, config);
2012-08-14 19:55:13 +06:00
Alarus
1cda182f33
Update hardware/arduino/cores/arduino/HardwareSerial.h
...
New Serial.begin(baud, config);
2012-08-14 19:52:00 +06:00
Alarus
b6faa6e254
Update hardware/arduino/cores/arduino/HardwareSerial.cpp
...
New Serial.begin(baud, config);
2012-08-14 19:50:36 +06:00
Alarus
0c0defa645
Update hardware/arduino/cores/arduino/HardwareSerial.cpp
...
Adding advanced begin (); with the ability to specify the length of bits, parity, stop bits.
2012-08-12 22:07:42 +06:00
Alarus
ed699cf636
Update hardware/arduino/cores/arduino/HardwareSerial.cpp
...
Adding advanced begin (); with the ability to specify the length of bits, parity, stop bits.
2012-08-12 21:35:48 +06:00
Alarus
1f6dd92313
Update hardware/arduino/cores/arduino/HardwareSerial.cpp
...
Adding advanced begin (); with the ability to specify the length of bits, parity, stop bits.
2012-08-12 20:57:57 +06:00
Alarus
03a4b50b8e
Update hardware/arduino/cores/arduino/HardwareSerial.h
...
Adding advanced begin (); with the ability to specify the length of bits, parity, stop bits.
2012-08-12 20:23:00 +06:00
Alarus
b9bbc71dca
Update hardware/arduino/cores/arduino/HardwareSerial.h
...
Adding advanced begin (); with the ability to specify the length of bits, parity, stop bits.
2012-08-12 20:18:50 +06:00
Shigeru KANEMOTO
4293079076
Fix for tone() on Leonardo.
2012-08-08 18:27:40 +09:00
David A. Mellis
e77ee2903b
Print "ovf" if float to be printed doesn't fit in a long.
...
http://code.google.com/p/arduino/issues/detail?id=967
2012-06-28 23:20:56 -04:00
David A. Mellis
2ef2f9d5c7
Print "inf" for infinite floating point numbers (using isinf()).
...
http://code.google.com/p/arduino/issues/detail?id=961
2012-06-23 10:37:35 -05:00
David A. Mellis
29ff4f779a
Adding write(str) and write(buf, size) for USB CDC.
...
So that they work on the Leonardo.
http://code.google.com/p/arduino/issues/detail?id=958
2012-06-14 15:54:13 +01:00
David A. Mellis
3436ca97cb
Printing NaN values as "nan" in printFloat().
...
http://code.google.com/p/arduino/issues/detail?id=946
2012-06-04 23:30:41 -04:00
David A. Mellis
57973bcd49
Check for NULL pointer in Print.write().
...
Otherwise, trying to print(NULL) or write(NULL) could print a random
character.
http://code.google.com/p/arduino/issues/detail?id=941
2012-06-03 07:48:32 -04:00
Kristian Lauszus
4ed0bd2bd5
Added support for interrupt on INT2 and INT3 on the Leonardo
2012-06-02 20:08:46 +02:00
David A. Mellis
810803c6d3
Merge remote-tracking branch 'upstream/master'
2012-05-21 09:31:54 -07:00
David A. Mellis
b495294aa3
Adding readString() and readStringUntil() to Stream (Adrian McEwen).
...
This isn't necessarily a particularly efficient implementation (it
allocates memory one character at a time and so may lead to
fragmentation) but it seems to work.
http://code.google.com/p/arduino/issues/detail?id=454
2012-05-16 15:39:34 -04:00
Zach Eveland
efa7593772
Mouse.isPressed() now checks only for left button by default
...
if no argument is given now checks left button by default to be consistent with press() and release() (thanks, David Mellis)
2012-05-15 15:48:51 -04:00
Zach Eveland
757a77ab67
renamed Leonardo USB_ class to USBDevice_ to be unambiguous. renamed "USB" object to "USBDevice" to prevent conflict with USB Host library (thanks Massimo)
2012-05-01 11:18:15 -04:00
Zach Eveland
d755d0035d
changed PID values for Leonardo bootloader and sketch
...
done to avoid driver problems for users who installed the pre-release bootloader and driver
2012-04-25 15:56:18 -04:00
Zach Eveland
6ae1a17235
bugfix for configuring PWM on D6 and D13 too early. (thanks to Limor Fried)
...
was starting PWM on these pins too soon - in init() instead of when analogWrite() was called. as a result doing output on port registers directly failed.
2012-04-19 15:52:16 -04:00
Zach Eveland
56ddc4637d
bugfix for boards with a timer 4 but no channel D
...
compilation failed for Mega because the COM4D1 and OCR4D registers are defined for 32U4 but not for Mega
2012-04-19 15:46:32 -04:00
Zach Eveland
49f7fb00fd
fixed logic bug in Caterina that could stop the bootloader from entering self-programming mode
2012-04-11 23:19:05 -04:00
Zach Eveland
e2e0260094
Micro I hardly knew ye
2012-04-09 10:12:14 -04:00
Zach Eveland
ec83f55b62
sketch USB VID and PID values are passed in from boards.txt at compile time now. changed sketch PIDs to final values. also uncommented Micro section in boards.txt
2012-04-09 08:06:35 -04:00
Zach Eveland
ee611dc194
Revert "Revert "added a short delay and comment to boolean operator in CDC""
...
This reverts commit 200eefb4e2ac7796c5c901e8fd9369c85ec544c5.
2012-04-06 21:23:17 -04:00
Federico Vanzati
02c5849501
Revert "added a short delay and comment to boolean operator in CDC"
...
This reverts commit ade4893f585e3e94fa6cf683620e1d12afc88ecd.
2012-04-06 17:36:09 +02:00
Zach Eveland
dd55096901
added a short delay and comment to boolean operator in CDC
...
Delay fixes problem where the port has been configured but not quite opened. Federico found that 10 ms was the minimum time needed to avoid problems.
2012-04-03 10:52:38 -04:00
Zach Eveland
a984b581a8
added Boolean operators to HardwareSerial and CDC to test whether the port is ready to send data.
...
Mostly useful for Leonardo - simple way to test whether the port is actually opened by an application and ready to receive data. For Serial objects attached to real UARTs always returns true.
2012-04-01 12:54:35 -04:00
Zach Eveland
1534b2b730
fixed logic error in Keyboard.release() - now removes every occurrence of a key if it's present more than once
2012-03-28 19:46:32 -04:00
Zach Eveland
83feb14013
removed horrible multi-key Keyboard.press() and Keyboard.release() methods
...
Saves 924 bytes of Flash
2012-03-28 18:46:10 -04:00
Zach Eveland
d3eabc9c01
eliminated Keyboard.type() - unnecessary duplication of Keyboard.write() (David Mellis). Also edit KeyboardReprogram example which was the only example using type()
2012-03-28 18:35:26 -04:00
Zach Eveland
58c36f76d5
added methods to Keyboard to handle multiple simultaneous key presses or releases (up to six each)
2012-03-26 17:28:02 -04:00
Zach Eveland
f646c9186d
Keyboard.type() now just presses and releases the key indicated - doesn't releaseAll()
2012-03-26 17:00:16 -04:00
Zach Eveland
9c040a8a2b
added stub methods for begin() and end() to Mouse and Keyboard
2012-03-26 16:02:40 -04:00
Zach Eveland
8c618773b5
reduced delay before starting the Leonardo bootloader
...
Since we use a magic RAM flag to signal to the bootloader there's a risk of the sketch overwriting the magic RAM location before the bootloader starts. By reducing the watchdog timeout we reduce the chance of this happening.
2012-03-14 18:17:22 -04:00
Cristian Maglie
b407337677
Fix for some strange behaviours during board reset
2012-03-07 16:21:04 +01:00
Zach Eveland
1566006871
Added Keyboard support for all modifier and all common non-printing keys.
2012-03-03 23:37:39 -05:00
Zach Eveland
54fb0bf3f5
Removed support for key mapping in Keyboard.
...
Was no longer being used and would be damn near impossible to support with the new scheme for handling modifiers and non-printing keyboard characters.
2012-03-03 23:06:44 -05:00
Zach Eveland
fbea67532a
added Keyboard methods press(), release(), and releaseAll()
...
Changes mean that a single, persistent key report must be used so keys can be added or removed. Also reimplemented type() using the new methods.
2012-03-03 22:54:45 -05:00
Zach Eveland
74863e4bdf
Merge branch 'master' of github.com:arduino/Arduino into LUFA_bootloader
...
Conflicts:
.gitignore
2012-03-03 13:28:39 -05:00
Zach Eveland
8f5869009c
fixed minor compilation warnings for Leonardo
2012-03-03 13:26:57 -05:00
David A. Mellis
4fade7007f
Small changes for the ATmega1284.
...
http://code.google.com/p/arduino/issues/detail?id=736
2012-03-02 18:58:53 -05:00
Zach Eveland
c8ca7f9636
changed auto-reset logic for Leonardo. only do WDT manipulation if the port is opened at 1200 bps. (Dave Mellis)
2012-03-01 08:51:16 -05:00
Cristian Maglie
73066a4ca2
Autoreset 1200 bps fix.
2012-02-27 17:41:38 +01:00
Zach Eveland
0138ee9b01
shortened the watchdog period for resetting Leonardo from 2 s to 250 ms. Reset into bootloader is much snappier.
2012-02-22 22:33:44 -05:00
Zach Eveland
66019a7550
Merge branch 'master' of github.com:arduino/Arduino into LUFA_bootloader
2012-02-22 15:19:32 -05:00
Zach Eveland
7948125208
Leonardo now checks whether bootloader should be run after a WDT event.
...
Before the sketch initiates an auto-reset for upload it pokes a magic word into a specific RAM address. On starting the bootloader checks this address. If it finds the magic word it knows the bootloader code should run. If not it jumps straight back to sketch.
Test in a sketch by adding to setup():
wdt_enable(WDTO_2S);
Sketch should upload, start, run for two seconds, WDT, and sketch should restart (not bootloader).
Had to cut out unused descriptor code to make the bootloader still fit in 4k.
2012-02-14 12:17:30 -05:00
Zach Eveland
924e5a4846
Leonardo auto-reset-and-upload changes for Windows (explanation below)
...
On Windows COM port changes when board switched between bootloader and sketch. No way to prevent this so now Windows users have to select the upload port separate from the comm port. Also, handling of reset into bootloader was broken on Windows. Would occasionally leave the original COM port completely unusable. Changed the way this reset is initiated.
Finally, had to add upload.disable.flushing=true flag to boards.txt so IDE wouldn't try to flush the original COM port after it disappeared.
2012-02-13 00:56:06 -05:00
Zach Eveland
ac3aca0acf
changed Leonardo bootloader and sketch PID values again (now 0x0701 for bootloader, 0x0801 for sketch)
2012-02-13 00:10:16 -05:00
David A. Mellis
a7afdf40ba
prog_char -> char PROGMEM in Print.cpp
...
http://code.google.com/p/arduino/issues/detail?id=795
2012-02-12 19:52:03 -05:00
Zach Eveland
35bbf80ba9
adjusting descriptors - trying to prevent sketch and bootloader from grabbing different COM numbers on Windows
2012-02-08 01:16:56 -05:00
Zach Eveland
d7b0507e8a
fixed starting Leonardo bootloader from sketch
...
AvrdudeUploader class opens and closes Leonardo port at the magic baudrate before starting avrdude; reduced reset timeout from 250 ms to 15 ms
2012-02-03 21:42:46 -05:00
Zach Eveland
a794f295e0
Merge branch 'master' of github.com:arduino/Arduino into LUFA_bootloader
2012-02-03 19:54:33 -05:00
David A. Mellis
e1438efb3a
Making head and tail unsigned to avoid division in serial ISR.
...
http://code.google.com/p/arduino/issues/detail?id=776
2012-02-03 17:24:29 -05:00
Zach Eveland
45d3b10295
Caterina now cleanly hands off operation to the sketch
...
had to remove TIMER1 operation from bootloader - was interfering with normal sketch operation
2012-01-24 18:04:10 -05:00
Zach Eveland
989f672d34
Merge branch 'master' of github.com:arduino/Arduino into new-extension
2012-01-10 12:02:27 -05:00
David A. Mellis
6c00397e22
Adding INPUT_PULLUP option pinMode(). (Paul Stoffregen).
...
This also changes pinMode(pin, INPUT); to explicitly disable the pull-up resistor, even if it was previously set.
http://code.google.com/p/arduino/issues/detail?id=246
2012-01-02 14:20:28 -05:00
David A. Mellis
3b962be273
Fixing findUntil() problem with repeated initial characters. (Jeffery.zksun)
...
http://code.google.com/p/arduino/issues/detail?id=768
2012-01-02 13:49:59 -05:00
David A. Mellis
95b51c7728
Fixing warnings (unsigned comparisons to 0). (maniacbug)
2012-01-02 12:57:23 -05:00
David A. Mellis
3f429a9c61
Fixing static is not at beginning of declaration warnings (maniacbug).
2012-01-02 12:38:23 -05:00
Zach Eveland
cbce8ed4bf
Merge branch 'master' of github.com:arduino/Arduino into new-extension
2011-12-31 11:21:44 -05:00
David A. Mellis
3ece2827a4
Simplifying microseconds <-> clock cycles conversions. (Rob Tillaart)
...
This should fix problems with overflows in pulseIn(). It may make millis() slightly less precise for clock speeds that aren't multiple of 1 million, but we don't really support those anyway.
http://code.google.com/p/arduino/issues/detail?id=675
2011-12-30 18:05:12 -05:00
Zach Eveland
4e9fb924b2
changed Keyboard write() method to type(). Made write() an alias for type() to allow subclassing by Stream.
2011-12-20 17:09:44 -05:00
Zach Eveland
e405a6eb60
Revert "changed Keyboard write() method to type(). Made write() an alias for type() to allow subclassing by Stream."
...
This reverts commit de1d5fc0cb82874c0dcb766c5fb27ab36c5cb32c.
2011-12-20 17:08:07 -05:00
Zach Eveland
e4930f866d
changed Keyboard write() method to type(). Made write() an alias for type() to allow subclassing by Stream.
2011-12-20 17:00:19 -05:00
Zach Eveland
6dc00061df
fixed attachInterrupt() on Leonardo
...
had to define a separate block for the 32U4 since it looks like a Mega-series board based on a simple register trick. Only two useable HW interrupts though, compared to the Megas' 8, and numbering differs.
2011-12-19 15:40:12 -05:00