🚸 MKS UI extrusion speed/steps config (#22656)
This commit is contained in:
committed by
Scott Lahteine
parent
61364906b3
commit
9f43452fbd
@ -89,20 +89,18 @@ static void event_handler(lv_obj_t *obj, lv_event_t event) {
|
||||
disp_extru_amount();
|
||||
break;
|
||||
case ID_E_STEP:
|
||||
switch (ABS(uiCfg.extruStep)) {
|
||||
case 1: uiCfg.extruStep = 5; break;
|
||||
case 5: uiCfg.extruStep = 10; break;
|
||||
case 10: uiCfg.extruStep = 1; break;
|
||||
default: break;
|
||||
switch (uiCfg.extruStep) {
|
||||
case uiCfg.eStepMin: uiCfg.extruStep = uiCfg.eStepMed; break;
|
||||
case uiCfg.eStepMed: uiCfg.extruStep = uiCfg.eStepMax; break;
|
||||
case uiCfg.eStepMax: uiCfg.extruStep = uiCfg.eStepMin; break;
|
||||
}
|
||||
disp_ext_step();
|
||||
break;
|
||||
case ID_E_SPEED:
|
||||
switch (uiCfg.extruSpeed) {
|
||||
case 1: uiCfg.extruSpeed = 10; break;
|
||||
case 10: uiCfg.extruSpeed = 20; break;
|
||||
case 20: uiCfg.extruSpeed = 1; break;
|
||||
default: break;
|
||||
case uiCfg.eSpeedL: uiCfg.extruSpeed = uiCfg.eSpeedN; break;
|
||||
case uiCfg.eSpeedN: uiCfg.extruSpeed = uiCfg.eSpeedH; break;
|
||||
case uiCfg.eSpeedH: uiCfg.extruSpeed = uiCfg.eSpeedL; break;
|
||||
}
|
||||
disp_ext_speed();
|
||||
break;
|
||||
@ -155,41 +153,30 @@ void lv_draw_extrusion() {
|
||||
void disp_ext_type() {
|
||||
if (uiCfg.extruderIndex == 1) {
|
||||
lv_imgbtn_set_src_both(buttonType, "F:/bmp_extru2.bin");
|
||||
if (gCfgItems.multiple_language) {
|
||||
lv_label_set_text(labelType, extrude_menu.ext2);
|
||||
lv_obj_align(labelType, buttonType, LV_ALIGN_IN_BOTTOM_MID, 0, BUTTON_TEXT_Y_OFFSET);
|
||||
}
|
||||
if (gCfgItems.multiple_language) lv_label_set_text(labelType, extrude_menu.ext2);
|
||||
}
|
||||
else {
|
||||
lv_imgbtn_set_src_both(buttonType, "F:/bmp_extru1.bin");
|
||||
if (gCfgItems.multiple_language) {
|
||||
lv_label_set_text(labelType, extrude_menu.ext1);
|
||||
lv_obj_align(labelType, buttonType, LV_ALIGN_IN_BOTTOM_MID, 0, BUTTON_TEXT_Y_OFFSET);
|
||||
}
|
||||
if (gCfgItems.multiple_language) lv_label_set_text(labelType, extrude_menu.ext1);
|
||||
}
|
||||
if (gCfgItems.multiple_language)
|
||||
lv_obj_align(labelType, buttonType, LV_ALIGN_IN_BOTTOM_MID, 0, BUTTON_TEXT_Y_OFFSET);
|
||||
}
|
||||
|
||||
void disp_ext_speed() {
|
||||
if (uiCfg.extruSpeed == 20)
|
||||
lv_imgbtn_set_src_both(buttonSpeed, "F:/bmp_speed_high.bin");
|
||||
else if (uiCfg.extruSpeed == 1)
|
||||
lv_imgbtn_set_src_both(buttonSpeed, "F:/bmp_speed_slow.bin");
|
||||
else
|
||||
lv_imgbtn_set_src_both(buttonSpeed, "F:/bmp_speed_normal.bin");
|
||||
switch (uiCfg.extruSpeed) {
|
||||
case uiCfg.eSpeedH: lv_imgbtn_set_src_both(buttonSpeed, "F:/bmp_speed_high.bin"); break;
|
||||
case uiCfg.eSpeedL: lv_imgbtn_set_src_both(buttonSpeed, "F:/bmp_speed_slow.bin"); break;
|
||||
case uiCfg.eSpeedN: lv_imgbtn_set_src_both(buttonSpeed, "F:/bmp_speed_normal.bin"); break;
|
||||
}
|
||||
|
||||
if (gCfgItems.multiple_language) {
|
||||
if (uiCfg.extruSpeed == 20) {
|
||||
lv_label_set_text(labelSpeed, extrude_menu.high);
|
||||
lv_obj_align(labelSpeed, buttonSpeed, LV_ALIGN_IN_BOTTOM_MID, 0, BUTTON_TEXT_Y_OFFSET);
|
||||
}
|
||||
else if (uiCfg.extruSpeed == 1) {
|
||||
lv_label_set_text(labelSpeed, extrude_menu.low);
|
||||
lv_obj_align(labelSpeed, buttonSpeed, LV_ALIGN_IN_BOTTOM_MID, 0, BUTTON_TEXT_Y_OFFSET);
|
||||
}
|
||||
else {
|
||||
lv_label_set_text(labelSpeed, extrude_menu.normal);
|
||||
lv_obj_align(labelSpeed, buttonSpeed, LV_ALIGN_IN_BOTTOM_MID, 0, BUTTON_TEXT_Y_OFFSET);
|
||||
switch (uiCfg.extruSpeed) {
|
||||
case uiCfg.eSpeedH: lv_label_set_text(labelSpeed, extrude_menu.high); break;
|
||||
case uiCfg.eSpeedL: lv_label_set_text(labelSpeed, extrude_menu.low); break;
|
||||
case uiCfg.eSpeedN: lv_label_set_text(labelSpeed, extrude_menu.normal); break;
|
||||
}
|
||||
lv_obj_align(labelSpeed, buttonSpeed, LV_ALIGN_IN_BOTTOM_MID, 0, BUTTON_TEXT_Y_OFFSET);
|
||||
}
|
||||
}
|
||||
|
||||
@ -221,33 +208,28 @@ void disp_extru_amount() {
|
||||
}
|
||||
|
||||
void disp_ext_step() {
|
||||
if (uiCfg.extruStep == 1)
|
||||
lv_imgbtn_set_src_both(buttonStep, "F:/bmp_step1_mm.bin");
|
||||
else if (uiCfg.extruStep == 5)
|
||||
lv_imgbtn_set_src_both(buttonStep, "F:/bmp_step5_mm.bin");
|
||||
else if (uiCfg.extruStep == 10)
|
||||
lv_imgbtn_set_src_both(buttonStep, "F:/bmp_step10_mm.bin");
|
||||
char buf3[12];
|
||||
sprintf_P(buf3, PSTR("%dmm"), uiCfg.extruStep);
|
||||
|
||||
switch (uiCfg.extruStep) {
|
||||
case uiCfg.eStepMin: lv_imgbtn_set_src_both(buttonStep, "F:/bmp_step1_mm.bin"); break;
|
||||
case uiCfg.eStepMed: lv_imgbtn_set_src_both(buttonStep, "F:/bmp_step5_mm.bin"); break;
|
||||
case uiCfg.eStepMax: lv_imgbtn_set_src_both(buttonStep, "F:/bmp_step10_mm.bin"); break;
|
||||
}
|
||||
|
||||
if (gCfgItems.multiple_language) {
|
||||
if (uiCfg.extruStep == 1) {
|
||||
lv_label_set_text(labelStep, extrude_menu.step_1mm);
|
||||
lv_obj_align(labelStep, buttonStep, LV_ALIGN_IN_BOTTOM_MID, 0, BUTTON_TEXT_Y_OFFSET);
|
||||
}
|
||||
else if (uiCfg.extruStep == 5) {
|
||||
lv_label_set_text(labelStep, extrude_menu.step_5mm);
|
||||
lv_obj_align(labelStep, buttonStep, LV_ALIGN_IN_BOTTOM_MID, 0, BUTTON_TEXT_Y_OFFSET);
|
||||
}
|
||||
else if (uiCfg.extruStep == 10) {
|
||||
lv_label_set_text(labelStep, extrude_menu.step_10mm);
|
||||
lv_obj_align(labelStep, buttonStep, LV_ALIGN_IN_BOTTOM_MID, 0, BUTTON_TEXT_Y_OFFSET);
|
||||
switch (uiCfg.extruStep) {
|
||||
case uiCfg.eStepMin: lv_label_set_text(labelStep, buf3); break;
|
||||
case uiCfg.eStepMed: lv_label_set_text(labelStep, buf3); break;
|
||||
case uiCfg.eStepMax: lv_label_set_text(labelStep, buf3); break;
|
||||
}
|
||||
lv_obj_align(labelStep, buttonStep, LV_ALIGN_IN_BOTTOM_MID, 0, BUTTON_TEXT_Y_OFFSET);
|
||||
}
|
||||
}
|
||||
|
||||
void lv_clear_extrusion() {
|
||||
#if HAS_ROTARY_ENCODER
|
||||
if (gCfgItems.encoder_enable) lv_group_remove_all_objs(g);
|
||||
#endif
|
||||
if (TERN0(HAS_ROTARY_ENCODER, gCfgItems.encoder_enable))
|
||||
lv_group_remove_all_objs(g);
|
||||
lv_obj_del(scr);
|
||||
}
|
||||
|
||||
|
@ -186,10 +186,10 @@ void ui_cfg_init() {
|
||||
uiCfg.stepHeat = 10;
|
||||
uiCfg.leveling_first_time = false;
|
||||
uiCfg.para_ui_page = false;
|
||||
uiCfg.extruStep = 5;
|
||||
uiCfg.extruSpeed = 10;
|
||||
uiCfg.extruStep = uiCfg.eStepMed;
|
||||
uiCfg.extruSpeed = uiCfg.eSpeedN;
|
||||
uiCfg.move_dist = 1;
|
||||
uiCfg.moveSpeed = 3000;
|
||||
uiCfg.moveSpeed = 1000;
|
||||
uiCfg.stepPrintSpeed = 10;
|
||||
uiCfg.command_send = false;
|
||||
uiCfg.dialogType = 0;
|
||||
@ -609,9 +609,9 @@ char *creat_title_text() {
|
||||
gPicturePreviewStart += (uintptr_t)p1 - (uintptr_t)((uint32_t *)(&public_buf[0]));
|
||||
break;
|
||||
}
|
||||
else {
|
||||
else
|
||||
gPicturePreviewStart += br;
|
||||
}
|
||||
|
||||
if (br < 400) break;
|
||||
}
|
||||
}
|
||||
@ -623,11 +623,8 @@ char *creat_title_text() {
|
||||
|
||||
while (1) {
|
||||
card.read(public_buf, 400);
|
||||
for (i = 0; i < 400;) {
|
||||
for (i = 0; i < 400; i += 2, j++)
|
||||
bmp_public_buf[j] = ascii2dec_test((char*)&public_buf[i]) << 4 | ascii2dec_test((char*)&public_buf[i + 1]);
|
||||
i += 2;
|
||||
j++;
|
||||
}
|
||||
if (j >= 400) break;
|
||||
}
|
||||
for (i = 0; i < 400; i += 2) {
|
||||
|
@ -208,7 +208,7 @@ typedef struct {
|
||||
uint32_t curFilesize;
|
||||
} CFG_ITMES;
|
||||
|
||||
typedef struct {
|
||||
typedef struct UI_Config_Struct {
|
||||
uint8_t curTempType:1,
|
||||
extruderIndex:3,
|
||||
stepHeat:4,
|
||||
@ -228,8 +228,16 @@ typedef struct {
|
||||
uint8_t wifi_name[32];
|
||||
uint8_t wifi_key[64];
|
||||
uint8_t cloud_hostUrl[96];
|
||||
// Extruder Steps distances (mm)
|
||||
uint8_t extruStep;
|
||||
static constexpr uint8_t eStepMin = 1,
|
||||
eStepMed = 5,
|
||||
eStepMax = 10;
|
||||
// Extruder speed (mm/s)
|
||||
uint8_t extruSpeed;
|
||||
static constexpr uint8_t eSpeedH = 1,
|
||||
eSpeedN = 10,
|
||||
eSpeedL = 20;
|
||||
uint8_t print_state;
|
||||
uint8_t stepPrintSpeed;
|
||||
uint8_t waitEndMoves;
|
||||
|
@ -1445,16 +1445,12 @@ void utf8_2_unicode(uint8_t *source, uint8_t Len) {
|
||||
|
||||
ZERO(FileName_unicode);
|
||||
|
||||
while (1) {
|
||||
for (;;) {
|
||||
char_byte_num = source[i] & 0xF0;
|
||||
if (source[i] < 0x80) {
|
||||
//ASCII --1byte
|
||||
FileName_unicode[char_i] = source[i];
|
||||
i += 1;
|
||||
char_i += 1;
|
||||
if (source[i] < 0x80) { // ASCII -- 1 byte
|
||||
FileName_unicode[char_i++] = source[i++];
|
||||
}
|
||||
else if (char_byte_num == 0xC0 || char_byte_num == 0xD0) {
|
||||
//--2byte
|
||||
else if (char_byte_num == 0xC0 || char_byte_num == 0xD0) { // -- 2 byte
|
||||
u16_h = (((uint16_t)source[i] << 8) & 0x1F00) >> 2;
|
||||
u16_l = ((uint16_t)source[i + 1] & 0x003F);
|
||||
u16_value = (u16_h | u16_l);
|
||||
@ -1463,8 +1459,7 @@ void utf8_2_unicode(uint8_t *source, uint8_t Len) {
|
||||
i += 2;
|
||||
char_i += 2;
|
||||
}
|
||||
else if (char_byte_num == 0xE0) {
|
||||
//--3byte
|
||||
else if (char_byte_num == 0xE0) { // -- 3 byte
|
||||
u16_h = (((uint16_t)source[i] << 8) & 0x0F00) << 4;
|
||||
u16_m = (((uint16_t)source[i + 1] << 8) & 0x3F00) >> 2;
|
||||
u16_l = ((uint16_t)source[i + 2] & 0x003F);
|
||||
@ -1474,8 +1469,7 @@ void utf8_2_unicode(uint8_t *source, uint8_t Len) {
|
||||
i += 3;
|
||||
char_i += 2;
|
||||
}
|
||||
else if (char_byte_num == 0xF0) {
|
||||
//--4byte
|
||||
else if (char_byte_num == 0xF0) { // -- 4 byte
|
||||
i += 4;
|
||||
//char_i += 3;
|
||||
}
|
||||
@ -1510,7 +1504,7 @@ static void file_first_msg_handle(uint8_t * msg, uint16_t msgLen) {
|
||||
TERN_(SDSUPPORT, card.mount());
|
||||
}
|
||||
else if (gCfgItems.fileSysType == FILE_SYS_USB) {
|
||||
|
||||
// nothing
|
||||
}
|
||||
file_writer.write_index = 0;
|
||||
lastFragment = -1;
|
||||
|
Reference in New Issue
Block a user