Merge pull request #329 from jcrocholl/Marlin_v1
Add Printrboard and Brainwave to pins.h and fastio.h
This commit is contained in:
		| @@ -37,6 +37,8 @@ | ||||
| // 7  = Ultimaker | ||||
| // 71 = Ultimaker (Older electronics. Pre 1.5.4. This is rare) | ||||
| // 8  = Teensylu | ||||
| // 81 = Printrboard (AT90USB1286) | ||||
| // 82 = Brainwave (AT90USB646) | ||||
| // 9  = Gen3+ | ||||
| // 70 = Megatronics | ||||
| // 90 = Alpha OMCA board | ||||
|   | ||||
| @@ -4,8 +4,6 @@ | ||||
| #ifndef MARLIN_H | ||||
| #define MARLIN_H | ||||
|  | ||||
| #define  HardwareSerial_h // trick to disable the standard HWserial | ||||
|  | ||||
| #define  FORCE_INLINE __attribute__((always_inline)) inline | ||||
|  | ||||
| #include <math.h> | ||||
| @@ -24,6 +22,10 @@ | ||||
| #include "Configuration.h" | ||||
| #include "pins.h" | ||||
|  | ||||
| #ifndef AT90USB | ||||
| #define  HardwareSerial_h // trick to disable the standard HWserial | ||||
| #endif | ||||
|  | ||||
| #if ARDUINO >= 100  | ||||
|   #if defined(__AVR_ATmega644P__) | ||||
|     #include "WProgram.h" | ||||
| @@ -45,7 +47,7 @@ | ||||
|  | ||||
| #include "WString.h" | ||||
|  | ||||
| #if MOTHERBOARD == 8  // Teensylu | ||||
| #ifdef AT90USB | ||||
|   #define MYSERIAL Serial | ||||
| #else | ||||
|   #define MYSERIAL MSerial | ||||
|   | ||||
| @@ -23,7 +23,7 @@ | ||||
| #include "Marlin.h" | ||||
| #include "MarlinSerial.h" | ||||
|  | ||||
| #if MOTHERBOARD != 8 // !teensylu | ||||
| #ifndef AT90USB | ||||
| // this next line disables the entire HardwareSerial.cpp,  | ||||
| // this is so I can support Attiny series and any other chip without a uart | ||||
| #if defined(UBRRH) || defined(UBRR0H) || defined(UBRR1H) || defined(UBRR2H) || defined(UBRR3H) | ||||
| @@ -319,5 +319,4 @@ void MarlinSerial::printFloat(double number, uint8_t digits) | ||||
| MarlinSerial MSerial; | ||||
|  | ||||
| #endif // whole file | ||||
| #endif //teensylu | ||||
|  | ||||
| #endif // !AT90USB | ||||
|   | ||||
| @@ -65,7 +65,7 @@ | ||||
| #define BYTE 0 | ||||
|  | ||||
|  | ||||
| #if MOTHERBOARD != 8 // ! teensylu | ||||
| #ifndef AT90USB | ||||
| // Define constants and variables for buffering incoming serial data.  We're | ||||
| // using a ring buffer (I think), in which rx_buffer_head is the index of the | ||||
| // location to which to write the next incoming character and rx_buffer_tail | ||||
| @@ -179,6 +179,6 @@ class MarlinSerial //: public Stream | ||||
| }; | ||||
|  | ||||
| extern MarlinSerial MSerial; | ||||
| #endif // ! teensylu | ||||
| #endif // !AT90USB | ||||
|  | ||||
| #endif | ||||
|   | ||||
| @@ -1928,7 +1928,7 @@ pins | ||||
|  | ||||
| #endif | ||||
|  | ||||
| #if defined (__AVR_AT90USB1287__) || defined (__AVR_AT90USB1286__) | ||||
| #if defined (__AVR_AT90USB1287__) || defined (__AVR_AT90USB1286__) || defined (__AVR_AT90USB646__) || defined(__AVR_AT90USB647__) | ||||
| // SPI | ||||
| #define	SCK					DIO9 | ||||
| #define	MISO				DIO11 | ||||
|   | ||||
| @@ -957,13 +957,18 @@ | ||||
| #endif | ||||
|  | ||||
| /**************************************************************************************** | ||||
| * Teensylu 0.7 pin assingments (ATMEGA90USB) | ||||
| * Requires the Teensyduino software with Teensy2.0++ selected in arduino IDE! | ||||
| * Teensylu 0.7 / Printrboard pin assignments (AT90USB1286) | ||||
| * Requires the Teensyduino software with Teensy++ 2.0 selected in Arduino IDE! | ||||
|   http://www.pjrc.com/teensy/teensyduino.html | ||||
| * See http://reprap.org/wiki/Printrboard for more info | ||||
| ****************************************************************************************/ | ||||
| #if MOTHERBOARD == 8 | ||||
| #define MOTHERBOARD 8 | ||||
| #if MOTHERBOARD == 8 || MOTHERBOARD == 81 | ||||
| #define KNOWN_BOARD 1 | ||||
| #define AT90USB 1286  // Disable MarlinSerial etc. | ||||
|  | ||||
| #ifndef __AVR_AT90USB1286__ | ||||
| #error Oops!  Make sure you have 'Teensy++ 2.0' selected from the 'Tools -> Boards' menu. | ||||
| #endif | ||||
|  | ||||
| #define X_STEP_PIN          0 | ||||
| #define X_DIR_PIN           1 | ||||
| @@ -987,18 +992,22 @@ | ||||
| #define E0_DIR_PIN          7 | ||||
| #define E0_ENABLE_PIN      19 | ||||
|  | ||||
|  | ||||
|  | ||||
| #define HEATER_0_PIN       21  // Extruder | ||||
| #define HEATER_1_PIN       -1 | ||||
| #define HEATER_2_PIN       -1 | ||||
| #define HEATER_BED_PIN     20  // Bed | ||||
| #define FAN_PIN            22  // Fan | ||||
|  | ||||
| #define TEMP_0_PIN          7  // Extruder | ||||
| #if MOTHERBOARD == 8 | ||||
|   #define TEMP_0_PIN          7  // Extruder / Analog pin numbering | ||||
|   #define TEMP_BED_PIN        6  // Bed / Analog pin numbering | ||||
| #else | ||||
|   #define TEMP_0_PIN          1  // Extruder / Analog pin numbering | ||||
|   #define TEMP_BED_PIN        0  // Bed / Analog pin numbering | ||||
| #endif | ||||
|  | ||||
| #define TEMP_1_PIN         -1 | ||||
| #define TEMP_2_PIN         -1 | ||||
| #define TEMP_BED_PIN        6  // Bed | ||||
|  | ||||
| #define SDPOWER            -1 | ||||
| #define SDSS                8 | ||||
| @@ -1013,8 +1022,75 @@ | ||||
|   #define MISO_PIN         11 | ||||
|   #define MOSI_PIN         10 | ||||
| #endif | ||||
|  | ||||
| #endif  // MOTHERBOARD == 8 (Teensylu) or 81 (Printrboard) | ||||
|  | ||||
| /**************************************************************************************** | ||||
|  * Brainwave 1.0 pin assignments (AT90USB646) | ||||
|  * Requires hardware bundle for Arduino: | ||||
|    https://github.com/unrepentantgeek/brainwave-arduino | ||||
|  ****************************************************************************************/ | ||||
| #if MOTHERBOARD == 82 | ||||
| #define KNOWN_BOARD 1 | ||||
| #define AT90USB 646  // Disable MarlinSerial etc. | ||||
|  | ||||
| #ifndef __AVR_AT90USB646__ | ||||
| #error Oops!  Make sure you have 'Brainwave' selected from the 'Tools -> Boards' menu. | ||||
| #endif | ||||
|  | ||||
| #define X_STEP_PIN         27 | ||||
| #define X_DIR_PIN          29 | ||||
| #define X_ENABLE_PIN       28 | ||||
| #define X_MIN_PIN           7 | ||||
| #define X_MAX_PIN          -1 | ||||
| #define X_ATT_PIN          26 | ||||
|  | ||||
| #define Y_STEP_PIN         31 | ||||
| #define Y_DIR_PIN          33 | ||||
| #define Y_ENABLE_PIN       32 | ||||
| #define Y_MIN_PIN           6 | ||||
| #define Y_MAX_PIN          -1 | ||||
| #define Y_ATT_PIN          30 | ||||
|  | ||||
| #define Z_STEP_PIN         17 | ||||
| #define Z_DIR_PIN          19 | ||||
| #define Z_ENABLE_PIN       18 | ||||
| #define Z_MIN_PIN           5 | ||||
| #define Z_MAX_PIN          -1 | ||||
| #define Z_ATT_PIN          16 | ||||
|  | ||||
| #define E0_STEP_PIN        21 | ||||
| #define E0_DIR_PIN         23 | ||||
| #define E0_ENABLE_PIN      22 | ||||
| #define E0_ATT_PIN         20 | ||||
|  | ||||
| #define HEATER_0_PIN        4  // Extruder | ||||
| #define HEATER_1_PIN       -1 | ||||
| #define HEATER_2_PIN       -1 | ||||
| #define HEATER_BED_PIN     38  // Bed | ||||
| #define FAN_PIN             3  // Fan | ||||
|  | ||||
| #define TEMP_0_PIN          7  // Extruder / Analog pin numbering | ||||
| #define TEMP_1_PIN         -1 | ||||
| #define TEMP_2_PIN         -1 | ||||
| #define TEMP_BED_PIN        6  // Bed / Analog pin numbering | ||||
|  | ||||
| #define SDPOWER            -1 | ||||
| #define SDSS               -1 | ||||
| #define LED_PIN            39 | ||||
| #define PS_ON_PIN          -1 | ||||
| #define KILL_PIN           -1 | ||||
| #define ALARM_PIN          -1 | ||||
|  | ||||
| #ifndef SDSUPPORT | ||||
| // these pins are defined in the SD library if building with SD support | ||||
|   #define SCK_PIN           9 | ||||
|   #define MISO_PIN         11 | ||||
|   #define MOSI_PIN         10 | ||||
| #endif | ||||
|  | ||||
| #endif  // MOTHERBOARD == 82 (Brainwave) | ||||
|  | ||||
| /**************************************************************************************** | ||||
| * Gen3+ pin assignment | ||||
| * | ||||
|   | ||||
| @@ -478,7 +478,7 @@ ISR(TIMER1_COMPA_vect) | ||||
|  | ||||
|      | ||||
|     for(int8_t i=0; i < step_loops; i++) { // Take multiple steps per interrupt (For high speed moves)  | ||||
|       #if MOTHERBOARD != 8 // !teensylu | ||||
|       #ifndef AT90USB | ||||
|       MSerial.checkRx(); // Check for serial chars. | ||||
|       #endif | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user