Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in
Toggle navigation
M
MarlinKimbra
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
machinery
MarlinKimbra
Commits
766db58b
Commit
766db58b
authored
Jan 14, 2015
by
MagoKimbra
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Add menu for pid
parent
8090e01b
Changes
13
Hide whitespace changes
Inline
Side-by-side
Showing
13 changed files
with
156 additions
and
74 deletions
+156
-74
Configuration.h
MarlinKimbra/Configuration.h
+3
-1
ConfigurationStore.cpp
MarlinKimbra/ConfigurationStore.cpp
+35
-37
Marlin.h
MarlinKimbra/Marlin.h
+19
-0
Marlin_main.cpp
MarlinKimbra/Marlin_main.cpp
+3
-3
language_en.h
MarlinKimbra/language_en.h
+9
-0
language_es.h
MarlinKimbra/language_es.h
+9
-0
language_eu.h
MarlinKimbra/language_eu.h
+9
-0
language_it.h
MarlinKimbra/language_it.h
+9
-0
planner.cpp
MarlinKimbra/planner.cpp
+1
-1
speed_lookuptable.h
MarlinKimbra/speed_lookuptable.h
+4
-4
temperature.cpp
MarlinKimbra/temperature.cpp
+1
-0
ultralcd.cpp
MarlinKimbra/ultralcd.cpp
+53
-27
ultralcd.h
MarlinKimbra/ultralcd.h
+1
-1
No files found.
MarlinKimbra/Configuration.h
View file @
766db58b
...
@@ -671,7 +671,9 @@
...
@@ -671,7 +671,9 @@
#include "Configuration_adv.h"
#include "Configuration_adv.h"
#include "thermistortables.h"
#endif //__CONFIGURATION_H
#endif //__CONFIGURATION_H
MarlinKimbra/ConfigurationStore.cpp
View file @
766db58b
...
@@ -6,24 +6,22 @@
...
@@ -6,24 +6,22 @@
void
_EEPROM_writeData
(
int
&
pos
,
uint8_t
*
value
,
uint8_t
size
)
void
_EEPROM_writeData
(
int
&
pos
,
uint8_t
*
value
,
uint8_t
size
)
{
{
do
do
{
{
eeprom_write_byte
((
unsigned
char
*
)
pos
,
*
value
);
eeprom_write_byte
((
unsigned
char
*
)
pos
,
*
value
);
pos
++
;
pos
++
;
value
++
;
value
++
;
}
}
while
(
--
size
);
while
(
--
size
);
}
}
#define EEPROM_WRITE_VAR(pos, value) _EEPROM_writeData(pos, (uint8_t*)&value, sizeof(value))
#define EEPROM_WRITE_VAR(pos, value) _EEPROM_writeData(pos, (uint8_t*)&value, sizeof(value))
void
_EEPROM_readData
(
int
&
pos
,
uint8_t
*
value
,
uint8_t
size
)
void
_EEPROM_readData
(
int
&
pos
,
uint8_t
*
value
,
uint8_t
size
)
{
{
do
do
{
{
*
value
=
eeprom_read_byte
((
unsigned
char
*
)
pos
);
*
value
=
eeprom_read_byte
((
unsigned
char
*
)
pos
);
pos
++
;
pos
++
;
value
++
;
value
++
;
}
}
while
(
--
size
);
while
(
--
size
);
}
}
#define EEPROM_READ_VAR(pos, value) _EEPROM_readData(pos, (uint8_t*)&value, sizeof(value))
#define EEPROM_READ_VAR(pos, value) _EEPROM_readData(pos, (uint8_t*)&value, sizeof(value))
//======================================================================================
//======================================================================================
...
@@ -453,26 +451,26 @@ void Config_ResetDefault()
...
@@ -453,26 +451,26 @@ void Config_ResetDefault()
//Setting default baudrate for serial
//Setting default baudrate for serial
baudrate
=
BAUDRATE
;
baudrate
=
BAUDRATE
;
float
tmp1
[]
=
DEFAULT_AXIS_STEPS_PER_UNIT
;
const
static
float
tmp1
[]
MARLIN_PROGMEM
=
DEFAULT_AXIS_STEPS_PER_UNIT
;
float
tmp2
[]
=
DEFAULT_MAX_FEEDRATE
;
const
static
float
tmp2
[]
MARLIN_PROGMEM
=
DEFAULT_MAX_FEEDRATE
;
float
tmp3
[]
=
DEFAULT_RETRACTION_MAX_FEEDRATE
;
const
static
float
tmp3
[]
MARLIN_PROGMEM
=
DEFAULT_RETRACTION_MAX_FEEDRATE
;
long
tmp4
[]
=
DEFAULT_MAX_ACCELERATION
;
const
static
long
tmp4
[]
MARLIN_PROGMEM
=
DEFAULT_MAX_ACCELERATION
;
#ifdef PIDTEMP
#ifdef PIDTEMP
float
tmp5
[]
=
DEFAULT_Kp
;
const
static
float
tmp5
[]
MARLIN_PROGMEM
=
DEFAULT_Kp
;
float
tmp6
[]
=
DEFAULT_Ki
;
const
static
float
tmp6
[]
MARLIN_PROGMEM
=
DEFAULT_Ki
;
float
tmp7
[]
=
DEFAULT_Kd
;
const
static
float
tmp7
[]
MARLIN_PROGMEM
=
DEFAULT_Kd
;
#endif // PIDTEMP
#endif // PIDTEMP
for
(
short
i
=
0
;
i
<
7
;
i
++
)
for
(
short
i
=
0
;
i
<
7
;
i
++
)
{
{
axis_steps_per_unit
[
i
]
=
tmp1
[
i
]
;
axis_steps_per_unit
[
i
]
=
pgm_read_float
(
&
tmp1
[
i
])
;
max_feedrate
[
i
]
=
tmp2
[
i
]
;
max_feedrate
[
i
]
=
pgm_read_float
(
&
tmp2
[
i
])
;
max_acceleration_units_per_sq_second
[
i
]
=
tmp4
[
i
]
;
max_acceleration_units_per_sq_second
[
i
]
=
pgm_read_float
(
&
tmp4
[
i
])
;
}
}
for
(
short
i
=
0
;
i
<
4
;
i
++
)
for
(
short
i
=
0
;
i
<
4
;
i
++
)
{
{
max_retraction_feedrate
[
i
]
=
tmp3
[
i
]
;
max_retraction_feedrate
[
i
]
=
pgm_read_float
(
&
tmp3
[
i
])
;
#ifdef SCARA
#ifdef SCARA
axis_scaling
[
i
]
=
1
;
axis_scaling
[
i
]
=
1
;
#endif
#endif
...
@@ -522,13 +520,13 @@ void Config_ResetDefault()
...
@@ -522,13 +520,13 @@ void Config_ResetDefault()
for
(
short
i
=
0
;
i
<
4
;
i
++
)
for
(
short
i
=
0
;
i
<
4
;
i
++
)
{
{
#ifdef SINGLENOZZLE
#ifdef SINGLENOZZLE
Kp
[
i
]
=
tmp5
[
0
]
;
Kp
[
i
]
=
pgm_read_float
(
&
tmp5
[
0
]);
;
Ki
[
i
]
=
scalePID_i
(
tmp6
[
0
]
);
Ki
[
i
]
=
scalePID_i
(
pgm_read_float
(
&
tmp6
[
0
])
);
Kd
[
i
]
=
scalePID_d
(
tmp7
[
0
]
);
Kd
[
i
]
=
scalePID_d
(
pgm_read_float
(
&
tmp7
[
0
])
);
#else
#else
Kp
[
i
]
=
tmp5
[
i
]
;
Kp
[
i
]
=
pgm_read_float
(
&
tmp5
[
i
]);
;
Ki
[
i
]
=
scalePID_i
(
tmp6
[
i
]
);
Ki
[
i
]
=
scalePID_i
(
pgm_read_float
(
&
tmp6
[
i
])
);
Kd
[
i
]
=
scalePID_d
(
tmp7
[
i
]
);
Kd
[
i
]
=
scalePID_d
(
pgm_read_float
(
&
tmp7
[
i
])
);
#endif
#endif
}
}
...
@@ -539,15 +537,15 @@ void Config_ResetDefault()
...
@@ -539,15 +537,15 @@ void Config_ResetDefault()
retract_length
=
RETRACT_LENGTH
;
retract_length
=
RETRACT_LENGTH
;
#if EXTRUDERS > 1
#if EXTRUDERS > 1
retract_length_swap
=
RETRACT_LENGTH_SWAP
;
retract_length_swap
=
RETRACT_LENGTH_SWAP
;
#endif
#endif
//EXTRUDERS > 1
retract_feedrate
=
RETRACT_FEEDRATE
;
retract_feedrate
=
RETRACT_FEEDRATE
;
retract_zlift
=
RETRACT_ZLIFT
;
retract_zlift
=
RETRACT_ZLIFT
;
retract_recover_length
=
RETRACT_RECOVER_LENGTH
;
retract_recover_length
=
RETRACT_RECOVER_LENGTH
;
#if EXTRUDERS > 1
#if EXTRUDERS > 1
retract_recover_length_swap
=
RETRACT_RECOVER_LENGTH_SWAP
;
retract_recover_length_swap
=
RETRACT_RECOVER_LENGTH_SWAP
;
#endif
#endif
//EXTRUDERS > 1
retract_recover_feedrate
=
RETRACT_RECOVER_FEEDRATE
;
retract_recover_feedrate
=
RETRACT_RECOVER_FEEDRATE
;
#endif
#endif
//FWRETRACT
volumetric_enabled
=
false
;
volumetric_enabled
=
false
;
filament_size
[
0
]
=
DEFAULT_NOMINAL_FILAMENT_DIA
;
filament_size
[
0
]
=
DEFAULT_NOMINAL_FILAMENT_DIA
;
...
@@ -557,9 +555,9 @@ void Config_ResetDefault()
...
@@ -557,9 +555,9 @@ void Config_ResetDefault()
filament_size
[
2
]
=
DEFAULT_NOMINAL_FILAMENT_DIA
;
filament_size
[
2
]
=
DEFAULT_NOMINAL_FILAMENT_DIA
;
#if EXTRUDERS > 3
#if EXTRUDERS > 3
filament_size
[
3
]
=
DEFAULT_NOMINAL_FILAMENT_DIA
;
filament_size
[
3
]
=
DEFAULT_NOMINAL_FILAMENT_DIA
;
#endif
#endif
//EXTRUDERS > 3
#endif
#endif
//EXTRUDERS > 2
#endif
#endif
//EXTRUDERS > 1
calculate_volumetric_multipliers
();
calculate_volumetric_multipliers
();
SERIAL_ECHO_START
;
SERIAL_ECHO_START
;
...
...
MarlinKimbra/Marlin.h
View file @
766db58b
...
@@ -41,6 +41,25 @@
...
@@ -41,6 +41,25 @@
#include "HardwareSerial.h"
#include "HardwareSerial.h"
#endif
#endif
#ifdef __GNUC__
#ifndef GCC_VERSION2
#define GCC_VERSION2 (__GNUC__ * 10000 + __GNUC_MINOR__ * 100 + __GNUC_PATCHLEVEL__)
#endif
#if GCC_VERSION2 < 40602 // Test for GCC < 4.6.2
#ifdef PROGMEM
#define MARLIN_PROGMEM __attribute__((section(".progmem.data")))
#ifdef PSTR
#undef PSTR
#define PSTR(s) (__extension__({static const prog_char __c[] MARLIN_PROGMEM = (s); &__c[0];})) // Copied from pgmspace.h in avr-libc source
#endif
#endif
#endif
#endif
#include "MarlinSerial.h"
#include "MarlinSerial.h"
#ifndef cbi
#ifndef cbi
...
...
MarlinKimbra/Marlin_main.cpp
View file @
766db58b
...
@@ -403,8 +403,8 @@ bool cancel_heatup = false ;
...
@@ -403,8 +403,8 @@ bool cancel_heatup = false ;
int
laser_ttl_modulation
=
0
;
int
laser_ttl_modulation
=
0
;
#endif
#endif
const
char
errormagic
[]
PROGMEM
=
"Error:"
;
const
prog_char
errormagic
[]
MARLIN_
PROGMEM
=
"Error:"
;
const
char
echomagic
[]
PROGMEM
=
"echo:"
;
const
prog_char
echomagic
[]
MARLIN_
PROGMEM
=
"echo:"
;
//===========================================================================
//===========================================================================
//=============================Private Variables=============================
//=============================Private Variables=============================
...
@@ -971,7 +971,7 @@ DEFINE_PGM_READ_ANY(float, float);
...
@@ -971,7 +971,7 @@ DEFINE_PGM_READ_ANY(float, float);
DEFINE_PGM_READ_ANY
(
signed
char
,
byte
);
DEFINE_PGM_READ_ANY
(
signed
char
,
byte
);
#define XYZ_CONSTS_FROM_CONFIG(type, array, CONFIG) \
#define XYZ_CONSTS_FROM_CONFIG(type, array, CONFIG) \
static const
PROGMEM type array##_P[3]
= \
static const
type array##_P[3] MARLIN_PROGMEM
= \
{ X_##CONFIG, Y_##CONFIG, Z_##CONFIG }; \
{ X_##CONFIG, Y_##CONFIG, Z_##CONFIG }; \
static inline type array(int axis) \
static inline type array(int axis) \
{ return pgm_read_any(&array##_P[axis]); }
{ return pgm_read_any(&array##_P[axis]); }
...
...
MarlinKimbra/language_en.h
View file @
766db58b
...
@@ -79,6 +79,15 @@
...
@@ -79,6 +79,15 @@
#define MSG_PID_P "PID-P"
#define MSG_PID_P "PID-P"
#define MSG_PID_I "PID-I"
#define MSG_PID_I "PID-I"
#define MSG_PID_D "PID-D"
#define MSG_PID_D "PID-D"
#define MSG_PID_P1 "PID-P E2"
#define MSG_PID_I1 "PID-I E2"
#define MSG_PID_D1 "PID-D E2"
#define MSG_PID_P2 "PID-P E3"
#define MSG_PID_I2 "PID-I E3"
#define MSG_PID_D2 "PID-D E3"
#define MSG_PID_P3 "PID-P E4"
#define MSG_PID_I3 "PID-I E4"
#define MSG_PID_D3 "PID-D E4"
#define MSG_ACC "Accel"
#define MSG_ACC "Accel"
#define MSG_VXY_JERK "Vxy-jerk"
#define MSG_VXY_JERK "Vxy-jerk"
#define MSG_VZ_JERK "Vz-jerk"
#define MSG_VZ_JERK "Vz-jerk"
...
...
MarlinKimbra/language_es.h
View file @
766db58b
...
@@ -66,6 +66,15 @@
...
@@ -66,6 +66,15 @@
#define MSG_PID_P "PID-P"
#define MSG_PID_P "PID-P"
#define MSG_PID_I "PID-I"
#define MSG_PID_I "PID-I"
#define MSG_PID_D "PID-D"
#define MSG_PID_D "PID-D"
#define MSG_PID_P1 "PID-P E2"
#define MSG_PID_I1 "PID-I E2"
#define MSG_PID_D1 "PID-D E2"
#define MSG_PID_P2 "PID-P E3"
#define MSG_PID_I2 "PID-I E3"
#define MSG_PID_D2 "PID-D E3"
#define MSG_PID_P3 "PID-P E4"
#define MSG_PID_I3 "PID-I E4"
#define MSG_PID_D3 "PID-D E4"
#define MSG_ACC "Acel"
#define MSG_ACC "Acel"
#define MSG_VXY_JERK "Vxy-jerk"
#define MSG_VXY_JERK "Vxy-jerk"
#define MSG_VZ_JERK "Vz-jerk"
#define MSG_VZ_JERK "Vz-jerk"
...
...
MarlinKimbra/language_eu.h
View file @
766db58b
...
@@ -66,6 +66,15 @@
...
@@ -66,6 +66,15 @@
#define MSG_PID_P "PID-P"
#define MSG_PID_P "PID-P"
#define MSG_PID_I "PID-I"
#define MSG_PID_I "PID-I"
#define MSG_PID_D "PID-D"
#define MSG_PID_D "PID-D"
#define MSG_PID_P1 "PID-P E2"
#define MSG_PID_I1 "PID-I E2"
#define MSG_PID_D1 "PID-D E2"
#define MSG_PID_P2 "PID-P E3"
#define MSG_PID_I2 "PID-I E3"
#define MSG_PID_D2 "PID-D E3"
#define MSG_PID_P3 "PID-P E4"
#define MSG_PID_I3 "PID-I E4"
#define MSG_PID_D3 "PID-D E4"
#define MSG_ACC "Azelerazioa"
#define MSG_ACC "Azelerazioa"
#define MSG_VXY_JERK "Vxy-astindua"
#define MSG_VXY_JERK "Vxy-astindua"
#define MSG_VZ_JERK "Vz-astindua"
#define MSG_VZ_JERK "Vz-astindua"
...
...
MarlinKimbra/language_it.h
View file @
766db58b
...
@@ -79,6 +79,15 @@
...
@@ -79,6 +79,15 @@
#define MSG_PID_P "PID-P"
#define MSG_PID_P "PID-P"
#define MSG_PID_I "PID-I"
#define MSG_PID_I "PID-I"
#define MSG_PID_D "PID-D"
#define MSG_PID_D "PID-D"
#define MSG_PID_P1 "PID-P E2"
#define MSG_PID_I1 "PID-I E2"
#define MSG_PID_D1 "PID-D E2"
#define MSG_PID_P2 "PID-P E3"
#define MSG_PID_I2 "PID-I E3"
#define MSG_PID_D2 "PID-D E3"
#define MSG_PID_P3 "PID-P E4"
#define MSG_PID_I3 "PID-I E4"
#define MSG_PID_D3 "PID-D E4"
#define MSG_ACC "Accel"
#define MSG_ACC "Accel"
#define MSG_VXY_JERK "Vxy-jerk"
#define MSG_VXY_JERK "Vxy-jerk"
#define MSG_VZ_JERK "Vz-jerk"
#define MSG_VZ_JERK "Vz-jerk"
...
...
MarlinKimbra/planner.cpp
View file @
766db58b
...
@@ -81,7 +81,7 @@ unsigned long axis_steps_per_sqr_second[7];
...
@@ -81,7 +81,7 @@ unsigned long axis_steps_per_sqr_second[7];
matrix_3x3
plan_bed_level_matrix
=
{
matrix_3x3
plan_bed_level_matrix
=
{
1.0
,
0.0
,
0.0
,
1.0
,
0.0
,
0.0
,
0.0
,
1.0
,
0.0
,
0.0
,
1.0
,
0.0
,
0.0
,
0.0
,
1.0
,
0.0
,
0.0
,
1.0
};
};
#endif // #ifdef ENABLE_AUTO_BED_LEVELING
#endif // #ifdef ENABLE_AUTO_BED_LEVELING
...
...
MarlinKimbra/speed_lookuptable.h
View file @
766db58b
...
@@ -5,7 +5,7 @@
...
@@ -5,7 +5,7 @@
#if F_CPU == 16000000
#if F_CPU == 16000000
const
uint16_t
speed_lookuptable_fast
[
256
][
2
]
PROGMEM
=
{
\
const
prog_uint16_t
speed_lookuptable_fast
[
256
][
2
]
MARLIN_
PROGMEM
=
{
\
{
62500
,
55556
},
{
6944
,
3268
},
{
3676
,
1176
},
{
2500
,
607
},
{
1893
,
369
},
{
1524
,
249
},
{
1275
,
179
},
{
1096
,
135
},
{
62500
,
55556
},
{
6944
,
3268
},
{
3676
,
1176
},
{
2500
,
607
},
{
1893
,
369
},
{
1524
,
249
},
{
1275
,
179
},
{
1096
,
135
},
{
961
,
105
},
{
856
,
85
},
{
771
,
69
},
{
702
,
58
},
{
644
,
49
},
{
595
,
42
},
{
553
,
37
},
{
516
,
32
},
{
961
,
105
},
{
856
,
85
},
{
771
,
69
},
{
702
,
58
},
{
644
,
49
},
{
595
,
42
},
{
553
,
37
},
{
516
,
32
},
{
484
,
28
},
{
456
,
25
},
{
431
,
23
},
{
408
,
20
},
{
388
,
19
},
{
369
,
16
},
{
353
,
16
},
{
337
,
14
},
{
484
,
28
},
{
456
,
25
},
{
431
,
23
},
{
408
,
20
},
{
388
,
19
},
{
369
,
16
},
{
353
,
16
},
{
337
,
14
},
...
@@ -40,7 +40,7 @@ const uint16_t speed_lookuptable_fast[256][2] PROGMEM = {\
...
@@ -40,7 +40,7 @@ const uint16_t speed_lookuptable_fast[256][2] PROGMEM = {\
{
31
,
0
},
{
31
,
0
},
{
31
,
0
},
{
31
,
1
},
{
30
,
0
},
{
30
,
0
},
{
30
,
0
},
{
30
,
0
}
{
31
,
0
},
{
31
,
0
},
{
31
,
0
},
{
31
,
1
},
{
30
,
0
},
{
30
,
0
},
{
30
,
0
},
{
30
,
0
}
};
};
const
uint16_t
speed_lookuptable_slow
[
256
][
2
]
PROGMEM
=
{
\
const
prog_uint16_t
speed_lookuptable_slow
[
256
][
2
]
MARLIN_
PROGMEM
=
{
\
{
62500
,
12500
},
{
50000
,
8334
},
{
41666
,
5952
},
{
35714
,
4464
},
{
31250
,
3473
},
{
27777
,
2777
},
{
25000
,
2273
},
{
22727
,
1894
},
{
62500
,
12500
},
{
50000
,
8334
},
{
41666
,
5952
},
{
35714
,
4464
},
{
31250
,
3473
},
{
27777
,
2777
},
{
25000
,
2273
},
{
22727
,
1894
},
{
20833
,
1603
},
{
19230
,
1373
},
{
17857
,
1191
},
{
16666
,
1041
},
{
15625
,
920
},
{
14705
,
817
},
{
13888
,
731
},
{
13157
,
657
},
{
20833
,
1603
},
{
19230
,
1373
},
{
17857
,
1191
},
{
16666
,
1041
},
{
15625
,
920
},
{
14705
,
817
},
{
13888
,
731
},
{
13157
,
657
},
{
12500
,
596
},
{
11904
,
541
},
{
11363
,
494
},
{
10869
,
453
},
{
10416
,
416
},
{
10000
,
385
},
{
9615
,
356
},
{
9259
,
331
},
{
12500
,
596
},
{
11904
,
541
},
{
11363
,
494
},
{
10869
,
453
},
{
10416
,
416
},
{
10000
,
385
},
{
9615
,
356
},
{
9259
,
331
},
...
@@ -77,7 +77,7 @@ const uint16_t speed_lookuptable_slow[256][2] PROGMEM = {\
...
@@ -77,7 +77,7 @@ const uint16_t speed_lookuptable_slow[256][2] PROGMEM = {\
#elif F_CPU == 20000000
#elif F_CPU == 20000000
const
uint16_t
speed_lookuptable_fast
[
256
][
2
]
PROGMEM
=
{
const
uint16_t
speed_lookuptable_fast
[
256
][
2
]
MARLIN_
PROGMEM
=
{
{
62500
,
54055
},
{
8445
,
3917
},
{
4528
,
1434
},
{
3094
,
745
},
{
2349
,
456
},
{
1893
,
307
},
{
1586
,
222
},
{
1364
,
167
},
{
62500
,
54055
},
{
8445
,
3917
},
{
4528
,
1434
},
{
3094
,
745
},
{
2349
,
456
},
{
1893
,
307
},
{
1586
,
222
},
{
1364
,
167
},
{
1197
,
131
},
{
1066
,
105
},
{
961
,
86
},
{
875
,
72
},
{
803
,
61
},
{
742
,
53
},
{
689
,
45
},
{
644
,
40
},
{
1197
,
131
},
{
1066
,
105
},
{
961
,
86
},
{
875
,
72
},
{
803
,
61
},
{
742
,
53
},
{
689
,
45
},
{
644
,
40
},
{
604
,
35
},
{
569
,
32
},
{
537
,
28
},
{
509
,
25
},
{
484
,
23
},
{
461
,
21
},
{
440
,
19
},
{
421
,
17
},
{
604
,
35
},
{
569
,
32
},
{
537
,
28
},
{
509
,
25
},
{
484
,
23
},
{
461
,
21
},
{
440
,
19
},
{
421
,
17
},
...
@@ -112,7 +112,7 @@ const uint16_t speed_lookuptable_fast[256][2] PROGMEM = {
...
@@ -112,7 +112,7 @@ const uint16_t speed_lookuptable_fast[256][2] PROGMEM = {
{
39
,
0
},
{
39
,
0
},
{
39
,
1
},
{
38
,
0
},
{
38
,
0
},
{
38
,
0
},
{
38
,
0
},
{
38
,
0
},
{
39
,
0
},
{
39
,
0
},
{
39
,
1
},
{
38
,
0
},
{
38
,
0
},
{
38
,
0
},
{
38
,
0
},
{
38
,
0
},
};
};
const
uint16_t
speed_lookuptable_slow
[
256
][
2
]
PROGMEM
=
{
const
uint16_t
speed_lookuptable_slow
[
256
][
2
]
MARLIN_
PROGMEM
=
{
{
62500
,
10417
},
{
52083
,
7441
},
{
44642
,
5580
},
{
39062
,
4340
},
{
34722
,
3472
},
{
31250
,
2841
},
{
28409
,
2368
},
{
26041
,
2003
},
{
62500
,
10417
},
{
52083
,
7441
},
{
44642
,
5580
},
{
39062
,
4340
},
{
34722
,
3472
},
{
31250
,
2841
},
{
28409
,
2368
},
{
26041
,
2003
},
{
24038
,
1717
},
{
22321
,
1488
},
{
20833
,
1302
},
{
19531
,
1149
},
{
18382
,
1021
},
{
17361
,
914
},
{
16447
,
822
},
{
15625
,
745
},
{
24038
,
1717
},
{
22321
,
1488
},
{
20833
,
1302
},
{
19531
,
1149
},
{
18382
,
1021
},
{
17361
,
914
},
{
16447
,
822
},
{
15625
,
745
},
{
14880
,
676
},
{
14204
,
618
},
{
13586
,
566
},
{
13020
,
520
},
{
12500
,
481
},
{
12019
,
445
},
{
11574
,
414
},
{
11160
,
385
},
{
14880
,
676
},
{
14204
,
618
},
{
13586
,
566
},
{
13020
,
520
},
{
12500
,
481
},
{
12019
,
445
},
{
11574
,
414
},
{
11160
,
385
},
...
...
MarlinKimbra/temperature.cpp
View file @
766db58b
...
@@ -33,6 +33,7 @@
...
@@ -33,6 +33,7 @@
#include "ultralcd.h"
#include "ultralcd.h"
#include "temperature.h"
#include "temperature.h"
#include "watchdog.h"
#include "watchdog.h"
#include "thermistortables.h"
#include "Sd2PinMap.h"
#include "Sd2PinMap.h"
...
...
MarlinKimbra/ultralcd.cpp
View file @
766db58b
...
@@ -979,50 +979,76 @@ static void lcd_config_menu()
...
@@ -979,50 +979,76 @@ static void lcd_config_menu()
static
void
lcd_control_temperature_menu
()
static
void
lcd_control_temperature_menu
()
{
{
#ifdef PIDTEMP
START_MENU
();
// set up temp variables - undo the default scaling
MENU_ITEM
(
back
,
MSG_CONTROL
,
lcd_control_menu
);
raw_Ki
=
unscalePID_i
(
Ki
[
active_extruder
]);
raw_Kd
=
unscalePID_d
(
Kd
[
active_extruder
]);
#endif
START_MENU
();
MENU_ITEM
(
back
,
MSG_CONTROL
,
lcd_control_menu
);
#if TEMP_SENSOR_0 != 0
#if TEMP_SENSOR_0 != 0
MENU_ITEM_EDIT
(
int3
,
MSG_NOZZLE
,
&
target_temperature
[
0
],
0
,
HEATER_0_MAXTEMP
-
15
);
MENU_ITEM_EDIT
(
int3
,
MSG_NOZZLE
,
&
target_temperature
[
0
],
0
,
HEATER_0_MAXTEMP
-
15
);
#endif
#endif
#ifndef SINGLENOZZLE
#ifndef SINGLENOZZLE
#if TEMP_SENSOR_1 != 0
#if TEMP_SENSOR_1 != 0
MENU_ITEM_EDIT
(
int3
,
MSG_NOZZLE1
,
&
target_temperature
[
1
],
0
,
HEATER_1_MAXTEMP
-
15
);
MENU_ITEM_EDIT
(
int3
,
MSG_NOZZLE1
,
&
target_temperature
[
1
],
0
,
HEATER_1_MAXTEMP
-
15
);
#endif
#endif
#if TEMP_SENSOR_2 != 0
#if TEMP_SENSOR_2 != 0
MENU_ITEM_EDIT
(
int3
,
MSG_NOZZLE2
,
&
target_temperature
[
2
],
0
,
HEATER_2_MAXTEMP
-
15
);
MENU_ITEM_EDIT
(
int3
,
MSG_NOZZLE2
,
&
target_temperature
[
2
],
0
,
HEATER_2_MAXTEMP
-
15
);
#endif
#endif
#if TEMP_SENSOR_3 != 0
#if TEMP_SENSOR_3 != 0
MENU_ITEM_EDIT
(
int3
,
MSG_NOZZLE3
,
&
target_temperature
[
3
],
0
,
HEATER_3_MAXTEMP
-
15
);
MENU_ITEM_EDIT
(
int3
,
MSG_NOZZLE3
,
&
target_temperature
[
3
],
0
,
HEATER_3_MAXTEMP
-
15
);
#endif
#endif
#endif // !SINGLENOZZLE
#endif // !SINGLENOZZLE
#if TEMP_SENSOR_BED != 0
#if TEMP_SENSOR_BED != 0
MENU_ITEM_EDIT
(
int3
,
MSG_BED
,
&
target_temperature_bed
,
0
,
BED_MAXTEMP
-
15
);
MENU_ITEM_EDIT
(
int3
,
MSG_BED
,
&
target_temperature_bed
,
0
,
BED_MAXTEMP
-
15
);
#endif
#endif
MENU_ITEM_EDIT
(
int3
,
MSG_FAN_SPEED
,
&
fanSpeed
,
0
,
255
);
MENU_ITEM_EDIT
(
int3
,
MSG_FAN_SPEED
,
&
fanSpeed
,
0
,
255
);
#if defined AUTOTEMP && (TEMP_SENSOR_0 != 0)
#if defined AUTOTEMP && (TEMP_SENSOR_0 != 0)
MENU_ITEM_EDIT
(
bool
,
MSG_AUTOTEMP
,
&
autotemp_enabled
);
MENU_ITEM_EDIT
(
bool
,
MSG_AUTOTEMP
,
&
autotemp_enabled
);
MENU_ITEM_EDIT
(
float3
,
MSG_MIN
,
&
autotemp_min
,
0
,
HEATER_0_MAXTEMP
-
15
);
MENU_ITEM_EDIT
(
float3
,
MSG_MIN
,
&
autotemp_min
,
0
,
HEATER_0_MAXTEMP
-
15
);
MENU_ITEM_EDIT
(
float3
,
MSG_MAX
,
&
autotemp_max
,
0
,
HEATER_0_MAXTEMP
-
15
);
MENU_ITEM_EDIT
(
float3
,
MSG_MAX
,
&
autotemp_max
,
0
,
HEATER_0_MAXTEMP
-
15
);
MENU_ITEM_EDIT
(
float32
,
MSG_FACTOR
,
&
autotemp_factor
,
0.0
,
1.0
);
MENU_ITEM_EDIT
(
float32
,
MSG_FACTOR
,
&
autotemp_factor
,
0.0
,
1.0
);
#endif
#endif
#ifdef PIDTEMP
#ifdef PIDTEMP
MENU_ITEM_EDIT
(
float52
,
MSG_PID_P
,
&
Kp
[
active_extruder
],
1
,
9990
);
// set up temp variables - undo the default scaling
// i is typically a small value so allows values below 1
raw_Ki
=
unscalePID_i
(
Ki
[
0
]);
MENU_ITEM_EDIT_CALLBACK
(
float52
,
MSG_PID_I
,
&
raw_Ki
,
0.01
,
9990
,
copy_and_scalePID_i
);
raw_Kd
=
unscalePID_d
(
Kd
[
0
]);
MENU_ITEM_EDIT_CALLBACK
(
float52
,
MSG_PID_D
,
&
raw_Kd
,
1
,
9990
,
copy_and_scalePID_d
);
MENU_ITEM_EDIT
(
float52
,
MSG_PID_P
,
&
Kp
[
0
],
1
,
9990
);
#endif//PIDTEMP
// i is typically a small value so allows values below 1
MENU_ITEM
(
submenu
,
MSG_PREHEAT_PLA_SETTINGS
,
lcd_control_temperature_preheat_pla_settings_menu
);
MENU_ITEM_EDIT_CALLBACK
(
float52
,
MSG_PID_I
,
&
raw_Ki
,
0.01
,
9990
,
copy_and_scalePID_i
);
MENU_ITEM
(
submenu
,
MSG_PREHEAT_ABS_SETTINGS
,
lcd_control_temperature_preheat_abs_settings_menu
);
MENU_ITEM_EDIT_CALLBACK
(
float52
,
MSG_PID_D
,
&
raw_Kd
,
1
,
9990
,
copy_and_scalePID_d
);
MENU_ITEM
(
submenu
,
MSG_PREHEAT_GUM_SETTINGS
,
lcd_control_temperature_preheat_gum_settings_menu
);
#ifndef SINGLENOZZLE
END_MENU
();
#if EXTRUDERS > 1
// set up temp variables - undo the default scaling
raw_Ki
=
unscalePID_i
(
Ki
[
1
]);
raw_Kd
=
unscalePID_d
(
Kd
[
1
]);
MENU_ITEM_EDIT
(
float52
,
MSG_PID_P1
,
&
Kp
[
1
],
1
,
9990
);
// i is typically a small value so allows values below 1
MENU_ITEM_EDIT_CALLBACK
(
float52
,
MSG_PID_I1
,
&
raw_Ki
,
0.01
,
9990
,
copy_and_scalePID_i
);
MENU_ITEM_EDIT_CALLBACK
(
float52
,
MSG_PID_D1
,
&
raw_Kd
,
1
,
9990
,
copy_and_scalePID_d
);
#endif //EXTRUDERS > 1
#if EXTRUDERS > 2
// set up temp variables - undo the default scaling
raw_Ki
=
unscalePID_i
(
Ki
[
2
]);
raw_Kd
=
unscalePID_d
(
Kd
[
2
]);
MENU_ITEM_EDIT
(
float52
,
MSG_PID_P2
,
&
Kp
[
2
],
1
,
9990
);
// i is typically a small value so allows values below 1
MENU_ITEM_EDIT_CALLBACK
(
float52
,
MSG_PID_I2
,
&
raw_Ki
,
0.01
,
9990
,
copy_and_scalePID_i
);
MENU_ITEM_EDIT_CALLBACK
(
float52
,
MSG_PID_D2
,
&
raw_Kd
,
1
,
9990
,
copy_and_scalePID_d
);
#endif //EXTRUDERS > 2
#if EXTRUDERS > 3
// set up temp variables - undo the default scaling
raw_Ki
=
unscalePID_i
(
Ki
[
3
]);
raw_Kd
=
unscalePID_d
(
Kd
[
3
]);
MENU_ITEM_EDIT
(
float52
,
MSG_PID_P2
,
&
Kp
[
3
],
1
,
9990
);
// i is typically a small value so allows values below 1
MENU_ITEM_EDIT_CALLBACK
(
float52
,
MSG_PID_I3
,
&
raw_Ki
,
0.01
,
9990
,
copy_and_scalePID_i
);
MENU_ITEM_EDIT_CALLBACK
(
float52
,
MSG_PID_D3
,
&
raw_Kd
,
1
,
9990
,
copy_and_scalePID_d
);
#endif //EXTRUDERS > 2
#endif //SINGLENOZZLE
#endif //PIDTEMP
MENU_ITEM
(
submenu
,
MSG_PREHEAT_PLA_SETTINGS
,
lcd_control_temperature_preheat_pla_settings_menu
);
MENU_ITEM
(
submenu
,
MSG_PREHEAT_ABS_SETTINGS
,
lcd_control_temperature_preheat_abs_settings_menu
);
MENU_ITEM
(
submenu
,
MSG_PREHEAT_GUM_SETTINGS
,
lcd_control_temperature_preheat_gum_settings_menu
);
END_MENU
();
}
}
static
void
lcd_control_temperature_preheat_pla_settings_menu
()
static
void
lcd_control_temperature_preheat_pla_settings_menu
()
...
...
MarlinKimbra/ultralcd.h
View file @
766db58b
...
@@ -53,7 +53,7 @@
...
@@ -53,7 +53,7 @@
#ifdef FILAMENT_LCD_DISPLAY
#ifdef FILAMENT_LCD_DISPLAY
extern
unsigned
long
message_millis
;
extern
unsigned
long
message_millis
;
#endif
#endif
void
lcd_buzz
(
long
duration
,
uint16_t
freq
);
void
lcd_buzz
(
long
duration
,
uint16_t
freq
);
bool
lcd_clicked
();
bool
lcd_clicked
();
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment