Repetier-Firmware 0.2
Repetier/Eeprom.h
Go to the documentation of this file.
00001 /*
00002     This file is part of Repetier-Firmware.
00003 
00004     Repetier-Firmware is free software: you can redistribute it and/or modify
00005     it under the terms of the GNU General Public License as published by
00006     the Free Software Foundation, either version 3 of the License, or
00007     (at your option) any later version.
00008 
00009     Foobar is distributed in the hope that it will be useful,
00010     but WITHOUT ANY WARRANTY; without even the implied warranty of
00011     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00012     GNU General Public License for more details.
00013 
00014     You should have received a copy of the GNU General Public License
00015     along with Repetier-Firmware.  If not, see <http://www.gnu.org/licenses/>.
00016 
00017 */
00018 
00019 #ifndef _EEPROM_H
00020 #define _EEPROM_H
00021 
00022 #include <avr/eeprom.h>
00023 
00027 #define EEPROM_OFFSET 0
00028 #define EPR_MAGIC_BYTE 0
00029 #define EPR_ACCELERATION_TYPE 1
00030 #define EPR_XAXIS_STEPS_PER_MM 3
00031 #define EPR_YAXIS_STEPS_PER_MM 7
00032 #define EPR_ZAXIS_STEPS_PER_MM 11
00033 #define EPR_X_MAX_FEEDRATE 15
00034 #define EPR_Y_MAX_FEEDRATE 19
00035 #define EPR_Z_MAX_FEEDRATE 23
00036 #define EPR_X_HOMING_FEEDRATE 27
00037 #define EPR_Y_HOMING_FEEDRATE 31
00038 #define EPR_Z_HOMING_FEEDRATE 35
00039 #define EPR_MAX_JERK 39
00040 #define EPR_OPS_MIN_DISTANCE 43
00041 #define EPR_MAX_ZJERK 47
00042 #define EPR_X_MAX_ACCEL 51
00043 #define EPR_Y_MAX_ACCEL 55
00044 #define EPR_Z_MAX_ACCEL 59
00045 #define EPR_X_MAX_TRAVEL_ACCEL 63
00046 #define EPR_Y_MAX_TRAVEL_ACCEL 67
00047 #define EPR_Z_MAX_TRAVEL_ACCEL 71
00048 #define EPR_BAUDRATE 75
00049 #define EPR_MAX_INACTIVE_TIME 79
00050 #define EPR_STEPPER_INACTIVE_TIME 83
00051 #define EPR_OPS_RETRACT_DISTANCE 87
00052 #define EPR_OPS_RETRACT_BACKSLASH 91
00053 #define EPR_EXTRUDER_SPEED 95
00054 #define EPR_OPS_MOVE_AFTER 99
00055 #define EPR_OPS_MODE 103
00056 
00057 #define EEPROM_EXTRUDER_OFFSET 150
00058 // bytes per extruder needed, leave some space for future development
00059 #define EEPROM_EXTRUDER_LENGTH 60
00060 // Extruder positions relative to extruder start
00061 #define EPR_EXTRUDER_STEPS_PER_MM 0
00062 #define EPR_EXTRUDER_MAX_FEEDRATE 4
00063 // Feedrate from halted extruder in mm/s
00064 #define EPR_EXTRUDER_MAX_START_FEEDRATE 8
00065 // Acceleration in mm/s^2
00066 #define EPR_EXTRUDER_MAX_ACCELERATION 12
00067 #define EPR_EXTRUDER_HEAT_MANAGER 16
00068 #define EPR_EXTRUDER_DRIVE_MAX 17
00069 #define EPR_EXTRUDER_PID_PGAIN 18
00070 #define EPR_EXTRUDER_PID_IGAIN 22
00071 #define EPR_EXTRUDER_PID_DGAIN 26
00072 #define EPR_EXTRUDER_PID_MAX 30
00073 #define EPR_EXTRUDER_X_OFFSET 31
00074 #define EPR_EXTRUDER_Y_OFFSET 35
00075 #define EPR_EXTRUDER_WATCH_PERIOD 39
00076 #define EPR_EXTRUDER_ADVANCE_K 41
00077 
00078 #if EEPROM_MODE!=0
00079 extern inline byte epr_get_byte(uint pos);
00080 extern inline int epr_get_int(uint pos);
00081 extern inline long epr_get_long(uint pos);
00082 extern inline float epr_get_float(uint pos);
00083 
00084 extern inline void epr_set_byte(uint pos,byte value);
00085 extern inline void epr_set_int(uint pos,int value);
00086 extern inline void epr_set_long(uint pos,long value);
00087 extern inline void epr_set_float(uint pos,float value);
00088 #endif
00089 
00090 extern void epr_output_settings();
00091 extern void epr_update(GCode *com);
00092 extern void epr_init();
00093 extern void epr_init_baudrate();
00094 #endif
00095 
 All Data Structures Files Functions Variables Typedefs Friends Defines