diff --git a/libraries/APM_RC/APM_RC_APM1.cpp b/libraries/APM_RC/APM_RC_APM1.cpp index cd242cd312ccb82af6bc54260856e16e1b8b5afa..fa4995f8c87ee8d9d8cbc391074044966c94d38f 100644 --- a/libraries/APM_RC/APM_RC_APM1.cpp +++ b/libraries/APM_RC/APM_RC_APM1.cpp @@ -21,7 +21,11 @@ #include "APM_RC_APM1.h" #include <avr/interrupt.h> -#include "WProgram.h" +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include "WProgram.h" +#endif #if !defined(__AVR_ATmega1280__) && !defined(__AVR_ATmega2560__) # error Please check the Tools/Board menu to ensure you have selected Arduino Mega as your target. diff --git a/libraries/APM_RC/APM_RC_APM2.cpp b/libraries/APM_RC/APM_RC_APM2.cpp index f9e55fcac54176e4f17f09f9855dfd0c8e730412..22532949909d86f49a4b0d5eec0bfe6616c09955 100644 --- a/libraries/APM_RC/APM_RC_APM2.cpp +++ b/libraries/APM_RC/APM_RC_APM2.cpp @@ -20,7 +20,11 @@ */ #include "APM_RC_APM2.h" -#include "WProgram.h" +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include "WProgram.h" +#endif #if !defined(__AVR_ATmega1280__) && !defined(__AVR_ATmega2560__) # error Please check the Tools/Board menu to ensure you have selected Arduino Mega as your target. diff --git a/libraries/AP_ADC/AP_ADC_ADS7844.cpp b/libraries/AP_ADC/AP_ADC_ADS7844.cpp index 5eea6eb370541ebd032868f48d4c9ab89d3cce41..c3cf71cda2550b356b5dc2ac7e72f2434493517f 100644 --- a/libraries/AP_ADC/AP_ADC_ADS7844.cpp +++ b/libraries/AP_ADC/AP_ADC_ADS7844.cpp @@ -44,15 +44,19 @@ Channel 7 : Differential pressure sensor port */ +#include "AP_ADC_ADS7844.h" + extern "C" { // AVR LibC Includes #include <inttypes.h> #include <stdint.h> #include <avr/interrupt.h> - #include "WConstants.h" } - -#include "AP_ADC_ADS7844.h" +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include "WConstants.h" +#endif // Commands for reading ADC channels on ADS7844 static const unsigned char adc_cmd[9] = { 0x87, 0xC7, 0x97, 0xD7, 0xA7, 0xE7, 0xB7, 0xF7, 0x00 }; diff --git a/libraries/AP_ADC/AP_ADC_HIL.cpp b/libraries/AP_ADC/AP_ADC_HIL.cpp index 5a0cb92583bb58476d1d461f5b705a64ac4a67c3..80488682ab0b57cb32931eb0b8aef7d2dac5bdee 100644 --- a/libraries/AP_ADC/AP_ADC_HIL.cpp +++ b/libraries/AP_ADC/AP_ADC_HIL.cpp @@ -1,5 +1,9 @@ #include "AP_ADC_HIL.h" -#include "WProgram.h" +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include "WProgram.h" +#endif /* AP_ADC_HIL.cpp diff --git a/libraries/AP_AnalogSource/AP_AnalogSource_Arduino.cpp b/libraries/AP_AnalogSource/AP_AnalogSource_Arduino.cpp index 3406a59a229d54506acc03aa92ff3a68c4069685..ff9189e79a90c03c375198ff3b2b2e99ce3f3ee1 100644 --- a/libraries/AP_AnalogSource/AP_AnalogSource_Arduino.cpp +++ b/libraries/AP_AnalogSource/AP_AnalogSource_Arduino.cpp @@ -1,6 +1,10 @@ /// -*- tab-width: 4; Mode: C++; c-basic-offset: 4; indent-tabs-mode: nil -*- -#include "wiring.h" +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include "wiring.h" +#endif #include "AP_AnalogSource_Arduino.h" float AP_AnalogSource_Arduino::read(void) diff --git a/libraries/AP_Baro/AP_Baro_BMP085.cpp b/libraries/AP_Baro/AP_Baro_BMP085.cpp index eefd9c5dad49ec4144213b6e8e78a3b9ad993df5..cf2b1bd52774469c826257852d0da660981522c1 100644 --- a/libraries/AP_Baro/AP_Baro_BMP085.cpp +++ b/libraries/AP_Baro/AP_Baro_BMP085.cpp @@ -39,8 +39,12 @@ extern "C" { // AVR LibC Includes #include <inttypes.h> #include <avr/interrupt.h> - #include "WConstants.h" } +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include "WConstants.h" +#endif #include <AP_Common.h> #include <AP_Math.h> // ArduPilot Mega Vector/Matrix math Library diff --git a/libraries/AP_Baro/AP_Baro_BMP085_hil.cpp b/libraries/AP_Baro/AP_Baro_BMP085_hil.cpp index 795326cb4fa1bf92abece0ac7a26c2a457c75beb..71577b8d4a868c43dee511d28e881d3fdeb4c3ba 100644 --- a/libraries/AP_Baro/AP_Baro_BMP085_hil.cpp +++ b/libraries/AP_Baro/AP_Baro_BMP085_hil.cpp @@ -4,8 +4,12 @@ extern "C" { // AVR LibC Includes #include <inttypes.h> #include <avr/interrupt.h> - #include "WConstants.h" } +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include "WConstants.h" +#endif #include "AP_Baro_BMP085_hil.h" diff --git a/libraries/AP_Common/AP_Common.h b/libraries/AP_Common/AP_Common.h index 0ffe4aea36ed7145e7697c3537add3a6fb7bfc44..64ff287f15f767c6fa4cc3a25f6b0bf6086131d4 100644 --- a/libraries/AP_Common/AP_Common.h +++ b/libraries/AP_Common/AP_Common.h @@ -16,7 +16,11 @@ #define _AP_COMMON_H // Get the common arduino functions -#include "wiring.h" +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include "wiring.h" +#endif // ... and remove some of their stupid macros #undef round #undef abs diff --git a/libraries/AP_Common/AP_Vector.h b/libraries/AP_Common/AP_Vector.h index a82018c388cc46707b4490bb864b48b444eebeb4..bcd081a4d35b4ee92f67cc1f7dcc82d4676458a5 100644 --- a/libraries/AP_Common/AP_Vector.h +++ b/libraries/AP_Common/AP_Vector.h @@ -22,7 +22,11 @@ #include "../FastSerial/BetterStream.h" #include <stdlib.h> #include <inttypes.h> -#include <WProgram.h> +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include <WProgram.h> +#endif #ifdef ASSERT const static char vectorSource[] ="Vector.hpp"; diff --git a/libraries/AP_Common/c++.cpp b/libraries/AP_Common/c++.cpp index a11b97ff9b7c0d6ee28fe423199d268543591181..8ea4bc4f41a88487bebd67b7c40cd4777c6634ae 100644 --- a/libraries/AP_Common/c++.cpp +++ b/libraries/AP_Common/c++.cpp @@ -9,7 +9,11 @@ #include <stdlib.h> #include "c++.h" -#include "WProgram.h" +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include "WProgram.h" +#endif void * operator new(size_t size) { diff --git a/libraries/AP_Compass/AP_Compass_HMC5843.cpp b/libraries/AP_Compass/AP_Compass_HMC5843.cpp index 2f6b9e72cc4b40c1f8b2b970d760020c4e4c378c..6a160230bdad83e126a0b931f662fa8a748c6963 100644 --- a/libraries/AP_Compass/AP_Compass_HMC5843.cpp +++ b/libraries/AP_Compass/AP_Compass_HMC5843.cpp @@ -15,8 +15,12 @@ // AVR LibC Includes #include <math.h> -#include "WConstants.h" #include <FastSerial.h> +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include "WConstants.h" +#endif #include <I2C.h> #include "AP_Compass_HMC5843.h" diff --git a/libraries/AP_DCM/AP_DCM.h b/libraries/AP_DCM/AP_DCM.h index e3a6a89950982bb4dfb98db0397186fc74e2bf1d..bf1a539479f06a40b6dab8399eea9785b723d686 100644 --- a/libraries/AP_DCM/AP_DCM.h +++ b/libraries/AP_DCM/AP_DCM.h @@ -10,12 +10,15 @@ #include "../FastSerial/FastSerial.h" #include "../AP_Math/AP_Math.h" #include <inttypes.h> -#include "WProgram.h" #include "../AP_Compass/AP_Compass.h" #include "../AP_ADC/AP_ADC.h" #include "../AP_GPS/AP_GPS.h" #include "../AP_IMU/AP_IMU.h" - +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include "WProgram.h" +#endif class AP_DCM { diff --git a/libraries/AP_DCM/AP_DCM_HIL.h b/libraries/AP_DCM/AP_DCM_HIL.h index a8266fcb0900496328b79a89edeaff5efa6beff6..ad59081f615e974359676089b1e055e6c8927768 100644 --- a/libraries/AP_DCM/AP_DCM_HIL.h +++ b/libraries/AP_DCM/AP_DCM_HIL.h @@ -4,11 +4,15 @@ #include "../FastSerial/FastSerial.h" #include "../AP_Math/AP_Math.h" #include <inttypes.h> -#include "WProgram.h" #include "../AP_Compass/AP_Compass.h" #include "../AP_ADC/AP_ADC.h" #include "../AP_GPS/AP_GPS.h" #include "../AP_IMU/AP_IMU.h" +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include "WProgram.h" +#endif class AP_DCM_HIL diff --git a/libraries/AP_EEPROMB/AP_EEPROMB.h b/libraries/AP_EEPROMB/AP_EEPROMB.h index 38b4d5019fc9cba67fe016a513df2e11b7f9e8a4..f9378bc802cdd6efc6161fc42ae3abbd8bb315eb 100644 --- a/libraries/AP_EEPROMB/AP_EEPROMB.h +++ b/libraries/AP_EEPROMB/AP_EEPROMB.h @@ -6,8 +6,11 @@ #ifndef AP_EEPROMB_h #define AP_EEPROMB_h -//#include <stdint.h> -#include "WProgram.h" +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include "WProgram.h" +#endif /// @class AP_EEPROMB /// @brief Object for reading and writing to the EEPROM diff --git a/libraries/AP_GPS/AP_GPS_406.cpp b/libraries/AP_GPS/AP_GPS_406.cpp index 30ca72a62c0a6345cdb207217a89786686d8aac3..2dbc6139bbf80987143f77dca561933d5c00661b 100644 --- a/libraries/AP_GPS/AP_GPS_406.cpp +++ b/libraries/AP_GPS/AP_GPS_406.cpp @@ -11,7 +11,11 @@ #include "../FastSerial/FastSerial.h" // because we need to change baud rates... ugh. #include "AP_GPS_406.h" -#include "WProgram.h" +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include "WProgram.h" +#endif static const char init_str[] = "$PSRF100,0,57600,8,1,0*37"; diff --git a/libraries/AP_GPS/AP_GPS_HIL.cpp b/libraries/AP_GPS/AP_GPS_HIL.cpp index 38db02ba0535a1effb673bc7572e402ffec60e1b..31fa562155c1291ef9993994e161df382470f791 100644 --- a/libraries/AP_GPS/AP_GPS_HIL.cpp +++ b/libraries/AP_GPS/AP_GPS_HIL.cpp @@ -12,7 +12,11 @@ // #include "AP_GPS_HIL.h" -#include "WProgram.h" +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include "WProgram.h" +#endif // Constructors //////////////////////////////////////////////////////////////// AP_GPS_HIL::AP_GPS_HIL(Stream *s) : GPS(s) diff --git a/libraries/AP_GPS/AP_GPS_IMU.cpp b/libraries/AP_GPS/AP_GPS_IMU.cpp index 8e5da67ae9e8384d7bd80321dbc2b869b05340cb..9695fd6aae0c9a048c6b7713e0faf12505281371 100644 --- a/libraries/AP_GPS/AP_GPS_IMU.cpp +++ b/libraries/AP_GPS/AP_GPS_IMU.cpp @@ -28,7 +28,11 @@ */ #include "AP_GPS_IMU.h" -#include "WProgram.h" +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include "WProgram.h" +#endif // Constructors //////////////////////////////////////////////////////////////// diff --git a/libraries/AP_GPS/AP_GPS_MTK16.cpp b/libraries/AP_GPS/AP_GPS_MTK16.cpp index 9b4f9a95b81546e914e755580b94b69f12768ec6..7531917d0bfda365e91d835be3b25f8dea50f050 100644 --- a/libraries/AP_GPS/AP_GPS_MTK16.cpp +++ b/libraries/AP_GPS/AP_GPS_MTK16.cpp @@ -13,7 +13,11 @@ #include "AP_GPS_MTK16.h" #include <stdint.h> -#include <wiring.h> +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include <wiring.h> +#endif // Constructors //////////////////////////////////////////////////////////////// AP_GPS_MTK16::AP_GPS_MTK16(Stream *s) : GPS(s) diff --git a/libraries/AP_GPS/GPS.cpp b/libraries/AP_GPS/GPS.cpp index db5ef00d6d521ffe8d5369a8e882e2dc0413c3cc..87c4c8f2e339ed9eee61a479236786deb5445c4a 100644 --- a/libraries/AP_GPS/GPS.cpp +++ b/libraries/AP_GPS/GPS.cpp @@ -1,7 +1,11 @@ // -*- tab-width: 4; Mode: C++; c-basic-offset: 4; indent-tabs-mode: t -*- #include "GPS.h" -#include "WProgram.h" +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include "WProgram.h" +#endif void GPS::update(void) diff --git a/libraries/AP_InertialSensor/AP_InertialSensor_MPU6000.cpp b/libraries/AP_InertialSensor/AP_InertialSensor_MPU6000.cpp index ccd6a67c41fa6a636b9201044f01d300ea5b4a86..3cfd3aefeb27ffe845d0d68efb6cb17eaf28f2d0 100644 --- a/libraries/AP_InertialSensor/AP_InertialSensor_MPU6000.cpp +++ b/libraries/AP_InertialSensor/AP_InertialSensor_MPU6000.cpp @@ -3,8 +3,12 @@ #include "AP_InertialSensor_MPU6000.h" -#include <wiring.h> #include <SPI.h> +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include <wiring.h> +#endif // MPU 6000 registers #define MPUREG_WHOAMI 0x75 // diff --git a/libraries/AP_Navigation/Navigation.h b/libraries/AP_Navigation/Navigation.h index 4fce19da6399bd0bba0c2be3cb9cc520221cc8d0..b0919854b8d083c9da509aa24baeb26d9e7a2759 100644 --- a/libraries/AP_Navigation/Navigation.h +++ b/libraries/AP_Navigation/Navigation.h @@ -6,7 +6,11 @@ #define XTRACK_ENTRY_ANGLE 3000 // Max angle used to correct for track following degrees*100 #include <GPS.h> // ArduPilot GPS Library #include "Waypoints.h" // ArduPilot Waypoints Library -#include "WProgram.h" +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include "WProgram.h" +#endif #define T7 10000000 diff --git a/libraries/AP_OpticalFlow/AP_OpticalFlow_ADNS3080.cpp b/libraries/AP_OpticalFlow/AP_OpticalFlow_ADNS3080.cpp index 85c6251b089db2b1a0362a22cf5ed6bbca4de062..dc24db1392257c9bfe08b3f7c50c0ee64c4f255f 100644 --- a/libraries/AP_OpticalFlow/AP_OpticalFlow_ADNS3080.cpp +++ b/libraries/AP_OpticalFlow/AP_OpticalFlow_ADNS3080.cpp @@ -24,8 +24,12 @@ */ #include "AP_OpticalFlow_ADNS3080.h" -#include "WProgram.h" #include "SPI.h" +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include "WProgram.h" +#endif #define AP_SPI_TIMEOUT 1000 diff --git a/libraries/AP_PeriodicProcess/AP_TimerProcess.cpp b/libraries/AP_PeriodicProcess/AP_TimerProcess.cpp index 5ba103de2fd46a3906a2bc75da220c0de9f5c709..767efacfb164ef03a6e2ac022d9b1924f4ef891e 100644 --- a/libraries/AP_PeriodicProcess/AP_TimerProcess.cpp +++ b/libraries/AP_PeriodicProcess/AP_TimerProcess.cpp @@ -5,9 +5,13 @@ extern "C" { #include <inttypes.h> #include <stdint.h> -#include "WConstants.h" #include <avr/interrupt.h> } +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include "WConstants.h" +#endif uint8_t AP_TimerProcess::_period; ap_procedure AP_TimerProcess::_proc[AP_TIMERPROCESS_MAX_PROCS]; diff --git a/libraries/AP_RC/AP_RC.cpp b/libraries/AP_RC/AP_RC.cpp index 8c2db835cf3d76eb5c87f517ef31b98e8de8bfd3..ee20c5f1e07360aefeeede0d6b4ebe7d21f095d6 100644 --- a/libraries/AP_RC/AP_RC.cpp +++ b/libraries/AP_RC/AP_RC.cpp @@ -10,8 +10,12 @@ */ #include "AP_RC.h" -#include "WProgram.h" #include <avr/interrupt.h> +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include "WProgram.h" +#endif // Variable definition for interrupt volatile uint16_t timer1count = 0; diff --git a/libraries/AP_RC_Channel/AP_RC_Channel.cpp b/libraries/AP_RC_Channel/AP_RC_Channel.cpp index 9c8c8a6ca460e9c630a3b1cb54974c71e6da50b1..eea2e91b338e25a16767aef487711e6d68d0ad76 100644 --- a/libraries/AP_RC_Channel/AP_RC_Channel.cpp +++ b/libraries/AP_RC_Channel/AP_RC_Channel.cpp @@ -11,7 +11,11 @@ #include <math.h> #include <avr/eeprom.h> -#include "WProgram.h" +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include "WProgram.h" +#endif #include "AP_RC_Channel.h" #define ANGLE 0 diff --git a/libraries/AP_RangeFinder/AP_RangeFinder_MaxsonarXL.cpp b/libraries/AP_RangeFinder/AP_RangeFinder_MaxsonarXL.cpp index 3e8b6019f11c5001f8728c7106ae38136a6a6000..20915092d600b928c4ce4d2bca5b67ee2ce0be6e 100644 --- a/libraries/AP_RangeFinder/AP_RangeFinder_MaxsonarXL.cpp +++ b/libraries/AP_RangeFinder/AP_RangeFinder_MaxsonarXL.cpp @@ -26,7 +26,11 @@ */ // AVR LibC Includes -#include "WConstants.h" +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include "WConstants.h" +#endif #include "AP_RangeFinder_MaxsonarXL.h" // Constructor ////////////////////////////////////////////////////////////// diff --git a/libraries/AP_RangeFinder/AP_RangeFinder_SharpGP2Y.cpp b/libraries/AP_RangeFinder/AP_RangeFinder_SharpGP2Y.cpp index bb8a20c896912ed693d8c7c97b02bf48f60b9fa8..3f08bb7dc722f1158ca1bc44d8f907481726c9de 100644 --- a/libraries/AP_RangeFinder/AP_RangeFinder_SharpGP2Y.cpp +++ b/libraries/AP_RangeFinder/AP_RangeFinder_SharpGP2Y.cpp @@ -26,7 +26,11 @@ */ // AVR LibC Includes -#include "WConstants.h" +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include "WConstants.h" +#endif #include "AP_RangeFinder_SharpGP2Y.h" // Constructor ////////////////////////////////////////////////////////////// diff --git a/libraries/AP_RangeFinder/RangeFinder.cpp b/libraries/AP_RangeFinder/RangeFinder.cpp index 582e072d60f150bffc79d4dece59371d1167db82..63945e5ab7e31119b1f5b75b2b8559fa73c17337 100644 --- a/libraries/AP_RangeFinder/RangeFinder.cpp +++ b/libraries/AP_RangeFinder/RangeFinder.cpp @@ -13,7 +13,11 @@ */ // AVR LibC Includes -#include "WConstants.h" +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include "WConstants.h" +#endif #include "RangeFinder.h" diff --git a/libraries/AP_Relay/AP_Relay.cpp b/libraries/AP_Relay/AP_Relay.cpp index 0c62abb44950992884ae7ba85cfbcbe8ada6bb98..800e35ea7105fe722c5db5a0c8ea92d0806365c8 100644 --- a/libraries/AP_Relay/AP_Relay.cpp +++ b/libraries/AP_Relay/AP_Relay.cpp @@ -8,7 +8,11 @@ */ #include <avr/io.h> -#include "wiring.h" +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include "wiring.h" +#endif #include "AP_Relay.h" diff --git a/libraries/DataFlash/DataFlash_APM2.cpp b/libraries/DataFlash/DataFlash_APM2.cpp index 72e336e2eea8337bbbd06197440b185e7cb638a3..a1a2897fc3bdd353efc9dac7ef235a6496fd6932 100644 --- a/libraries/DataFlash/DataFlash_APM2.cpp +++ b/libraries/DataFlash/DataFlash_APM2.cpp @@ -36,8 +36,12 @@ extern "C" { // AVR LibC Includes #include <inttypes.h> #include <avr/interrupt.h> - #include "WConstants.h" } +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include "WConstants.h" +#endif #include "DataFlash_APM2.h" diff --git a/libraries/FastSerial/FastSerial.cpp b/libraries/FastSerial/FastSerial.cpp index 75c8e850f0ebb45829cb88d9776d3b0dad392ea9..efc8c896e6d14d66113e7083fe396c572540221f 100644 --- a/libraries/FastSerial/FastSerial.cpp +++ b/libraries/FastSerial/FastSerial.cpp @@ -31,7 +31,12 @@ //#include "../AP_Common/AP_Common.h" #include "FastSerial.h" -#include "WProgram.h" + +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include "WProgram.h" +#endif #if defined(UDR3) # define FS_MAX_PORTS 4 @@ -197,6 +202,30 @@ void FastSerial::flush(void) _txBuffer->tail = _txBuffer->head; } +#if defined(ARDUINO) && ARDUINO >= 100 +size_t FastSerial::write(uint8_t c) +{ + uint16_t i; + + if (!_open) // drop bytes if not open + return 0; + + // wait for room in the tx buffer + i = (_txBuffer->head + 1) & _txBuffer->mask; + while (i == _txBuffer->tail) + ; + + // add byte to the buffer + _txBuffer->bytes[_txBuffer->head] = c; + _txBuffer->head = i; + + // enable the data-ready interrupt, as it may be off if the buffer is empty + *_ucsrb |= _portTxBits; + + // return number of bytes written (always 1) + return 1; +} +#else void FastSerial::write(uint8_t c) { uint16_t i; @@ -216,6 +245,7 @@ void FastSerial::write(uint8_t c) // enable the data-ready interrupt, as it may be off if the buffer is empty *_ucsrb |= _portTxBits; } +#endif // Buffer management /////////////////////////////////////////////////////////// diff --git a/libraries/FastSerial/FastSerial.h b/libraries/FastSerial/FastSerial.h index bc0417a7c04ab59d42441abe4811caf7cab08e69..5fcaa95c751a2acf50b30e34fd4682ea06479ec1 100644 --- a/libraries/FastSerial/FastSerial.h +++ b/libraries/FastSerial/FastSerial.h @@ -116,7 +116,11 @@ public: virtual int read(void); virtual int peek(void); virtual void flush(void); +#if defined(ARDUINO) && ARDUINO >= 100 + virtual size_t write(uint8_t c); +#else virtual void write(uint8_t c); +#endif using BetterStream::write; //@} diff --git a/libraries/I2C/I2C.cpp b/libraries/I2C/I2C.cpp index 52fb607f8769405973b22e6f022fb93282385048..2b699b8cc84c1437788c34bfd51d01c5503e44e5 100644 --- a/libraries/I2C/I2C.cpp +++ b/libraries/I2C/I2C.cpp @@ -31,9 +31,13 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ -#include "WProgram.h" #include <inttypes.h> #include "I2C.h" +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include "WProgram.h" +#endif diff --git a/libraries/I2C/I2C.h b/libraries/I2C/I2C.h index 32737173da72ce002e0899683f4e4ca6b816a20b..ca957312ad10460ef46c45ab65083b2da0186d01 100644 --- a/libraries/I2C/I2C.h +++ b/libraries/I2C/I2C.h @@ -31,8 +31,12 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ -#include "WProgram.h" #include <inttypes.h> +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include "WProgram.h" +#endif #ifndef I2C_h #define I2C_h diff --git a/libraries/ModeFilter/ModeFilter.cpp b/libraries/ModeFilter/ModeFilter.cpp index b7f4d3c768481b0b5f652229192332f27c3229a0..cf282d56f0889072d71cc90ba000f4c21ac34114 100644 --- a/libraries/ModeFilter/ModeFilter.cpp +++ b/libraries/ModeFilter/ModeFilter.cpp @@ -14,7 +14,11 @@ #include "ModeFilter.h" #include <avr/interrupt.h> -#include "WProgram.h" +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include "WProgram.h" +#endif // Constructors //////////////////////////////////////////////////////////////// diff --git a/libraries/RC_Channel/RC_Channel.cpp b/libraries/RC_Channel/RC_Channel.cpp index 37f90e0cdc9f31477c6651b925e2fbe1e233635b..bd94992ab1b62f0cce396a6ab4b49606e1c89906 100644 --- a/libraries/RC_Channel/RC_Channel.cpp +++ b/libraries/RC_Channel/RC_Channel.cpp @@ -11,7 +11,11 @@ #include <math.h> #include <avr/eeprom.h> -#include "WProgram.h" +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include "WProgram.h" +#endif #include "RC_Channel.h" #define RC_CHANNEL_ANGLE 0 diff --git a/libraries/Waypoints/Waypoints.h b/libraries/Waypoints/Waypoints.h index ddf03378a4c17bd77b38fb3dcb331098ad833bc6..2830da3bec7d59bf6f12ff585b9229035c9cfd29 100644 --- a/libraries/Waypoints/Waypoints.h +++ b/libraries/Waypoints/Waypoints.h @@ -2,8 +2,12 @@ #define Waypoints_h #include <inttypes.h> -#include "WProgram.h" #include <avr/eeprom.h> +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include "WProgram.h" +#endif class Waypoints {