Fork of Smoothie to port to mbed non-LPC targets.
Fork of Smoothie by
libs/nuts_bolts.h@3:f151d08d335c, 2014-03-02 (annotated)
- Committer:
- Bigcheese
- Date:
- Sun Mar 02 06:33:08 2014 +0000
- Revision:
- 3:f151d08d335c
- Parent:
- 2:1df0b61d3b5a
Bunch of stuff. Need to locally merge in updated USB changes.
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
Michael J. Spencer |
2:1df0b61d3b5a | 1 | /* |
Michael J. Spencer |
2:1df0b61d3b5a | 2 | nuts_bolts.h - cartesian robot controller. |
Michael J. Spencer |
2:1df0b61d3b5a | 3 | Part of Grbl |
Michael J. Spencer |
2:1df0b61d3b5a | 4 | |
Michael J. Spencer |
2:1df0b61d3b5a | 5 | Copyright (c) 2009-2011 Simen Svale Skogsrud |
Michael J. Spencer |
2:1df0b61d3b5a | 6 | |
Michael J. Spencer |
2:1df0b61d3b5a | 7 | Grbl is free software: you can redistribute it and/or modify |
Michael J. Spencer |
2:1df0b61d3b5a | 8 | it under the terms of the GNU General Public License as published by |
Michael J. Spencer |
2:1df0b61d3b5a | 9 | the Free Software Foundation, either version 3 of the License, or |
Michael J. Spencer |
2:1df0b61d3b5a | 10 | (at your option) any later version. |
Michael J. Spencer |
2:1df0b61d3b5a | 11 | |
Michael J. Spencer |
2:1df0b61d3b5a | 12 | Grbl is distributed in the hope that it will be useful, |
Michael J. Spencer |
2:1df0b61d3b5a | 13 | but WITHOUT ANY WARRANTY; without even the implied warranty of |
Michael J. Spencer |
2:1df0b61d3b5a | 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
Michael J. Spencer |
2:1df0b61d3b5a | 15 | GNU General Public License for more details. |
Michael J. Spencer |
2:1df0b61d3b5a | 16 | |
Michael J. Spencer |
2:1df0b61d3b5a | 17 | You should have received a copy of the GNU General Public License |
Michael J. Spencer |
2:1df0b61d3b5a | 18 | along with Grbl. If not, see <http://www.gnu.org/licenses/>. |
Michael J. Spencer |
2:1df0b61d3b5a | 19 | */ |
Michael J. Spencer |
2:1df0b61d3b5a | 20 | |
Michael J. Spencer |
2:1df0b61d3b5a | 21 | #ifndef nuts_bolts_h |
Michael J. Spencer |
2:1df0b61d3b5a | 22 | #define nuts_bolts_h |
Michael J. Spencer |
2:1df0b61d3b5a | 23 | |
Michael J. Spencer |
2:1df0b61d3b5a | 24 | #include <string> |
Michael J. Spencer |
2:1df0b61d3b5a | 25 | using std::string; |
Michael J. Spencer |
2:1df0b61d3b5a | 26 | |
Michael J. Spencer |
2:1df0b61d3b5a | 27 | #define X_AXIS 0 |
Michael J. Spencer |
2:1df0b61d3b5a | 28 | #define Y_AXIS 1 |
Michael J. Spencer |
2:1df0b61d3b5a | 29 | #define Z_AXIS 2 |
Michael J. Spencer |
2:1df0b61d3b5a | 30 | |
Michael J. Spencer |
2:1df0b61d3b5a | 31 | #define ALPHA_STEPPER 0 |
Michael J. Spencer |
2:1df0b61d3b5a | 32 | #define BETA_STEPPER 1 |
Michael J. Spencer |
2:1df0b61d3b5a | 33 | #define GAMMA_STEPPER 2 |
Michael J. Spencer |
2:1df0b61d3b5a | 34 | |
Michael J. Spencer |
2:1df0b61d3b5a | 35 | #define clear_vector(a) memset(a, 0, sizeof(a)) |
Michael J. Spencer |
2:1df0b61d3b5a | 36 | #define clear_vector_float(a) memset(a, 0.0F, sizeof(a)) |
Michael J. Spencer |
2:1df0b61d3b5a | 37 | |
Michael J. Spencer |
2:1df0b61d3b5a | 38 | #define confine(value, min, max) (((value) < (min))?(min):(((value) > (max))?(max):(value))) |
Michael J. Spencer |
2:1df0b61d3b5a | 39 | |
Michael J. Spencer |
2:1df0b61d3b5a | 40 | #define dd(...) LPC_GPIO2->FIODIR = 0xffff; LPC_GPIO2->FIOCLR = 0xffff; LPC_GPIO2->FIOSET = __VA_ARGS__ |
Michael J. Spencer |
2:1df0b61d3b5a | 41 | |
Michael J. Spencer |
2:1df0b61d3b5a | 42 | |
Michael J. Spencer |
2:1df0b61d3b5a | 43 | #endif |
Michael J. Spencer |
2:1df0b61d3b5a | 44 |