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
7e90c0c1
Commit
7e90c0c1
authored
Jan 30, 2015
by
MagoKimbra
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Update Pins.h
parent
b29c08cd
Changes
6
Show whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
776 additions
and
191 deletions
+776
-191
Marlin_main.cpp
MarlinKimbra/Marlin_main.cpp
+68
-79
boards.h
MarlinKimbra/boards.h
+2
-2
language.h
MarlinKimbra/language.h
+0
-1
pins.h
MarlinKimbra/pins.h
+695
-93
ultralcd.cpp
MarlinKimbra/ultralcd.cpp
+4
-8
ultralcd_implementation_hitachi_HD44780.h
MarlinKimbra/ultralcd_implementation_hitachi_HD44780.h
+7
-8
No files found.
MarlinKimbra/Marlin_main.cpp
View file @
7e90c0c1
...
...
@@ -49,20 +49,20 @@
#include "math.h"
#ifdef BLINKM
#include "BlinkM.h"
#include "Wire.h"
#include "BlinkM.h"
#include "Wire.h"
#endif
#if NUM_SERVOS > 0
#include "Servo.h"
#include "Servo.h"
#endif
#if defined(DIGIPOTSS_PIN) && DIGIPOTSS_PIN > -1
#include <SPI.h>
#include <SPI.h>
#endif
#ifdef FIRMWARE_TEST
#include "firmware_test.h"
#include "firmware_test.h"
#endif
// look here for descriptions of G-codes: http://linuxcnc.org/handbook/gcode/g-code.html
...
...
@@ -172,10 +172,10 @@
// M405 - Turn on Filament Sensor extrusion control. Optional D<delay in cm> to set delay in centimeters between sensor and extruder
// M406 - Turn off Filament Sensor extrusion control
// M407 - Displays measured filament diameter
// M500 -
stores
parameters in EEPROM
// M501 -
reads
parameters from EEPROM (if you need reset them after you changed them temporarily).
// M502 -
reverts
to the default "factory settings". You still need to store them in EEPROM afterwards if you want to.
// M503 -
print the current settings (from memory not from EEPROM)
// M500 -
Store
parameters in EEPROM
// M501 -
Read
parameters from EEPROM (if you need reset them after you changed them temporarily).
// M502 -
Revert
to the default "factory settings". You still need to store them in EEPROM afterwards if you want to.
// M503 -
Print the current settings (from memory not from EEPROM). Use S0 to leave off headings.
// M540 - Use S[0|1] to enable or disable the stop SD card print on endstop hit (requires ABORT_ON_ENDSTOP_HIT_FEATURE_ENABLED)
// M600 - Pause for filament change X[pos] Y[pos] Z[relative lift] E[initial retract] L[later retract distance for removal]
// M605 - Set dual x-carriage movement mode: S<mode> [ X<duplication x-offset> R<duplication temp offset> ]
...
...
@@ -198,21 +198,11 @@
// M997 - NPR2 Color rotate
// M999 - Restart after being stopped by error
//Stepper Movement Variables
//===========================================================================
//=============================imported variables============================
//===========================================================================
//===========================================================================
//=============================public variables=============================
//===========================================================================
unsigned
long
baudrate
;
#ifdef SDSUPPORT
CardReader
card
;
CardReader
card
;
#endif
unsigned
long
baudrate
;
float
homing_feedrate
[]
=
HOMING_FEEDRATE
;
bool
axis_known_position
[
3
]
=
{
false
,
false
,
false
};
...
...
@@ -229,10 +219,10 @@ float zprobe_zoffset;
#endif // No Delta
bool
axis_relative_modes
[]
=
AXIS_RELATIVE_MODES
;
int
feedmultiply
=
100
;
//100->1 200->2
int
feedmultiply
=
100
;
//100->1 200->2
int
saved_feedmultiply
;
int
extrudemultiply
=
100
;
//100->1 200->2
int
extruder_multiply
[
EXTRUDERS
]
=
{
100
int
extrudemultiply
=
100
;
//100->1 200->2
int
extruder_multiply
[
EXTRUDERS
]
=
{
100
#if EXTRUDERS > 1
,
100
#if EXTRUDERS > 2
...
...
@@ -267,16 +257,16 @@ float volumetric_multiplier[EXTRUDERS] = {1.0
#endif
};
float
current_position
[
NUM_AXIS
]
=
{
0.0
,
0.0
,
0.0
,
0.0
};
float
destination
[
NUM_AXIS
]
=
{
0.0
,
0.0
,
0.0
,
0.0
};
float
add_homing
[
3
]
=
{
0
,
0
,
0
};
float
destination
[
NUM_AXIS
]
=
{
0.0
,
0.0
,
0.0
,
0.0
};
float
add_homing
[
3
]
=
{
0
,
0
,
0
};
#ifdef NPR2
int
old_color
=
99
;
#endif // NPR2
#ifdef DELTA
float
endstop_adj
[
3
]
=
{
0
,
0
,
0
};
float
tower_adj
[
6
]
=
{
0
,
0
,
0
,
0
,
0
,
0
};
float
endstop_adj
[
3
]
=
{
0
,
0
,
0
};
float
tower_adj
[
6
]
=
{
0
,
0
,
0
,
0
,
0
,
0
};
float
delta_radius
;
// = DEFAULT_delta_radius;
float
delta_diagonal_rod
;
// = DEFAULT_DELTA_DIAGONAL_ROD;
float
DELTA_DIAGONAL_ROD_2
;
...
...
@@ -288,18 +278,18 @@ float delta_tower3_x, delta_tower3_y;
float
base_max_pos
[
3
]
=
{
X_MAX_POS
,
Y_MAX_POS
,
Z_MAX_POS
};
float
base_home_pos
[
3
]
=
{
X_HOME_POS
,
Y_HOME_POS
,
Z_HOME_POS
};
float
max_length
[
3
]
=
{
X_MAX_LENGTH
,
Y_MAX_LENGTH
,
Z_MAX_LENGTH
};
float
saved_position
[
3
]
=
{
0.0
,
0.0
,
0.0
};
float
saved_position
[
3
]
=
{
0.0
,
0.0
,
0.0
};
float
saved_positions
[
7
][
3
]
=
{
{
0
,
0
,
0
},
{
0
,
0
,
0
},
{
0
,
0
,
0
},
{
0
,
0
,
0
},
{
0
,
0
,
0
},
{
0
,
0
,
0
},
{
0
,
0
,
0
},
{
0
,
0
,
0
},
{
0
,
0
,
0
},
{
0
,
0
,
0
},
{
0
,
0
,
0
},
{
0
,
0
,
0
},
{
0
,
0
,
0
},
{
0
,
0
,
0
},
};
float
delta
[
3
]
=
{
0.0
,
0.0
,
0.0
};
float
delta_tmp
[
3
]
=
{
0.0
,
0.0
,
0.0
};
float
delta
[
3
]
=
{
0.0
,
0.0
,
0.0
};
float
delta_tmp
[
3
]
=
{
0.0
,
0.0
,
0.0
};
#endif // DELTA
float
min_pos
[
3
]
=
{
X_MIN_POS
,
Y_MIN_POS
,
Z_MIN_POS
};
...
...
@@ -327,19 +317,20 @@ uint8_t active_driver = 0;
uint8_t
debugLevel
=
0
;
int
fanSpeed
=
0
;
int
fanSpeed
=
0
;
#ifdef SERVO_ENDSTOPS && (NUM_SERVOS > 0)
int
servo_endstops
[]
=
SERVO_ENDSTOPS
;
int
servo_endstop_angles
[]
=
SERVO_ENDSTOP_ANGLES
;
#endif
#ifdef BARICUDA
int
ValvePressure
=
0
;
int
EtoPPressure
=
0
;
int
ValvePressure
=
0
;
int
EtoPPressure
=
0
;
#endif
#ifdef FWRETRACT
bool
autoretract_enabled
=
false
;
bool
retracted
[
EXTRUDERS
]
=
{
false
bool
autoretract_enabled
=
false
;
bool
retracted
[
EXTRUDERS
]
=
{
false
#if EXTRUDERS > 1
,
false
#if EXTRUDERS > 2
...
...
@@ -350,7 +341,7 @@ int fanSpeed=0;
#endif
#endif
};
bool
retracted_swap
[
EXTRUDERS
]
=
{
false
bool
retracted_swap
[
EXTRUDERS
]
=
{
false
#if EXTRUDERS > 1
,
false
#if EXTRUDERS > 2
...
...
@@ -369,21 +360,22 @@ int fanSpeed=0;
float
retract_recover_length
=
RETRACT_RECOVER_LENGTH
;
float
retract_recover_length_swap
=
RETRACT_RECOVER_LENGTH_SWAP
;
float
retract_recover_feedrate
=
RETRACT_RECOVER_FEEDRATE
;
#endif // FWRETRACT
#ifdef ULTIPANEL
#ifdef PS_DEFAULT_OFF
bool
powersupply
=
false
;
#else
bool
powersupply
=
true
;
#endif
#endif //
ULTIPANEL
#ifdef PS_DEFAULT_OFF
bool
powersupply
=
false
;
#else
bool
powersupply
=
true
;
#endif
#endif //ULTIPANEL
#ifdef SCARA // Build size scaling
float
axis_scaling
[
3
]
=
{
1
,
1
,
1
};
// Build size scaling, default to 1
#endif //
SCARA
#endif //
SCARA
bool
cancel_heatup
=
false
;
bool
cancel_heatup
=
false
;
#ifdef FILAMENT_SENSOR
//Variables for Filament Sensor input
...
...
@@ -398,7 +390,7 @@ bool cancel_heatup = false ;
#endif
#ifdef LASERBEAM
int
laser_ttl_modulation
=
0
;
int
laser_ttl_modulation
=
0
;
#endif
const
char
errormagic
[]
PROGMEM
=
"Error:"
;
...
...
@@ -408,20 +400,20 @@ const char echomagic[] PROGMEM = "echo:";
//=============================Private Variables=============================
//===========================================================================
const
char
axis_codes
[
NUM_AXIS
]
=
{
'X'
,
'Y'
,
'Z'
,
'E'
};
static
float
offset
[
3
]
=
{
0.0
,
0.0
,
0.0
};
static
float
offset
[
3
]
=
{
0.0
,
0.0
,
0.0
};
static
bool
home_all_axis
=
true
;
#ifdef DELTA
const
float
SIN_60
=
0.8660254037844386
;
const
float
COS_60
=
0.5
;
static
float
bed_level
[
7
][
7
]
=
{
{
0
,
0
,
0
,
0
,
0
,
0
,
0
},
{
0
,
0
,
0
,
0
,
0
,
0
,
0
},
{
0
,
0
,
0
,
0
,
0
,
0
,
0
},
{
0
,
0
,
0
,
0
,
0
,
0
,
0
},
{
0
,
0
,
0
,
0
,
0
,
0
,
0
},
{
0
,
0
,
0
,
0
,
0
,
0
,
0
},
{
0
,
0
,
0
,
0
,
0
,
0
,
0
},
{
0
,
0
,
0
,
0
,
0
,
0
,
0
},
{
0
,
0
,
0
,
0
,
0
,
0
,
0
},
{
0
,
0
,
0
,
0
,
0
,
0
,
0
},
{
0
,
0
,
0
,
0
,
0
,
0
,
0
},
{
0
,
0
,
0
,
0
,
0
,
0
,
0
},
{
0
,
0
,
0
,
0
,
0
,
0
,
0
},
{
0
,
0
,
0
,
0
,
0
,
0
,
0
},
};
static
float
feedrate
=
1500.0
,
next_feedrate
,
saved_feedrate
,
z_offset
;
static
float
bed_level_x
,
bed_level_y
,
bed_level_z
;
...
...
@@ -443,35 +435,32 @@ static int buflen = 0;
static
char
serial_char
;
static
int
serial_count
=
0
;
static
boolean
comment_mode
=
false
;
static
char
*
strchr_pointer
;
//
just a pointer to find chars in the command string like X, Y, Z, E, etc
static
char
*
strchr_pointer
;
//
/< A pointer to find chars in the command string (X, Y, Z, E, etc.)
const
int
sensitive_pins
[]
=
SENSITIVE_PINS
;
// Sensitive pin list for M42
const
int
sensitive_pins
[]
=
SENSITIVE_PINS
;
//
/<
Sensitive pin list for M42
//static float tt = 0;
//static float bt = 0;
//Inactivity shutdown variables
// Inactivity shutdown
static
unsigned
long
previous_millis_cmd
=
0
;
static
unsigned
long
max_inactive_time
=
0
;
static
unsigned
long
stepper_inactive_time
=
DEFAULT_STEPPER_DEACTIVE_TIME
*
1000l
;
unsigned
long
starttime
=
0
;
unsigned
long
stoptime
=
0
;
unsigned
long
starttime
=
0
;
///< Print job start time
unsigned
long
stoptime
=
0
;
///< Print job stop time
static
uint8_t
tmp_extruder
;
#ifdef NPR2
static
float
color_position
[]
=
COLOR_STEP
;
//variabile per la scelta del colore
static
float
color_step_moltiplicator
=
(
DRIVER_MICROSTEP
/
MOTOR_ANGLE
)
*
CARTER_MOLTIPLICATOR
;
static
float
color_position
[]
=
COLOR_STEP
;
//variabile per la scelta del colore
static
float
color_step_moltiplicator
=
(
DRIVER_MICROSTEP
/
MOTOR_ANGLE
)
*
CARTER_MOLTIPLICATOR
;
#endif // NPR2
#ifdef EASY_LOAD
bool
allow_lengthy_extrude_once
;
// for load/unload
bool
allow_lengthy_extrude_once
;
// for load/unload
#endif
bool
Stopped
=
false
;
bool
Stopped
=
false
;
#if defined(PAUSE_PIN) && PAUSE_PIN > -1
bool
paused
=
false
;
bool
paused
=
false
;
#endif
#if NUM_SERVOS > 0
...
...
@@ -481,10 +470,9 @@ bool paused=false;
bool
CooldownNoWait
=
true
;
bool
target_direction
;
//Insert variables if CHDK is defined
#ifdef CHDK
unsigned
long
chdkHigh
=
0
;
boolean
chdkActive
=
false
;
unsigned
long
chdkHigh
=
0
;
boolean
chdkActive
=
false
;
#endif
//===========================================================================
...
...
@@ -639,7 +627,7 @@ void servo_init()
servos
[
servo_endstops
[
i
]].
write
(
servo_endstop_angles
[
i
*
2
+
1
]);
}
}
#endif //
NUM_SERVOS
#endif //NUM_SERVOS
#if defined (ENABLE_AUTO_BED_LEVELING) && (PROBE_SERVO_DEACTIVATION_DELAY > 0)
delay
(
PROBE_SERVO_DEACTIVATION_DELAY
);
...
...
@@ -647,6 +635,7 @@ void servo_init()
#endif
}
void
setup
()
{
setup_killpin
();
...
...
MarlinKimbra/boards.h
View file @
7e90c0c1
...
...
@@ -20,7 +20,7 @@
#define BOARD_RAMPS_13_EEF 36 // RAMPS 1.3 / 1.4 (Power outputs: Extruder0, Extruder1, Fan)
#define BOARD_RAMBO 301 // Rambo
#define BOARD_DUEMILANOVE_328P 4 // Duemilanove w/ ATMega328P pin assignment
#define BOARD_DUEMILANOVE_328P 4 // Duemilanove w/ ATMega328P pin assignment
s
#define BOARD_GEN6 5 // Gen6
#define BOARD_GEN6_DELUXE 51 // Gen6 deluxe
...
...
@@ -49,7 +49,7 @@
#define BOARD_PRINTRBOARD 81 // Printrboard (AT90USB1286)
#define BOARD_BRAINWAVE 82 // Brainwave (AT90USB646)
#define BOARD_SAV_MKI 83 // SAV Mk-I (AT90USB1286)
#define BOARD_TEENSY2 84 // Teensy++2.0 (AT90USB1286)
- CLI compile: DEFINES=AT90USBxx_TEENSYPP_ASSIGNMENTS HARDWARE_MOTHERBOARD=84 make
#define BOARD_TEENSY2 84 // Teensy++2.0 (AT90USB1286)
#define BOARD_5DPRINT 88 // 5DPrint D8 Driver Board
#define BOARD_GEN3_PLUS 9 // Gen3+
...
...
MarlinKimbra/language.h
View file @
7e90c0c1
...
...
@@ -154,7 +154,6 @@
#define MSG_ERR_EEPROM_WRITE "Error writing to EEPROM!"
// LCD Menu Messages
#include "language_en.h"
#if LANGUAGE_CHOICE == 2 // Polish
...
...
MarlinKimbra/pins.h
View file @
7e90c0c1
/****************************************************************************************
* 10 BOARD_GEN7_CUSTOM - Gen7 custom (Alfons3 Version)
* 11 BOARD_GEN7_12 - Gen7 v1.1, v1.2
* 12 BOARD_GEN7_13 - Gen7 v1.3
* 12 BOARD_GEN7_14 - Gen7 v1.4
*
* 2 BOARD_CHEAPTRONIC - Cheaptronic v1.0
* 20 BOARD_SETHI - Sethi 3D_1
* 21 BOARD_ELEFU_3 - Elefu Ra Board (v3)
* 22 BOARD_GEN3_MONOLITHIC - Gen3 Monolithic Electronics
*
* 3 BOARD_RAMPS_OLD - MEGA/RAMPS up to 1.2
* 33 BOARD_RAMPS_13_EFB - RAMPS 1.3 / 1.4 (Power outputs: Extruder, Fan, Bed)
* 34 BOARD_RAMPS_13_EEB - RAMPS 1.3 / 1.4 (Power outputs: Extruder0, Extruder1, Bed)
* 35 BOARD_RAMPS_13_EFF - RAMPS 1.3 / 1.4 (Power outputs: Extruder, Fan, Fan)
* 36 BOARD_RAMPS_13_EEF - RAMPS 1.3 / 1.4 (Power outputs: Extruder0, Extruder1, Fan)
*
*301 BOARD_RAMBO - Rambo
*
* 4 BOARD_DUEMILANOVE_328P - Duemilanove w/ ATMega328P pin assignment
*
* 5 BOARD_GEN6 - Gen6
* 51 BOARD_GEN6_DELUXE - Gen6 deluxe
*
* 6 BOARD_SANGUINOLOLU_11 - Sanguinololu < 1.2
* 62 BOARD_SANGUINOLOLU_12 - Sanguinololu 1.2 and above
* 63 BOARD_MELZI - Melzi
* 64 BOARD_STB_11 - STB V1.1
* 65 BOARD_AZTEEG_X1 - Azteeg X1
* 66 BOARD_MELZI_1284 - Melzi with ATmega1284 (MaKr3d version)
* 67 BOARD_AZTEEG_X3 - Azteeg X3
* 68 BOARD_AZTEEG_X3_PRO - Azteeg X3 Pro
*
* 7 BOARD_ULTIMAKER - Ultimaker
*
* 70 BOARD_MEGATRONICS - Megatronics
*701 BOARD_MEGATRONICS_2 - Megatronics v2.0
*702 BOARD_MEGATRONICS_1 - Minitronics v1.0
*703 BOARD_MEGATRONICS_3 - Megatronics v3.0
* 71 BOARD_ULTIMAKER_OLD - Ultimaker (Older electronics. Pre 1.5.4. This is rare)
* 72 BOARD_ULTIMAIN_2 - Ultimainboard 2.x (Uses TEMP_SENSOR 20)
* 77 BOARD_3DRAG - 3Drag Controller
* 78 BOARD_K8200 - Vellemann K8200 Controller (derived from 3Drag Controller)
*
* 8 BOARD_TEENSYLU - Teensylu
* 80 BOARD_RUMBA - Rumba
* 81 BOARD_PRINTRBOARD - Printrboard (AT90USB1286)
* 82 BOARD_BRAINWAVE - Brainwave (AT90USB646)
* 83 BOARD_SAV_MKI - SAV Mk-I (AT90USB1286)
* 84 BOARD_TEENSY2 - Teensy++2.0 (AT90USB1286)
* 88 BOARD_5DPRINT - 5DPrint D8 Driver Board
*
* 9 BOARD_GEN3_PLUS - Gen3+
* 90 BOARD_OMCA_A - Alpha OMCA board
* 91 BOARD_OMCA - Final OMCA board
*999 BOARD_LEAPFROG - Leapfrog
*
*99 BOARD_99 - Custom motherboard
****************************************************************************************/
#ifndef PINS_H
#define PINS_H
...
...
@@ -683,7 +743,6 @@
#define ORIG_HEATER_BED_PIN -1
#define ORIG_TEMP_BED_PIN -1
#define SDSS -1
#define SDPOWER -1
#define LED_PIN -1
...
...
@@ -783,17 +842,12 @@
/****************************************************************************************
* 33
- 34 - 35 - 36
* 33
* RAMPS 1.3 / 1.4
* Applies to the following boards:
*
* 33 - RAMPS_13_EFB (Extruder, Fan, Bed)
* 34 - RAMPS_13_EEB (Extruder, Extruder, Bed)
* 35 - RAMPS_13_EFF (Extruder, Fan, Fan)
* 36 - RAMPS_13_EEF (Extruder, Extruder, Fan)
* RAMPS_13_EFB (Extruder, Fan, Bed)
****************************************************************************************/
#if
(IS_RAMPS && !MB(RAMPS_OLD)
)
#if
MB(RAMPS_13_EFB
)
#define KNOWN_BOARD 1
#if !defined(__AVR_ATmega1280__) && !defined(__AVR_ATmega2560__)
...
...
@@ -802,32 +856,36 @@
#define LARGE_FLASH true
//X axis pins
#define ORIG_X_STEP_PIN 54
#define ORIG_X_DIR_PIN 55
#define ORIG_X_ENABLE_PIN 38
#define ORIG_X_MIN_PIN 3
#define ORIG_X_MAX_PIN 2
//Y axis pins
#define ORIG_Y_STEP_PIN 60
#define ORIG_Y_DIR_PIN 61
#define ORIG_Y_ENABLE_PIN 56
#define ORIG_Y_MIN_PIN 14
#define ORIG_Y_MAX_PIN 15
#define Y2_STEP_PIN 36
#define Y2_DIR_PIN 34
#define Y2_ENABLE_PIN 30
//Z axis pins
#define ORIG_Z_STEP_PIN 46
#define ORIG_Z_DIR_PIN 48
#define ORIG_Z_ENABLE_PIN 62
#define ORIG_Z_MIN_PIN 18
#define ORIG_Z_MAX_PIN 19
#define Y2_STEP_PIN 36
#define Y2_DIR_PIN 34
#define Y2_ENABLE_PIN 30
#define Z2_STEP_PIN 36
#define Z2_DIR_PIN 34
#define Z2_ENABLE_PIN 30
//E axis pins
#define ORIG_E0_STEP_PIN 26
#define ORIG_E0_DIR_PIN 28
#define ORIG_E0_ENABLE_PIN 24
...
...
@@ -840,59 +898,224 @@
#define SDSS 53
#define LED_PIN 13
#if MB(RAMPS_13_EEB) && defined(FILAMENT_SENSOR) // FMM added for Filament Extruder
#define ORIG_FAN_PIN 9
#define PS_ON_PIN 12
#define ORIG_HEATER_0_PIN 10 // Hotend 1
#define ORIG_HEATER_1_PIN -1
#define ORIG_HEATER_2_PIN -1
#define ORIG_HEATER_3_PIN -1
#define ORIG_TEMP_0_PIN 13 // ANALOG NUMBERING
#define ORIG_TEMP_1_PIN 15 // ANALOG NUMBERING
#define ORIG_TEMP_2_PIN -1 // ANALOG NUMBERING
#define ORIG_TEMP_3_PIN -1 // ANALOG NUMBERING
#define ORIG_HEATER_BED_PIN 8 // BED
#define ORIG_TEMP_BED_PIN 14 // ANALOG NUMBERING
#ifdef FILAMENT_SENSOR
// FMM added for Filament Extruder
//define analog pin for the filament width sensor input
//Use the RAMPS 1.4 Analog input 5 on the AUX2 connector
#define FILWIDTH_PIN 5
#endif
#if MB(RAMPS_13_EFB) || MB(RAMPS_13_EFF)
#define ORIG_FAN_PIN 9
#elif MB(RAMPS_13_EEF)
#define ORIG_FAN_PIN 8
#if defined(REPRAP_DISCOUNT_SMART_CONTROLLER) || defined(G3D_PANEL)
#define KILL_PIN 41
#else
#define ORIG_FAN_PIN 4 // IO pin. Buffer needed
#define KILL_PIN -1
#endif
#if NUM_SERVOS > 0
#define SERVO0_PIN 11
#endif
#if
MB(RAMPS_13_EFF)
#define
CONTROLLERFAN_PIN -1 //Pin used for the fan to cool controller
#if
NUM_SERVOS > 1
#define
SERVO1_PIN 6
#endif
#define PS_ON_PIN 12
#if NUM_SERVOS > 2
#define SERVO2_PIN 5
#endif
#if defined(REPRAP_DISCOUNT_SMART_CONTROLLER) || defined(G3D_PANEL)
#if NUM_SERVOS > 3
#define SERVO3_PIN 4
#endif
#ifdef ULTRA_LCD
#ifdef NEWPANEL
#define LCD_PINS_RS 16
#define LCD_PINS_ENABLE 17
#define LCD_PINS_D4 23
#define LCD_PINS_D5 25
#define LCD_PINS_D6 27
#define LCD_PINS_D7 29
#ifdef REPRAP_DISCOUNT_SMART_CONTROLLER
#define BEEPER 37
#define BTN_EN1 31
#define BTN_EN2 33
#define BTN_ENC 35
#define SDCARDDETECT 49
#elif defined(LCD_I2C_PANELOLU2)
#define BTN_EN1 47 //reverse if the encoder turns the wrong way.
#define BTN_EN2 43
#define BTN_ENC 32
#define LCD_SDSS 53
#define SDCARDDETECT -1
#define KILL_PIN 41
#elif defined(LCD_I2C_VIKI)
#define BTN_EN1 22 //reverse if the encoder turns the wrong way.
#define BTN_EN2 7
#define BTN_ENC -1
#define LCD_SDSS 53
#define SDCARDDETECT 49
#else
#define KILL_PIN -1
//arduino pin which triggers an piezzo beeper
#define BEEPER 33 // Beeper on AUX-4
//buttons are directly attached using AUX-2
#ifdef REPRAPWORLD_KEYPAD
#define BTN_EN1 64 // encoder
#define BTN_EN2 59 // encoder
#define BTN_ENC 63 // enter button
#define SHIFT_OUT 40 // shift register
#define SHIFT_CLK 44 // shift register
#define SHIFT_LD 42 // shift register
#else
#define BTN_EN1 37
#define BTN_EN2 35
#define BTN_ENC 31 //the click
#endif
#if MB(RAMPS_13_EFF)
#define ORIG_HEATER_0_PIN 8
#ifdef G3D_PANEL
#define SDCARDDETECT 49
#else
#define ORIG_HEATER_0_PIN 10 // HOTEND 1
#define SDCARDDETECT -1 // Ramps does not use this port
#endif
#if MB(RAMPS_13_EFB)
#define ORIG_HEATER_1_PIN -1
#endif
#else //old style panel with shift register
//arduino pin witch triggers an piezzo beeper
#define BEEPER 33 //No Beeper added
//buttons are attached to a shift register
// Not wired this yet
//#define SHIFT_CLK 38
//#define SHIFT_LD 42
//#define SHIFT_OUT 40
//#define SHIFT_EN 17
#define LCD_PINS_RS 16
#define LCD_PINS_ENABLE 17
#define LCD_PINS_D4 23
#define LCD_PINS_D5 25
#define LCD_PINS_D6 27
#define LCD_PINS_D7 29
#endif
#endif //ULTRA_LCD
// SPI for Max6675 Thermocouple
#ifndef SDSUPPORT
// these pins are defined in the SD library if building with SD support
#define SCK_PIN 52
#define MISO_PIN 50
#define MOSI_PIN 51
#define MAX6675_SS 66 // Do not use pin 53 if there is even the remote possibility of using Display/SD card
#else
#define ORIG_HEATER_1_PIN 9 // HOTEND 2
#define MAX6675_SS 66// Do not use pin 49 as this is tied to the switch inside the SD card socket to detect if there is an SD card present
#endif
#endif // RAMPS_13_EFB
/****************************************************************************************/
/****************************************************************************************
* 34
* RAMPS 1.3 / 1.4
* RAMPS_13_EEB (Extruder, Extruder, Bed)
****************************************************************************************/
#if MB(RAMPS_13_EEB)
#define KNOWN_BOARD 1
#if !defined(__AVR_ATmega1280__) && !defined(__AVR_ATmega2560__)
#error Oops! Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu.
#endif
#define LARGE_FLASH true
//X axis pins
#define ORIG_X_STEP_PIN 54
#define ORIG_X_DIR_PIN 55
#define ORIG_X_ENABLE_PIN 38
#define ORIG_X_MIN_PIN 3
#define ORIG_X_MAX_PIN 2
//Y axis pins
#define ORIG_Y_STEP_PIN 60
#define ORIG_Y_DIR_PIN 61
#define ORIG_Y_ENABLE_PIN 56
#define ORIG_Y_MIN_PIN 14
#define ORIG_Y_MAX_PIN 15
#define Y2_STEP_PIN 36
#define Y2_DIR_PIN 34
#define Y2_ENABLE_PIN 30
//Z axis pins
#define ORIG_Z_STEP_PIN 46
#define ORIG_Z_DIR_PIN 48
#define ORIG_Z_ENABLE_PIN 62
#define ORIG_Z_MIN_PIN 18
#define ORIG_Z_MAX_PIN 19
#define Z2_STEP_PIN 36
#define Z2_DIR_PIN 34
#define Z2_ENABLE_PIN 30
//E axis pins
#define ORIG_E0_STEP_PIN 26
#define ORIG_E0_DIR_PIN 28
#define ORIG_E0_ENABLE_PIN 24
#define ORIG_E1_STEP_PIN 36
#define ORIG_E1_DIR_PIN 34
#define ORIG_E1_ENABLE_PIN 30
#define SDPOWER -1
#define SDSS 53
#define LED_PIN 13
#define ORIG_FAN_PIN 4
#define PS_ON_PIN 12
#define ORIG_HEATER_0_PIN 10 // HOTEND 1
#define ORIG_HEATER_1_PIN 9 // HOTEND 2
#define ORIG_HEATER_2_PIN -1
#define ORIG_HEATER_3_PIN -1
#define ORIG_TEMP_0_PIN 13 // ANALOG NUMBERING
#define ORIG_TEMP_1_PIN 15 // ANALOG NUMBERING
#define ORIG_TEMP_2_PIN -1 // ANALOG NUMBERING
#define ORIG_TEMP_3_PIN -1 // ANALOG NUMBERING
#if MB(RAMPS_13_EFF) || MB(RAMPS_13_EEF)
#define ORIG_HEATER_BED_PIN -1 // NO BED
#else
#define ORIG_HEATER_BED_PIN 8 // BED
#endif
#define ORIG_TEMP_BED_PIN 14 // ANALOG NUMBERING
#ifdef FILAMENT_SENSOR
// FMM added for Filament Extruder
//define analog pin for the filament width sensor input
//Use the RAMPS 1.4 Analog input 5 on the AUX2 connector
#define FILWIDTH_PIN 5
#endif
#if NUM_SERVOS > 0
#define SERVO0_PIN 11
#endif
...
...
@@ -993,14 +1216,393 @@
#define MOSI_PIN 51
#define MAX6675_SS 66 // Do not use pin 53 if there is even the remote possibility of using Display/SD card
#else
#define MAX6675_SS
66
// Do not use pin 49 as this is tied to the switch inside the SD card socket to detect if there is an SD card present
#define MAX6675_SS
66
// Do not use pin 49 as this is tied to the switch inside the SD card socket to detect if there is an SD card present
#endif
#endif // RAMPS_13_E
FB || RAMPS_13_EEB || RAMPS_13_EFF
#endif // RAMPS_13_E
EB
/****************************************************************************************/
/****************************************************************************************
* 35
* RAMPS 1.3 / 1.4
* RAMPS_13_EFF (Extruder, Fan, Fan)
****************************************************************************************/
#if MB(RAMPS_13_EFF)
#define KNOWN_BOARD 1
#if !defined(__AVR_ATmega1280__) && !defined(__AVR_ATmega2560__)
#error Oops! Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu.
#endif
#define LARGE_FLASH true
//X axis pins
#define ORIG_X_STEP_PIN 54
#define ORIG_X_DIR_PIN 55
#define ORIG_X_ENABLE_PIN 38
#define ORIG_X_MIN_PIN 3
#define ORIG_X_MAX_PIN 2
//Y axis pins
#define ORIG_Y_STEP_PIN 60
#define ORIG_Y_DIR_PIN 61
#define ORIG_Y_ENABLE_PIN 56
#define ORIG_Y_MIN_PIN 14
#define ORIG_Y_MAX_PIN 15
#define Y2_STEP_PIN 36
#define Y2_DIR_PIN 34
#define Y2_ENABLE_PIN 30
//Z axis pins
#define ORIG_Z_STEP_PIN 46
#define ORIG_Z_DIR_PIN 48
#define ORIG_Z_ENABLE_PIN 62
#define ORIG_Z_MIN_PIN 18
#define ORIG_Z_MAX_PIN 19
#define Z2_STEP_PIN 36
#define Z2_DIR_PIN 34
#define Z2_ENABLE_PIN 30
//E axis pins
#define ORIG_E0_STEP_PIN 26
#define ORIG_E0_DIR_PIN 28
#define ORIG_E0_ENABLE_PIN 24
#define ORIG_E1_STEP_PIN 36
#define ORIG_E1_DIR_PIN 34
#define ORIG_E1_ENABLE_PIN 30
#define SDPOWER -1
#define SDSS 53
#define LED_PIN 13
#define ORIG_FAN_PIN 9
#define PS_ON_PIN 12
#define ORIG_HEATER_0_PIN 10 // HOTEND 1
#define ORIG_HEATER_1_PIN -1
#define ORIG_HEATER_2_PIN -1
#define ORIG_HEATER_3_PIN -1
#define ORIG_TEMP_0_PIN 13 // ANALOG NUMBERING
#define ORIG_TEMP_1_PIN 15 // ANALOG NUMBERING
#define ORIG_TEMP_2_PIN -1 // ANALOG NUMBERING
#define ORIG_TEMP_3_PIN -1 // ANALOG NUMBERING
#define ORIG_HEATER_BED_PIN -1 // BED
#define ORIG_TEMP_BED_PIN 14 // ANALOG NUMBERING
#ifdef FILAMENT_SENSOR
// FMM added for Filament Extruder
//define analog pin for the filament width sensor input
//Use the RAMPS 1.4 Analog input 5 on the AUX2 connector
#define FILWIDTH_PIN 5
#endif
#if NUM_SERVOS > 0
#define SERVO0_PIN 11
#endif
#if NUM_SERVOS > 1
#define SERVO1_PIN 6
#endif
#if NUM_SERVOS > 2
#define SERVO2_PIN 5
#endif
#if NUM_SERVOS > 3
#define SERVO3_PIN 4
#endif
#ifdef ULTRA_LCD
#ifdef NEWPANEL
#define LCD_PINS_RS 16
#define LCD_PINS_ENABLE 17
#define LCD_PINS_D4 23
#define LCD_PINS_D5 25
#define LCD_PINS_D6 27
#define LCD_PINS_D7 29
#ifdef REPRAP_DISCOUNT_SMART_CONTROLLER
#define BEEPER 37
#define BTN_EN1 31
#define BTN_EN2 33
#define BTN_ENC 35
#define SDCARDDETECT 49
#elif defined(LCD_I2C_PANELOLU2)
#define BTN_EN1 47 //reverse if the encoder turns the wrong way.
#define BTN_EN2 43
#define BTN_ENC 32
#define LCD_SDSS 53
#define SDCARDDETECT -1
#define KILL_PIN 41
#elif defined(LCD_I2C_VIKI)
#define BTN_EN1 22 //reverse if the encoder turns the wrong way.
#define BTN_EN2 7
#define BTN_ENC -1
#define LCD_SDSS 53
#define SDCARDDETECT 49
#else
//arduino pin which triggers an piezzo beeper
#define BEEPER 33 // Beeper on AUX-4
//buttons are directly attached using AUX-2
#ifdef REPRAPWORLD_KEYPAD
#define BTN_EN1 64 // encoder
#define BTN_EN2 59 // encoder
#define BTN_ENC 63 // enter button
#define SHIFT_OUT 40 // shift register
#define SHIFT_CLK 44 // shift register
#define SHIFT_LD 42 // shift register
#else
#define BTN_EN1 37
#define BTN_EN2 35
#define BTN_ENC 31 //the click
#endif
#ifdef G3D_PANEL
#define SDCARDDETECT 49
#else
#define SDCARDDETECT -1 // Ramps does not use this port
#endif
#endif
#else //old style panel with shift register
//arduino pin witch triggers an piezzo beeper
#define BEEPER 33 //No Beeper added
//buttons are attached to a shift register
// Not wired this yet
//#define SHIFT_CLK 38
//#define SHIFT_LD 42
//#define SHIFT_OUT 40
//#define SHIFT_EN 17
#define LCD_PINS_RS 16
#define LCD_PINS_ENABLE 17
#define LCD_PINS_D4 23
#define LCD_PINS_D5 25
#define LCD_PINS_D6 27
#define LCD_PINS_D7 29
#endif
#endif //ULTRA_LCD
// SPI for Max6675 Thermocouple
#ifndef SDSUPPORT
// these pins are defined in the SD library if building with SD support
#define SCK_PIN 52
#define MISO_PIN 50
#define MOSI_PIN 51
#define MAX6675_SS 66 // Do not use pin 53 if there is even the remote possibility of using Display/SD card
#else
#define MAX6675_SS 66 // Do not use pin 49 as this is tied to the switch inside the SD card socket to detect if there is an SD card present
#endif
#endif // RAMPS_13_EFF
/****************************************************************************************/
/****************************************************************************************
* 36
* RAMPS 1.3 / 1.4
* RAMPS_13_EEF (Extruder, Extruder, Fan)
****************************************************************************************/
#if MB(RAMPS_13_EEF)
#define KNOWN_BOARD 1
#if !defined(__AVR_ATmega1280__) && !defined(__AVR_ATmega2560__)
#error Oops! Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu.
#endif
#define LARGE_FLASH true
//X axis pins
#define ORIG_X_STEP_PIN 54
#define ORIG_X_DIR_PIN 55
#define ORIG_X_ENABLE_PIN 38
#define ORIG_X_MIN_PIN 3
#define ORIG_X_MAX_PIN 2
//Y axis pins
#define ORIG_Y_STEP_PIN 60
#define ORIG_Y_DIR_PIN 61
#define ORIG_Y_ENABLE_PIN 56
#define ORIG_Y_MIN_PIN 14
#define ORIG_Y_MAX_PIN 15
#define Y2_STEP_PIN 36
#define Y2_DIR_PIN 34
#define Y2_ENABLE_PIN 30
//Z axis pins
#define ORIG_Z_STEP_PIN 46
#define ORIG_Z_DIR_PIN 48
#define ORIG_Z_ENABLE_PIN 62
#define ORIG_Z_MIN_PIN 18
#define ORIG_Z_MAX_PIN 19
#define Z2_STEP_PIN 36
#define Z2_DIR_PIN 34
#define Z2_ENABLE_PIN 30
//E axis pins
#define ORIG_E0_STEP_PIN 26
#define ORIG_E0_DIR_PIN 28
#define ORIG_E0_ENABLE_PIN 24
#define ORIG_E1_STEP_PIN 36
#define ORIG_E1_DIR_PIN 34
#define ORIG_E1_ENABLE_PIN 30
#define SDPOWER -1
#define SDSS 53
#define LED_PIN 13
#define ORIG_FAN_PIN 8
#define PS_ON_PIN 12
#define ORIG_HEATER_0_PIN 10 // HOTEND 1
#define ORIG_HEATER_1_PIN 9 // HOTEND 2
#define ORIG_HEATER_2_PIN -1
#define ORIG_HEATER_3_PIN -1
#define ORIG_TEMP_0_PIN 13 // ANALOG NUMBERING
#define ORIG_TEMP_1_PIN 15 // ANALOG NUMBERING
#define ORIG_TEMP_2_PIN -1 // ANALOG NUMBERING
#define ORIG_TEMP_3_PIN -1 // ANALOG NUMBERING
#define ORIG_HEATER_BED_PIN 8 // BED
#define ORIG_TEMP_BED_PIN 14 // ANALOG NUMBERING
#ifdef FILAMENT_SENSOR
// FMM added for Filament Extruder
//define analog pin for the filament width sensor input
//Use the RAMPS 1.4 Analog input 5 on the AUX2 connector
#define FILWIDTH_PIN 5
#endif
#if NUM_SERVOS > 0
#define SERVO0_PIN 11
#endif
#if NUM_SERVOS > 1
#define SERVO1_PIN 6
#endif
#if NUM_SERVOS > 2
#define SERVO2_PIN 5
#endif
#if NUM_SERVOS > 3
#define SERVO3_PIN 4
#endif
#ifdef ULTRA_LCD
#ifdef NEWPANEL
#define LCD_PINS_RS 16
#define LCD_PINS_ENABLE 17
#define LCD_PINS_D4 23
#define LCD_PINS_D5 25
#define LCD_PINS_D6 27
#define LCD_PINS_D7 29
#ifdef REPRAP_DISCOUNT_SMART_CONTROLLER
#define BEEPER 37
#define BTN_EN1 31
#define BTN_EN2 33
#define BTN_ENC 35
#define SDCARDDETECT 49
#elif defined(LCD_I2C_PANELOLU2)
#define BTN_EN1 47 //reverse if the encoder turns the wrong way.
#define BTN_EN2 43
#define BTN_ENC 32
#define LCD_SDSS 53
#define SDCARDDETECT -1
#define KILL_PIN 41
#elif defined(LCD_I2C_VIKI)
#define BTN_EN1 22 //reverse if the encoder turns the wrong way.
#define BTN_EN2 7
#define BTN_ENC -1
#define LCD_SDSS 53
#define SDCARDDETECT 49
#else
//arduino pin which triggers an piezzo beeper
#define BEEPER 33 // Beeper on AUX-4
//buttons are directly attached using AUX-2
#ifdef REPRAPWORLD_KEYPAD
#define BTN_EN1 64 // encoder
#define BTN_EN2 59 // encoder
#define BTN_ENC 63 // enter button
#define SHIFT_OUT 40 // shift register
#define SHIFT_CLK 44 // shift register
#define SHIFT_LD 42 // shift register
#else
#define BTN_EN1 37
#define BTN_EN2 35
#define BTN_ENC 31 //the click
#endif
#ifdef G3D_PANEL
#define SDCARDDETECT 49
#else
#define SDCARDDETECT -1 // Ramps does not use this port
#endif
#endif
#else //old style panel with shift register
//arduino pin witch triggers an piezzo beeper
#define BEEPER 33 //No Beeper added
//buttons are attached to a shift register
// Not wired this yet
//#define SHIFT_CLK 38
//#define SHIFT_LD 42
//#define SHIFT_OUT 40
//#define SHIFT_EN 17
#define LCD_PINS_RS 16
#define LCD_PINS_ENABLE 17
#define LCD_PINS_D4 23
#define LCD_PINS_D5 25
#define LCD_PINS_D6 27
#define LCD_PINS_D7 29
#endif
#endif //ULTRA_LCD
// SPI for Max6675 Thermocouple
#ifndef SDSUPPORT
// these pins are defined in the SD library if building with SD support
#define SCK_PIN 52
#define MISO_PIN 50
#define MOSI_PIN 51
#define MAX6675_SS 66 // Do not use pin 53 if there is even the remote possibility of using Display/SD card
#else
#define MAX6675_SS 66 // Do not use pin 49 as this is tied to the switch inside the SD card socket to detect if there is an SD card present
#endif
#endif // RAMPS_13_EEF
/****************************************************************************************/
/****************************************************************************************
* 301
* Rambo
...
...
MarlinKimbra/ultralcd.cpp
View file @
7e90c0c1
...
...
@@ -763,13 +763,9 @@ static void lcd_preheat_gum_menu()
void
lcd_cooldown
()
{
setTargetHotend0
(
0
);
#ifndef SINGLENOZZLE
setTargetHotend1
(
0
);
setTargetHotend2
(
0
);
setTargetHotend3
(
0
);
#endif // !SINGLENOZZLE
setTargetBed
(
0
);
fanSpeed
=
0
;
lcd_return_to_status
();
...
...
@@ -1139,15 +1135,15 @@ static void lcd_control_motion_menu()
MENU_ITEM_EDIT
(
float52
,
MSG_XSTEPS
,
&
axis_steps_per_unit
[
X_AXIS
],
5
,
9999
);
MENU_ITEM_EDIT
(
float52
,
MSG_YSTEPS
,
&
axis_steps_per_unit
[
Y_AXIS
],
5
,
9999
);
MENU_ITEM_EDIT
(
float51
,
MSG_ZSTEPS
,
&
axis_steps_per_unit
[
Z_AXIS
],
5
,
9999
);
MENU_ITEM_EDIT
(
float51
,
MSG_E0STEPS
,
&
axis_steps_per_unit
[
3
],
5
,
9999
);
MENU_ITEM_EDIT
(
float51
,
MSG_E0STEPS
,
&
axis_steps_per_unit
[
E_AXIS
+
0
],
5
,
9999
);
#if EXTRUDERS > 1
MENU_ITEM_EDIT
(
float51
,
MSG_E1STEPS
,
&
axis_steps_per_unit
[
4
],
5
,
9999
);
MENU_ITEM_EDIT
(
float51
,
MSG_E1STEPS
,
&
axis_steps_per_unit
[
E_AXIS
+
1
],
5
,
9999
);
#endif
#if EXTRUDERS > 2
MENU_ITEM_EDIT
(
float51
,
MSG_E2STEPS
,
&
axis_steps_per_unit
[
5
],
5
,
9999
);
MENU_ITEM_EDIT
(
float51
,
MSG_E2STEPS
,
&
axis_steps_per_unit
[
E_AXIS
+
2
],
5
,
9999
);
#endif
#if EXTRUDERS > 3
MENU_ITEM_EDIT
(
float51
,
MSG_E3STEPS
,
&
axis_steps_per_unit
[
6
],
5
,
9999
);
MENU_ITEM_EDIT
(
float51
,
MSG_E3STEPS
,
&
axis_steps_per_unit
[
E_AXIS
+
3
],
5
,
9999
);
#endif
#ifdef ABORT_ON_ENDSTOP_HIT_FEATURE_ENABLED
MENU_ITEM_EDIT
(
bool
,
MSG_ENDSTOP_ABORT
,
&
abort_on_endstop_hit
);
...
...
MarlinKimbra/ultralcd_implementation_hitachi_HD44780.h
View file @
7e90c0c1
#ifndef ULTRA
_
LCD_IMPLEMENTATION_HITACHI_HD44780_H
#define ULTRA
_
LCD_IMPLEMENTATION_HITACHI_HD44780_H
#ifndef ULTRALCD_IMPLEMENTATION_HITACHI_HD44780_H
#define ULTRALCD_IMPLEMENTATION_HITACHI_HD44780_H
/**
* Implementation of the LCD display routines for a Hitachi HD44780 display. These are common LCD character displays.
...
...
@@ -7,9 +7,9 @@
**/
#ifndef REPRAPWORLD_KEYPAD
extern
volatile
uint8_t
buttons
;
//the last checked buttons in a bit array.
extern
volatile
uint8_t
buttons
;
//the last checked buttons in a bit array.
#else
extern
volatile
uint16_t
buttons
;
//an extended version of the last checked buttons in a bit array.
extern
volatile
uint16_t
buttons
;
//an extended version of the last checked buttons in a bit array.
#endif
////////////////////////////////////
...
...
@@ -526,8 +526,8 @@ static void lcd_implementation_status_screen()
lcd_printPGM
(
PSTR
(
LCD_STR_DEGREE
" "
));
if
(
tTarget
<
10
)
lcd
.
print
(
' '
);
# endif
(EXTRUDERS > 1 && !defined(SINGLENOZZLE)) || TEMP_SENSOR_BED != 0
#endif
//LCD_WIDTH > 19
# endif
//
(EXTRUDERS > 1 && !defined(SINGLENOZZLE)) || TEMP_SENSOR_BED != 0
#endif//LCD_WIDTH > 19
#if LCD_HEIGHT > 2
//Lines 2 for 4 line LCD
...
...
@@ -927,5 +927,4 @@ static uint8_t lcd_implementation_read_slow_buttons()
}
#endif
#endif//ULTRA_LCD_IMPLEMENTATION_HITACHI_HD44780_H
#endif //__ULTRALCD_IMPLEMENTATION_HITACHI_HD44780_H
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