Matthijs Kooijman
f35ec75dce
Remove duplicate code from HardwareSerial::begin() methods.
...
There are two begin methods, one which accepts just a baud rate and
uses the default bit settings and one which accepts both a baudrate and
a bit config. Previously, both of these contained a complete
implementation, but now the former just calls the latter, explicitely
passing the default 8N1 configuration.
Technically, this causes a small change: Before the UCSRC register was
untouched when calling begin(baud), now it is explicitely initialized
with 8N1. However, since this is the default configuration for at least
the Uno and the Mega (didn't check any others), probably for all avrs,
this shouldn't effectively change anything. Given that the Arduino
documentation also documents this as the default when none is passed,
explicitly setting it is probably a good idea in any case.
2014-01-16 13:20:11 +01:00
Matthijs Kooijman
dde1a7541f
Make some operators in IPAddress const
...
These functions do not modify the IPAddress object, but were not marked
as const. This meant that you could not do:
void set_ip(const IPAddress& ip) {
uint32_t copy = ip;
}
Since calling operator uint32_t() on ip would discard the constness of
the reference.
2014-01-15 16:20:48 +01:00
Federico Fissore
dfe77f388d
Removed = char from #define. See https://github.com/arduino/Arduino/issues/1792#issuecomment-31650586
2014-01-06 18:20:37 +01:00
Federico Fissore
9fce7f1839
Added new EULER constant. Fixes #1792
2014-01-06 09:48:34 +01:00
Cristian Maglie
673847c8b6
Improved portability of String class (maniacbug)
2014-01-01 17:22:40 +01:00
Cristian Maglie
ffddfc81f6
Merge branch 'cast' of github.com:Lauszus/Arduino into Lauszus-cast
...
Conflicts:
hardware/arduino/avr/cores/arduino/Print.cpp
2013-12-31 20:11:08 +01:00
Matthijs Kooijman
98777e816f
Use PGM_P instead of prog_char
...
On later versions of avr-libc, prog_char is deprecated. In 0acebeeff4
the one occurence of prog_char was replaced by "char PROGMEM", which is
not entirely correct (PROGMEM is supposed to be an attribute on a
variable, not on a type, even though this is how things work in older
libc versions). However, in 1130fede3a
a few new occurences of
prog_char are introduced, which break compilation on newer libc versions
again.
This commit changes all these pointer types to use the PGM_P macro from
<avr/pgmspace.h>. This macro is just "const char *" in newer libc
versions and "const prog_char *" in older versions, so it should always
work.
References #795
2013-12-31 20:01:40 +01:00
Kristian Lauszus
5d361f5f47
Use reinterpret_cast to cast __FlashStringHelper to const char*
2013-12-27 20:01:03 +01:00
Matthijs Kooijman
2ea12d0220
Remove unneeded casts in Print::write(const String&)
...
Now that Print::write(const char*) is also available, these casts are no
longer needed.
2013-12-24 13:22:43 +01:00
Matthijs Kooijman
f304abe35f
Add uint8_t* versions of methods in Stream
...
The new functions just call their char* equivalents, but this allows
reading bytes into a buffer of uint8_t as well as chars.
2013-12-24 13:22:42 +01:00
Matthijs Kooijman
250386802f
Add Print::write(const char *, size_t)
...
The new function just calls Print::write(const uint8_t *, size_t), but
this allows writing out a buffer of chars (without having to learn about
casts).
2013-12-24 13:22:42 +01:00
Federico Fissore
88a2ca18fd
Print.print optimization. Closes #1760
2013-12-23 11:50:39 +01:00
Cristian Maglie
8f1e3fd703
Using NOT_AN_INTERRUPT defined constant
2013-10-31 12:44:24 +01:00
Cristian Maglie
dc86455097
Merge branch 'master' into ide-1.5.x
2013-09-30 16:25:10 +02:00
Cristian Maglie
d4fe0a13b6
Merge branch 'ide-1.5.x' into dev-ide-1.5.x-discovery
...
Conflicts:
build/shared/revisions.txt
2013-09-10 12:10:57 +02:00
Cristian Maglie
cd7196c592
Fixed HardwareSerial bug introduced in 1.5.3.
...
Fixes #1568
2013-09-09 13:09:27 +02:00
Federico Fissore
effb59da4b
Merge remote-tracking branch 'arduino/ide-1.5.x' into dev-ide-1.5.x-discovery
2013-09-06 12:59:24 +02:00
Cristian Maglie
c86eed942d
Fixed String class regression after f80c6c5f35
...
This should make explicit String-from-integer constructor working again:
int a = 10;
String(a, 4);
2013-09-03 18:40:30 +02:00
Cristian Maglie
ea8c14421a
Merge branch 'ide-1.5.x' into dev-ide-1.5.x-discovery
...
Conflicts:
app/src/processing/app/Preferences.java
app/src/processing/app/debug/Uploader.java
2013-08-23 15:59:24 +02:00
Cristian Maglie
fc338b461f
Merged robot core
2013-08-22 16:29:49 +02:00
Cristian Maglie
00210189fe
Removed unused flags from String (free 1 byte of SRAM)
2013-08-20 15:15:47 +02:00
Cristian Maglie
ab82b1a405
Merge branch 'master' into ide-1.5.x
2013-07-31 17:33:55 +02:00
Cristian Maglie
0b632dba47
Merge branch 'ide-1.5.x' into dev-ide-1.5.x-discovery
...
Conflicts:
hardware/arduino/avr/cores/arduino/USBCore.cpp
2013-07-30 10:45:44 +02:00
Cristian Maglie
d3be60ead6
Applied USB CDC updates to robot's core.
2013-07-30 10:39:41 +02:00
Cristian Maglie
8c1ce45531
Move buffers into USB CDC (look #947 and #1369 for reference)
2013-07-27 12:06:42 +02:00
Cristian Maglie
4055ac13f3
Applied HardwareSerial updates to robot's core.
2013-07-26 13:50:34 +02:00
Cristian Maglie
ae4427f2ea
Fixed compile problem for Leonardo after 0bd6a2d20f
2013-07-26 12:50:17 +02:00
Matthijs Kooijman
f50372a2a6
Make private members of HardwareSerial protected
...
This allows users to create subclasses.
Closes : #947
2013-07-26 12:41:35 +02:00
Matthijs Kooijman
0bd6a2d20f
Move buffers into HardwareSerial
...
This removes the need for doing an extra pointer dereference on every
access to the buffers, shrinking the code by around 100 bytes.
The members for these buffers must be public for now, since the
interrupt handlers also need to access them. These can later be made
private again.
Furthermore, the struct ring_buffer was removed. This allows the all
head and tail pointers to be put into the HardwareSerial struct before
the actual buffers, so the pointers all end up in the first 32 bytes of
the struct that can be accessed using a single instruction (ldd).
References: #947
2013-07-26 12:39:56 +02:00
Matthijs Kooijman
e0a9a7676b
Use uint8_t for HardwareSerial ringbuffer pointers
...
Since the buffers aren't bigger than 64 bytes, these values can be
smaller. This saves a few bytes of ram, but also saves around 50 bytes
of program space, since the values can now be loaded using a single
instruction.
To prevent problems when people manually increase the buffer size, a
compile-time check is added.
Closes : #1078
2013-07-26 12:18:56 +02:00
Angus Gratton
1a99be33a3
Remove hardcoded product names (all provided for in boards.txt)
2013-07-17 14:38:05 +02:00
Angus Gratton
6abdeecbf5
Fix whitespace (tabify), oops
2013-07-17 14:37:49 +02:00
Angus Gratton
15e73e8daa
Allow USB product and manufacturer strings to be supplied in boards.txt
2013-07-17 14:37:29 +02:00
Cristian Maglie
34885b019b
Refactored YunClient and YunServer classes.
...
Added YunClient.connect() methods.
2013-07-04 17:15:52 +02:00
Federico Fissore
94547ebd9e
Merge remote-tracking branch 'arduino/ide-1.5.x' into dev-ide-1.5.x-discovery
2013-06-28 15:36:50 +02:00
Cristian Maglie
8e20bc7b43
String: fixed number of whitespaces in concat() methods
2013-06-28 09:53:25 +02:00
Federico Fissore
d469dc9d90
Merge remote-tracking branch 'arduino/ide-1.5.x' into ide-1.5.x-discovery
2013-06-25 16:13:56 +02:00
Cristian Maglie
f57a00ea6c
String: changed default to 2 decimal digits
2013-06-21 21:23:12 +02:00
Cristian Maglie
3e4419d6be
Merge branch 'ide-1.5.x' into ide-1.5.x-discovery
2013-06-07 00:38:42 +02:00
Cristian Maglie
ba7fb5518f
Fixed buffer overflow on String class (Paul Stoffregen)
2013-06-06 20:04:43 +02:00
Cristian Maglie
f80c6c5f35
Merged various bugfix / improvements to String class.
...
Merge branch 'master' into ide-1.5.x
2013-06-06 19:54:58 +02:00
Cristian Maglie
1130fede3a
Added support for Flash string on String class.
2013-06-06 16:33:20 +02:00
Cristian Maglie
b341a7c751
String class: removed deep copy on substring method.
...
Small code cleanup.
2013-06-06 16:33:20 +02:00
Cristian Maglie
22a84c69d3
Merge branch 'merge-1.0.5' into ide-1.5.x-discovery
2013-06-01 23:16:02 +02:00
Cristian Maglie
3394f61276
Merged 1.0.5
2013-05-29 18:30:36 +02:00
Federico Fissore
7e130a0c8b
Etheris references renamed Yun without accent to avoid encoding issues
2013-05-23 09:53:56 +02:00
Federico Fissore
a7e85f818a
right etheris values
2013-05-16 15:37:42 +02:00
Cristian Maglie
a46259a0cf
Merged 1.0.5
...
Still missing:
- updates to WiFi lib for sam.
- updates to examples of Ehternet and WiFi for sam.
Merge remote-tracking branch 'arduino/master' into ide-1.5.x
Conflicts:
app/src/processing/app/Base.java
app/src/processing/app/Editor.java
app/src/processing/app/helpers/FileUtils.java
app/src/processing/app/i18n/Resources_fr.po
app/src/processing/app/i18n/Resources_fr.properties
build/shared/revisions.txt
hardware/arduino/avr/libraries/Ethernet/examples/DnsWebClient/DnsWebClient.ino
hardware/arduino/avr/libraries/WiFi/examples/WifiChatServer/WifiChatServer.ino
hardware/arduino/avr/libraries/WiFi/examples/WifiPachubeClient/WifiPachubeClient.ino
hardware/arduino/avr/libraries/WiFi/examples/WifiPachubeClientString/WifiPachubeClientString.ino
hardware/arduino/avr/libraries/WiFi/examples/WifiTwitterClient/WifiTwitterClient.ino
hardware/arduino/avr/libraries/WiFi/examples/WifiUdpSendReceiveString/WifiUdpSendReceiveString.ino
hardware/arduino/avr/libraries/WiFi/examples/WifiWebClient/WifiWebClient.ino
hardware/arduino/avr/libraries/WiFi/examples/WifiWebClientRepeating/WifiWebClientRepeating.ino
hardware/arduino/avr/libraries/WiFi/examples/WifiWebServer/WifiWebServer.ino
libraries/WiFi/examples/WiFiChatServer/WiFiChatServer.ino
libraries/WiFi/examples/WiFiPachubeClient/WiFiPachubeClient.ino
libraries/WiFi/examples/WiFiPachubeClientString/WiFiPachubeClientString.ino
libraries/WiFi/examples/WiFiTwitterClient/WiFiTwitterClient.ino
libraries/WiFi/examples/WiFiUdpSendReceiveString/WiFiUdpSendReceiveString.ino
libraries/WiFi/examples/WiFiWebClient/WiFiWebClient.ino
libraries/WiFi/examples/WiFiWebClientRepeating/WiFiWebClientRepeating.ino
libraries/WiFi/examples/WiFiWebServer/WiFiWebServer.ino
libraries/WiFi/examples/WifiChatServer/WifiChatServer.ino
libraries/WiFi/examples/WifiPachubeClient/WifiPachubeClient.ino
libraries/WiFi/examples/WifiPachubeClientString/WifiPachubeClientString.ino
libraries/WiFi/examples/WifiTwitterClient/WifiTwitterClient.ino
libraries/WiFi/examples/WifiUdpSendReceiveString/WifiUdpSendReceiveString.ino
libraries/WiFi/examples/WifiWebClient/WifiWebClient.ino
libraries/WiFi/examples/WifiWebClientRepeating/WifiWebClientRepeating.ino
libraries/WiFi/examples/WifiWebServer/WifiWebServer.ino
2013-05-11 14:37:25 +02:00
Cristian Maglie
62b723357c
Merged 1.0.5
...
Merge remote-tracking branch 'arduino/master' into ide-1.5.x
Conflicts:
app/src/processing/app/Base.java
build/shared/revisions.txt
hardware/arduino/avr/cores/arduino/malloc.c
hardware/arduino/cores/arduino/avr-libc/malloc.c
hardware/arduino/cores/arduino/malloc.c
todo.txt
2013-04-03 13:51:04 +02:00
Cristian Maglie
38c05d2742
Merged 1.0.4 pre-release into 1.5
2012-12-17 16:53:45 +01:00