![]() |
Repetier-Firmware
0.80
|
#include "WProgram.h"#include <avr/pgmspace.h>#include "gcode.h"#include "uilang.h"#include "Configuration.h"#include "fastio.h"#include <avr/io.h>Go to the source code of this file.
Data Structures | |
| struct | UIMenuEntry |
| struct | UIMenu |
| class | UIDisplay |
Defines | |
| #define | COMPAT_PRE1 |
| #define | UI_ACTION_TOPMENU 8192 |
| #define | UI_ACTION_NEXT 1 |
| #define | UI_ACTION_PREVIOUS 2 |
| #define | UI_ACTION_X_UP 100 |
| #define | UI_ACTION_X_DOWN 101 |
| #define | UI_ACTION_Y_UP 102 |
| #define | UI_ACTION_Y_DOWN 103 |
| #define | UI_ACTION_Z_UP 104 |
| #define | UI_ACTION_Z_DOWN 105 |
| #define | UI_ACTION_EXTRUDER_UP 106 |
| #define | UI_ACTION_EXTRUDER_DOWN 107 |
| #define | UI_ACTION_EXTRUDER_TEMP_UP 108 |
| #define | UI_ACTION_EXTRUDER_TEMP_DOWN 109 |
| #define | UI_ACTION_HEATED_BED_UP 110 |
| #define | UI_ACTION_HEATED_BED_DOWN 111 |
| #define | UI_ACTION_FAN_UP 112 |
| #define | UI_ACTION_FAN_DOWN 113 |
| #define | UI_ACTION_DUMMY 10000 |
| #define | UI_ACTION_BACK 1000 |
| #define | UI_ACTION_OK 1001 |
| #define | UI_ACTION_MENU_UP 1002 |
| #define | UI_ACTION_TOP_MENU 1003 |
| #define | UI_ACTION_EMERGENCY_STOP 1004 |
| #define | UI_ACTION_XPOSITION 1005 |
| #define | UI_ACTION_YPOSITION 1006 |
| #define | UI_ACTION_ZPOSITION 1007 |
| #define | UI_ACTION_EPOSITION 1008 |
| #define | UI_ACTION_BED_TEMP 1009 |
| #define | UI_ACTION_EXTRUDER_TEMP 1010 |
| #define | UI_ACTION_SD_DELETE 1012 |
| #define | UI_ACTION_SD_PRINT 1013 |
| #define | UI_ACTION_SD_PAUSE 1014 |
| #define | UI_ACTION_SD_CONTINUE 1015 |
| #define | UI_ACTION_SD_UNMOUNT 1016 |
| #define | UI_ACTION_SD_MOUNT 1017 |
| #define | UI_ACTION_XPOSITION_FAST 1018 |
| #define | UI_ACTION_YPOSITION_FAST 1019 |
| #define | UI_ACTION_ZPOSITION_FAST 1020 |
| #define | UI_ACTION_HOME_ALL 1021 |
| #define | UI_ACTION_HOME_X 1022 |
| #define | UI_ACTION_HOME_Y 1023 |
| #define | UI_ACTION_HOME_Z 1024 |
| #define | UI_ACTION_SELECT_EXTRUDER1 1025 |
| #define | UI_ACTION_OPS_RETRACTDISTANCE 1026 |
| #define | UI_ACTION_OPS_BACKLASH 1027 |
| #define | UI_ACTION_OPS_MOVE_AFTER 1028 |
| #define | UI_ACTION_OPS_MINDISTANCE 1029 |
| #define | UI_ACTION_STORE_EEPROM 1030 |
| #define | UI_ACTION_LOAD_EEPROM 1031 |
| #define | UI_ACTION_PRINT_ACCEL_X 1032 |
| #define | UI_ACTION_PRINT_ACCEL_Y 1033 |
| #define | UI_ACTION_PRINT_ACCEL_Z 1034 |
| #define | UI_ACTION_MOVE_ACCEL_X 1035 |
| #define | UI_ACTION_MOVE_ACCEL_Y 1036 |
| #define | UI_ACTION_MOVE_ACCEL_Z 1037 |
| #define | UI_ACTION_MAX_JERK 1038 |
| #define | UI_ACTION_MAX_ZJERK 1039 |
| #define | UI_ACTION_BAUDRATE 1040 |
| #define | UI_ACTION_HOMING_FEEDRATE_X 1041 |
| #define | UI_ACTION_HOMING_FEEDRATE_Y 1042 |
| #define | UI_ACTION_HOMING_FEEDRATE_Z 1043 |
| #define | UI_ACTION_MAX_FEEDRATE_X 1044 |
| #define | UI_ACTION_MAX_FEEDRATE_Y 1045 |
| #define | UI_ACTION_MAX_FEEDRATE_Z 1046 |
| #define | UI_ACTION_STEPS_X 1047 |
| #define | UI_ACTION_STEPS_Y 1048 |
| #define | UI_ACTION_STEPS_Z 1049 |
| #define | UI_ACTION_FAN_OFF 1050 |
| #define | UI_ACTION_FAN_25 1051 |
| #define | UI_ACTION_FAN_50 1052 |
| #define | UI_ACTION_FAN_75 1053 |
| #define | UI_ACTION_FAN_FULL 1054 |
| #define | UI_ACTION_FEEDRATE_MULTIPLY 1055 |
| #define | UI_ACTION_STEPPER_INACTIVE 1056 |
| #define | UI_ACTION_MAX_INACTIVE 1057 |
| #define | UI_ACTION_PID_PGAIN 1058 |
| #define | UI_ACTION_PID_IGAIN 1059 |
| #define | UI_ACTION_PID_DGAIN 1060 |
| #define | UI_ACTION_DRIVE_MIN 1061 |
| #define | UI_ACTION_DRIVE_MAX 1062 |
| #define | UI_ACTION_X_OFFSET 1063 |
| #define | UI_ACTION_Y_OFFSET 1064 |
| #define | UI_ACTION_EXTR_STEPS 1065 |
| #define | UI_ACTION_EXTR_ACCELERATION 1066 |
| #define | UI_ACTION_EXTR_MAX_FEEDRATE 1067 |
| #define | UI_ACTION_EXTR_START_FEEDRATE 1068 |
| #define | UI_ACTION_EXTR_HEATMANAGER 1069 |
| #define | UI_ACTION_EXTR_WATCH_PERIOD 1070 |
| #define | UI_ACTION_PID_MAX 1071 |
| #define | UI_ACTION_ADVANCE_K 1072 |
| #define | UI_ACTION_SET_ORIGIN 1073 |
| #define | UI_ACTION_DEBUG_ECHO 1074 |
| #define | UI_ACTION_DEBUG_INFO 1075 |
| #define | UI_ACTION_DEBUG_ERROR 1076 |
| #define | UI_ACTION_DEBUG_DRYRUN 1077 |
| #define | UI_ACTION_POWER 1078 |
| #define | UI_ACTION_PREHEAT_PLA 1079 |
| #define | UI_ACTION_COOLDOWN 1080 |
| #define | UI_ACTION_HEATED_BED_OFF 1081 |
| #define | UI_ACTION_EXTRUDER0_OFF 1082 |
| #define | UI_ACTION_EXTRUDER1_OFF 1083 |
| #define | UI_ACTION_HEATED_BED_TEMP 1084 |
| #define | UI_ACTION_EXTRUDER0_TEMP 1085 |
| #define | UI_ACTION_EXTRUDER1_TEMP 1086 |
| #define | UI_ACTION_OPS_OFF 1087 |
| #define | UI_ACTION_OPS_CLASSIC 1088 |
| #define | UI_ACTION_OPS_FAST 1089 |
| #define | UI_ACTION_DISABLE_STEPPER 1090 |
| #define | UI_ACTION_RESET_EXTRUDER 1091 |
| #define | UI_ACTION_EXTRUDER_RELATIVE 1092 |
| #define | UI_ACTION_SELECT_EXTRUDER0 1093 |
| #define | UI_ACTION_ADVANCE_L 1094 |
| #define | UI_ACTION_PREHEAT_ABS 1095 |
| #define | UI_ACTION_FLOWRATE_MULTIPLY 1096 |
| #define | UI_ACTION_KILL 1097 |
| #define | UI_ACTION_RESET 1098 |
| #define | UI_ACTION_PAUSE 1099 |
| #define | UI_ACTION_EXTR_WAIT_RETRACT_TEMP 1100 |
| #define | UI_ACTION_EXTR_WAIT_RETRACT_UNITS 1101 |
| #define | UI_ACTION_MENU_XPOS 4000 |
| #define | UI_ACTION_MENU_YPOS 4001 |
| #define | UI_ACTION_MENU_ZPOS 4002 |
| #define | UI_ACTION_MENU_XPOSFAST 4003 |
| #define | UI_ACTION_MENU_YPOSFAST 4004 |
| #define | UI_ACTION_MENU_ZPOSFAST 4005 |
| #define | UI_ACTION_MENU_SDCARD 4006 |
| #define | UI_ACTION_MENU_QUICKSETTINGS 4007 |
| #define | UI_ACTION_MENU_EXTRUDER 4008 |
| #define | UI_ACTION_MENU_POSITIONS 4009 |
| #define | UI_ACTION_SHOW_MEASUREMENT 4010 |
| #define | UI_ACTION_RESET_MEASUREMENT 4011 |
| #define | UI_ACTION_SET_MEASURED_ORIGIN 4012 |
| #define | UI_ACTION_SET_P1 4013 |
| #define | UI_ACTION_SET_P2 4014 |
| #define | UI_ACTION_SET_P3 4015 |
| #define | UI_ACTION_CALC_LEVEL 4016 |
| #define | UI_ACTION_SHOW_USERMENU1 4101 |
| #define | UI_ACTION_SHOW_USERMENU2 4102 |
| #define | UI_ACTION_SHOW_USERMENU3 4103 |
| #define | UI_ACTION_SHOW_USERMENU4 4104 |
| #define | UI_ACTION_SHOW_USERMENU5 4105 |
| #define | UI_ACTION_SHOW_USERMENU6 4106 |
| #define | UI_ACTION_SHOW_USERMENU7 4107 |
| #define | UI_ACTION_SHOW_USERMENU8 4108 |
| #define | UI_ACTION_SHOW_USERMENU9 4109 |
| #define | UI_ACTION_SHOW_USERMENU10 4110 |
| #define | I2C_READ 1 |
| #define | I2C_WRITE 0 |
| #define | i2c_read(ack) (ack) ? i2c_readAck() : i2c_readNak(); |
| #define | UI_KEYS_INIT_CLICKENCODER_LOW(pinA, pinB) SET_INPUT(pinA);SET_INPUT(pinB); WRITE(pinA,HIGH);WRITE(pinB,HIGH); |
| #define | UI_KEYS_INIT_BUTTON_LOW(pin) SET_INPUT(pin);WRITE(pin,HIGH); |
| #define | UI_KEYS_INIT_CLICKENCODER_HIGH(pinA, pinB) SET_INPUT(pinA);SET_INPUT(pinB); WRITE(pinA,LOW);WRITE(pinB,LOW); |
| #define | UI_KEYS_INIT_BUTTON_HIGH(pin) SET_INPUT(pin);WRITE(pin,LOW); |
| #define | UI_KEYS_CLICKENCODER_LOW(pinA, pinB) uid.encoderLast = (uid.encoderLast << 2) & 0x0F;if (!READ(pinA)) uid.encoderLast |=2;if (!READ(pinB)) uid.encoderLast |=1; uid.encoderPos += pgm_read_byte(&encoder_table[uid.encoderLast]); |
| #define | UI_KEYS_CLICKENCODER_LOW_REV(pinA, pinB) uid.encoderLast = (uid.encoderLast << 2) & 0x0F;if (!READ(pinA)) uid.encoderLast |=2;if (!READ(pinB)) uid.encoderLast |=1; uid.encoderPos -= pgm_read_byte(&encoder_table[uid.encoderLast]); |
| #define | UI_KEYS_BUTTON_LOW(pin, action_) if(READ(pin)==0) action=action_; |
| #define | UI_KEYS_CLICKENCODER_HIGH(pinA, pinB) uid.encoderLast = (uid.encoderLast << 2) & 0x0F;if (READ(pinA)) uid.encoderLast |=2;if (READ(pinB)) uid.encoderLast |=1; uid.encoderPos += pgm_read_byte(&encoder_table[uid.encoderLast]); |
| #define | UI_KEYS_CLICKENCODER_HIGH_REV(pinA, pinB) uid.encoderLast = (uid.encoderLast << 2) & 0x0F;if (READ(pinA)) uid.encoderLast |=2;if (READ(pinB)) uid.encoderLast |=1; uid.encoderPos -= pgm_read_byte(&encoder_table[uid.encoderLast]); |
| #define | UI_KEYS_BUTTON_HIGH(pin, action_) if(READ(pin)!=0) action=action_; |
| #define | UI_KEYS_INIT_MATRIX(r1, r2, r3, r4, c1, c2, c3, c4) |
| #define | UI_KEYS_MATRIX(r1, r2, r3, r4, c1, c2, c3, c4) |
| #define | UI_KEYS_I2C_CLICKENCODER_LOW(pinA, pinB) uid.encoderLast = (uid.encoderLast << 2) & 0x0F;if (!(keymask & pinA)) uid.encoderLast |=2;if (!(keymask & pinB)) uid.encoderLast |=1; uid.encoderPos += pgm_read_byte(&encoder_table[uid.encoderLast]); |
| #define | UI_KEYS_I2C_CLICKENCODER_LOW_REV(pinA, pinB) uid.encoderLast = (uid.encoderLast << 2) & 0x0F;if (!(keymask & pinA)) uid.encoderLast |=2;if (!(keymask & pinB)) uid.encoderLast |=1; uid.encoderPos -= pgm_read_byte(&encoder_table[uid.encoderLast]); |
| #define | UI_KEYS_I2C_BUTTON_LOW(pin, action_) if((keymask & pin)==0) action=action_; |
| #define | UI_KEYS_I2C_CLICKENCODER_HIGH(pinA, pinB) uid.encoderLast = (uid.encoderLast << 2) & 0x0F;if (keymask & pinA) uid.encoderLast |=2;if (keymask & pinB) uid.encoderLast |=1; uid.encoderPos += pgm_read_byte(&encoder_table[uid.encoderLast]); |
| #define | UI_KEYS_I2C_CLICKENCODER_HIGH_REV(pinA, pinB) uid.encoderLast = (uid.encoderLast << 2) & 0x0F;if (keymask & pinA) uid.encoderLast |=2;if (keymask & pinB) uid.encoderLast |=1; uid.encoderPos -= pgm_read_byte(&encoder_table[uid.encoderLast]); |
| #define | UI_KEYS_I2C_BUTTON_HIGH(pin, action_) if((pin & keymask)!=0) action=action_; |
| #define | UI_STRING(name, text) const char PROGMEM name[] = text; |
| #define | UI_PAGE4(name, row1, row2, row3, row4) |
| #define | UI_PAGE2(name, row1, row2) |
| #define | UI_MENU_ACTION4C(name, action, rows) UI_MENU_ACTION4(name,action,rows) |
| #define | UI_MENU_ACTION2C(name, action, rows) UI_MENU_ACTION2(name,action,rows) |
| #define | UI_MENU_ACTION4(name, action, row1, row2, row3, row4) |
| #define | UI_MENU_ACTION2(name, action, row1, row2) |
| #define | UI_MENU_HEADLINE(name, text) UI_STRING(name ## _txt,text);UIMenuEntry name PROGMEM = {name ## _txt,1,0}; |
| #define | UI_MENU_CHANGEACTION(name, row, action) UI_STRING(name ## _txt,row);UIMenuEntry name PROGMEM = {name ## _txt,4,action}; |
| #define | UI_MENU_ACTIONCOMMAND(name, row, action) UI_STRING(name ## _txt,row);UIMenuEntry name PROGMEM = {name ## _txt,3,action}; |
| #define | UI_MENU_ACTIONSELECTOR(name, row, entries) UI_STRING(name ## _txt,row);UIMenuEntry name PROGMEM = {name ## _txt,2,(unsigned int)&entries}; |
| #define | UI_MENU_SUBMENU(name, row, entries) UI_STRING(name ## _txt,row);UIMenuEntry name PROGMEM = {name ## _txt,2,(unsigned int)&entries}; |
| #define | UI_MENU(name, items, itemsCnt) const UIMenuEntry * const name ## _entries[] PROGMEM = items;const UIMenu name PROGMEM = {2,0,itemsCnt,name ## _entries} |
| #define | UI_MENU_FILESELECT(name, items, itemsCnt) const UIMenuEntry *name ## _entries[] PROGMEM = items;const UIMenu name PROGMEM = {1,0,itemsCnt,name ## _entries} |
| #define | UI_HAS_KEYS 0 |
| #define | UI_DISPLAY_TYPE 0 |
| #define | UI_VERSION_STRING "Repetier " REPETIER_VERSION |
| #define | UI_INITIALIZE {} |
| #define | UI_FAST {} |
| #define | UI_MEDIUM {} |
| #define | UI_SLOW {} |
| #define | UI_STATUS(status) {} |
| #define | UI_STATUS_UPD(status) {} |
| #define | UI_CLEAR_STATUS {} |
| #define | UI_ERROR(msg) {} |
| #define | UI_STATUS_UPD_RAM(status) {} |
| #define | BEEP_SHORT {} |
| #define | BEEP_LONG {} |
Functions | |
| void | i2c_stop (void) |
| Terminates the data transfer and releases the I2C bus. | |
| unsigned char | i2c_start (unsigned char addr) |
| Issues a start condition and sends address and transfer direction. | |
| void | i2c_start_wait (unsigned char addr) |
| Issues a start condition and sends address and transfer direction. | |
| unsigned char | i2c_write (unsigned char data) |
| Send one byte to I2C device. | |
| unsigned char | i2c_readAck (void) |
| read one byte from the I2C device, request more data from device | |
| unsigned char | i2c_readNak (void) |
| read one byte from the I2C device, read is followed by a stop condition | |
| unsigned char | i2c_read (unsigned char ack) |
| read one byte from the I2C device | |
| void | beep (byte duration, byte count) |
Variables | |
| const int8_t encoder_table[16] | PROGMEM |
| UIDisplay | uid |
| #define BEEP_LONG {} |
| #define BEEP_SHORT {} |
| #define COMPAT_PRE1 |
| #define I2C_READ 1 |
defines the data direction (reading from I2C device) in i2c_start(),i2c_rep_start()
| #define i2c_read | ( | ack | ) | (ack) ? i2c_readAck() : i2c_readNak(); |
| #define I2C_WRITE 0 |
defines the data direction (writing to I2C device) in i2c_start(),i2c_rep_start()
| #define UI_ACTION_ADVANCE_K 1072 |
| #define UI_ACTION_ADVANCE_L 1094 |
| #define UI_ACTION_BACK 1000 |
| #define UI_ACTION_BAUDRATE 1040 |
| #define UI_ACTION_BED_TEMP 1009 |
| #define UI_ACTION_CALC_LEVEL 4016 |
| #define UI_ACTION_COOLDOWN 1080 |
| #define UI_ACTION_DEBUG_DRYRUN 1077 |
| #define UI_ACTION_DEBUG_ECHO 1074 |
| #define UI_ACTION_DEBUG_ERROR 1076 |
| #define UI_ACTION_DEBUG_INFO 1075 |
| #define UI_ACTION_DISABLE_STEPPER 1090 |
| #define UI_ACTION_DRIVE_MAX 1062 |
| #define UI_ACTION_DRIVE_MIN 1061 |
| #define UI_ACTION_DUMMY 10000 |
| #define UI_ACTION_EMERGENCY_STOP 1004 |
| #define UI_ACTION_EPOSITION 1008 |
| #define UI_ACTION_EXTR_ACCELERATION 1066 |
| #define UI_ACTION_EXTR_HEATMANAGER 1069 |
| #define UI_ACTION_EXTR_MAX_FEEDRATE 1067 |
| #define UI_ACTION_EXTR_START_FEEDRATE 1068 |
| #define UI_ACTION_EXTR_STEPS 1065 |
| #define UI_ACTION_EXTR_WAIT_RETRACT_TEMP 1100 |
| #define UI_ACTION_EXTR_WAIT_RETRACT_UNITS 1101 |
| #define UI_ACTION_EXTR_WATCH_PERIOD 1070 |
| #define UI_ACTION_EXTRUDER0_OFF 1082 |
| #define UI_ACTION_EXTRUDER0_TEMP 1085 |
| #define UI_ACTION_EXTRUDER1_OFF 1083 |
| #define UI_ACTION_EXTRUDER1_TEMP 1086 |
| #define UI_ACTION_EXTRUDER_DOWN 107 |
| #define UI_ACTION_EXTRUDER_RELATIVE 1092 |
| #define UI_ACTION_EXTRUDER_TEMP 1010 |
| #define UI_ACTION_EXTRUDER_TEMP_DOWN 109 |
| #define UI_ACTION_EXTRUDER_TEMP_UP 108 |
| #define UI_ACTION_EXTRUDER_UP 106 |
| #define UI_ACTION_FAN_25 1051 |
| #define UI_ACTION_FAN_50 1052 |
| #define UI_ACTION_FAN_75 1053 |
| #define UI_ACTION_FAN_DOWN 113 |
| #define UI_ACTION_FAN_FULL 1054 |
| #define UI_ACTION_FAN_OFF 1050 |
| #define UI_ACTION_FAN_UP 112 |
| #define UI_ACTION_FEEDRATE_MULTIPLY 1055 |
| #define UI_ACTION_FLOWRATE_MULTIPLY 1096 |
| #define UI_ACTION_HEATED_BED_DOWN 111 |
| #define UI_ACTION_HEATED_BED_OFF 1081 |
| #define UI_ACTION_HEATED_BED_TEMP 1084 |
| #define UI_ACTION_HEATED_BED_UP 110 |
| #define UI_ACTION_HOME_ALL 1021 |
| #define UI_ACTION_HOME_X 1022 |
| #define UI_ACTION_HOME_Y 1023 |
| #define UI_ACTION_HOME_Z 1024 |
| #define UI_ACTION_HOMING_FEEDRATE_X 1041 |
| #define UI_ACTION_HOMING_FEEDRATE_Y 1042 |
| #define UI_ACTION_HOMING_FEEDRATE_Z 1043 |
| #define UI_ACTION_KILL 1097 |
| #define UI_ACTION_LOAD_EEPROM 1031 |
| #define UI_ACTION_MAX_FEEDRATE_X 1044 |
| #define UI_ACTION_MAX_FEEDRATE_Y 1045 |
| #define UI_ACTION_MAX_FEEDRATE_Z 1046 |
| #define UI_ACTION_MAX_INACTIVE 1057 |
| #define UI_ACTION_MAX_JERK 1038 |
| #define UI_ACTION_MAX_ZJERK 1039 |
| #define UI_ACTION_MENU_EXTRUDER 4008 |
| #define UI_ACTION_MENU_POSITIONS 4009 |
| #define UI_ACTION_MENU_QUICKSETTINGS 4007 |
| #define UI_ACTION_MENU_SDCARD 4006 |
| #define UI_ACTION_MENU_UP 1002 |
| #define UI_ACTION_MENU_XPOS 4000 |
| #define UI_ACTION_MENU_XPOSFAST 4003 |
| #define UI_ACTION_MENU_YPOS 4001 |
| #define UI_ACTION_MENU_YPOSFAST 4004 |
| #define UI_ACTION_MENU_ZPOS 4002 |
| #define UI_ACTION_MENU_ZPOSFAST 4005 |
| #define UI_ACTION_MOVE_ACCEL_X 1035 |
| #define UI_ACTION_MOVE_ACCEL_Y 1036 |
| #define UI_ACTION_MOVE_ACCEL_Z 1037 |
| #define UI_ACTION_NEXT 1 |
| #define UI_ACTION_OK 1001 |
| #define UI_ACTION_OPS_BACKLASH 1027 |
| #define UI_ACTION_OPS_CLASSIC 1088 |
| #define UI_ACTION_OPS_FAST 1089 |
| #define UI_ACTION_OPS_MINDISTANCE 1029 |
| #define UI_ACTION_OPS_MOVE_AFTER 1028 |
| #define UI_ACTION_OPS_OFF 1087 |
| #define UI_ACTION_OPS_RETRACTDISTANCE 1026 |
| #define UI_ACTION_PAUSE 1099 |
| #define UI_ACTION_PID_DGAIN 1060 |
| #define UI_ACTION_PID_IGAIN 1059 |
| #define UI_ACTION_PID_MAX 1071 |
| #define UI_ACTION_PID_PGAIN 1058 |
| #define UI_ACTION_POWER 1078 |
| #define UI_ACTION_PREHEAT_ABS 1095 |
| #define UI_ACTION_PREHEAT_PLA 1079 |
| #define UI_ACTION_PREVIOUS 2 |
| #define UI_ACTION_PRINT_ACCEL_X 1032 |
| #define UI_ACTION_PRINT_ACCEL_Y 1033 |
| #define UI_ACTION_PRINT_ACCEL_Z 1034 |
| #define UI_ACTION_RESET 1098 |
| #define UI_ACTION_RESET_EXTRUDER 1091 |
| #define UI_ACTION_RESET_MEASUREMENT 4011 |
| #define UI_ACTION_SD_CONTINUE 1015 |
| #define UI_ACTION_SD_DELETE 1012 |
| #define UI_ACTION_SD_MOUNT 1017 |
| #define UI_ACTION_SD_PAUSE 1014 |
| #define UI_ACTION_SD_PRINT 1013 |
| #define UI_ACTION_SD_UNMOUNT 1016 |
| #define UI_ACTION_SELECT_EXTRUDER0 1093 |
| #define UI_ACTION_SELECT_EXTRUDER1 1025 |
| #define UI_ACTION_SET_MEASURED_ORIGIN 4012 |
| #define UI_ACTION_SET_ORIGIN 1073 |
| #define UI_ACTION_SET_P1 4013 |
| #define UI_ACTION_SET_P2 4014 |
| #define UI_ACTION_SET_P3 4015 |
| #define UI_ACTION_SHOW_MEASUREMENT 4010 |
| #define UI_ACTION_SHOW_USERMENU1 4101 |
| #define UI_ACTION_SHOW_USERMENU10 4110 |
| #define UI_ACTION_SHOW_USERMENU2 4102 |
| #define UI_ACTION_SHOW_USERMENU3 4103 |
| #define UI_ACTION_SHOW_USERMENU4 4104 |
| #define UI_ACTION_SHOW_USERMENU5 4105 |
| #define UI_ACTION_SHOW_USERMENU6 4106 |
| #define UI_ACTION_SHOW_USERMENU7 4107 |
| #define UI_ACTION_SHOW_USERMENU8 4108 |
| #define UI_ACTION_SHOW_USERMENU9 4109 |
| #define UI_ACTION_STEPPER_INACTIVE 1056 |
| #define UI_ACTION_STEPS_X 1047 |
| #define UI_ACTION_STEPS_Y 1048 |
| #define UI_ACTION_STEPS_Z 1049 |
| #define UI_ACTION_STORE_EEPROM 1030 |
| #define UI_ACTION_TOP_MENU 1003 |
| #define UI_ACTION_TOPMENU 8192 |
| #define UI_ACTION_X_DOWN 101 |
| #define UI_ACTION_X_OFFSET 1063 |
| #define UI_ACTION_X_UP 100 |
| #define UI_ACTION_XPOSITION 1005 |
| #define UI_ACTION_XPOSITION_FAST 1018 |
| #define UI_ACTION_Y_DOWN 103 |
| #define UI_ACTION_Y_OFFSET 1064 |
| #define UI_ACTION_Y_UP 102 |
| #define UI_ACTION_YPOSITION 1006 |
| #define UI_ACTION_YPOSITION_FAST 1019 |
| #define UI_ACTION_Z_DOWN 105 |
| #define UI_ACTION_Z_UP 104 |
| #define UI_ACTION_ZPOSITION 1007 |
| #define UI_ACTION_ZPOSITION_FAST 1020 |
| #define UI_CLEAR_STATUS {} |
| #define UI_DISPLAY_TYPE 0 |
| #define UI_ERROR | ( | msg | ) | {} |
| #define UI_FAST {} |
| #define UI_HAS_KEYS 0 |
| #define UI_INITIALIZE {} |
| #define UI_KEYS_BUTTON_HIGH | ( | pin, | |
| action_ | |||
| ) | if(READ(pin)!=0) action=action_; |
| #define UI_KEYS_BUTTON_LOW | ( | pin, | |
| action_ | |||
| ) | if(READ(pin)==0) action=action_; |
| #define UI_KEYS_CLICKENCODER_HIGH | ( | pinA, | |
| pinB | |||
| ) | uid.encoderLast = (uid.encoderLast << 2) & 0x0F;if (READ(pinA)) uid.encoderLast |=2;if (READ(pinB)) uid.encoderLast |=1; uid.encoderPos += pgm_read_byte(&encoder_table[uid.encoderLast]); |
| #define UI_KEYS_CLICKENCODER_HIGH_REV | ( | pinA, | |
| pinB | |||
| ) | uid.encoderLast = (uid.encoderLast << 2) & 0x0F;if (READ(pinA)) uid.encoderLast |=2;if (READ(pinB)) uid.encoderLast |=1; uid.encoderPos -= pgm_read_byte(&encoder_table[uid.encoderLast]); |
| #define UI_KEYS_CLICKENCODER_LOW | ( | pinA, | |
| pinB | |||
| ) | uid.encoderLast = (uid.encoderLast << 2) & 0x0F;if (!READ(pinA)) uid.encoderLast |=2;if (!READ(pinB)) uid.encoderLast |=1; uid.encoderPos += pgm_read_byte(&encoder_table[uid.encoderLast]); |
| #define UI_KEYS_CLICKENCODER_LOW_REV | ( | pinA, | |
| pinB | |||
| ) | uid.encoderLast = (uid.encoderLast << 2) & 0x0F;if (!READ(pinA)) uid.encoderLast |=2;if (!READ(pinB)) uid.encoderLast |=1; uid.encoderPos -= pgm_read_byte(&encoder_table[uid.encoderLast]); |
| #define UI_KEYS_I2C_BUTTON_HIGH | ( | pin, | |
| action_ | |||
| ) | if((pin & keymask)!=0) action=action_; |
| #define UI_KEYS_I2C_BUTTON_LOW | ( | pin, | |
| action_ | |||
| ) | if((keymask & pin)==0) action=action_; |
| #define UI_KEYS_I2C_CLICKENCODER_HIGH | ( | pinA, | |
| pinB | |||
| ) | uid.encoderLast = (uid.encoderLast << 2) & 0x0F;if (keymask & pinA) uid.encoderLast |=2;if (keymask & pinB) uid.encoderLast |=1; uid.encoderPos += pgm_read_byte(&encoder_table[uid.encoderLast]); |
| #define UI_KEYS_I2C_CLICKENCODER_HIGH_REV | ( | pinA, | |
| pinB | |||
| ) | uid.encoderLast = (uid.encoderLast << 2) & 0x0F;if (keymask & pinA) uid.encoderLast |=2;if (keymask & pinB) uid.encoderLast |=1; uid.encoderPos -= pgm_read_byte(&encoder_table[uid.encoderLast]); |
| #define UI_KEYS_I2C_CLICKENCODER_LOW | ( | pinA, | |
| pinB | |||
| ) | uid.encoderLast = (uid.encoderLast << 2) & 0x0F;if (!(keymask & pinA)) uid.encoderLast |=2;if (!(keymask & pinB)) uid.encoderLast |=1; uid.encoderPos += pgm_read_byte(&encoder_table[uid.encoderLast]); |
| #define UI_KEYS_I2C_CLICKENCODER_LOW_REV | ( | pinA, | |
| pinB | |||
| ) | uid.encoderLast = (uid.encoderLast << 2) & 0x0F;if (!(keymask & pinA)) uid.encoderLast |=2;if (!(keymask & pinB)) uid.encoderLast |=1; uid.encoderPos -= pgm_read_byte(&encoder_table[uid.encoderLast]); |
| #define UI_KEYS_INIT_BUTTON_HIGH | ( | pin | ) | SET_INPUT(pin);WRITE(pin,LOW); |
| #define UI_KEYS_INIT_BUTTON_LOW | ( | pin | ) | SET_INPUT(pin);WRITE(pin,HIGH); |
| #define UI_KEYS_INIT_CLICKENCODER_HIGH | ( | pinA, | |
| pinB | |||
| ) | SET_INPUT(pinA);SET_INPUT(pinB); WRITE(pinA,LOW);WRITE(pinB,LOW); |
| #define UI_KEYS_INIT_CLICKENCODER_LOW | ( | pinA, | |
| pinB | |||
| ) | SET_INPUT(pinA);SET_INPUT(pinB); WRITE(pinA,HIGH);WRITE(pinB,HIGH); |
| #define UI_KEYS_INIT_MATRIX | ( | r1, | |
| r2, | |||
| r3, | |||
| r4, | |||
| c1, | |||
| c2, | |||
| c3, | |||
| c4 | |||
| ) |
if(c1>=0){SET_INPUT(c1);WRITE(c1,HIGH);}if(c2>=0){SET_INPUT(c2);WRITE(c2,HIGH);}if(c3>=0){SET_INPUT(c3);WRITE(c3,HIGH);}\ if(c4>=0) {SET_INPUT(c4);WRITE(c4,HIGH);}if(r1>=0)SET_OUTPUT(r1);if(r2>=0)SET_OUTPUT(r2);if(r3>=0)SET_OUTPUT(r3);if(r4>=0)SET_OUTPUT(r4);\ if(r1>=0)WRITE(r1,LOW);if(r2>=0)WRITE(r2,LOW);if(r3>=0)WRITE(r3,LOW);if(r4>=0)WRITE(r4,LOW);
| #define UI_KEYS_MATRIX | ( | r1, | |
| r2, | |||
| r3, | |||
| r4, | |||
| c1, | |||
| c2, | |||
| c3, | |||
| c4 | |||
| ) |
{byte r = (c1>=0?READ(c1):0) && (c2>=0?READ(c2):0) && (c3>=0?READ(c3):0) && (c4>=0?READ(c4):0);\
if(!r) {\
r = 255;\
if(r2>=0)WRITE(r2,HIGH);if(r3>=0)WRITE(r3,HIGH);if(r4>=0)WRITE(r4,HIGH);\
if(r1>=0) {\
asm volatile ("nop\nnop\nnop\nnop\nnop");\
if(!((c1>=0?READ(c1):1) && (c2>=0?READ(c2):1) && (c3>=0?READ(c3):1) && (c4>=0?READ(c4):1))) r = 0;\
else WRITE(r1,HIGH);\
}\
if(r==255 && r2>=0) {\
WRITE(r2,LOW);asm volatile ("nop\nnop\nnop\nnop\nnop");\
if(!((c1>=0?READ(c1):1) && (c2>=0?READ(c2):1) && (c3>=0?READ(c3):1) && (c4>=0?READ(c4):1))) r = 4;\
else WRITE(r2,HIGH);\
}\
if(r==255 && r3>=0) {\
WRITE(r3,LOW);asm volatile ("nop\nnop\nnop\nnop\nnop");\
if(!((c1>=0?READ(c1):0) && (c2>=0?READ(c2):1) && (c3>=0?READ(c3):1) && (c4>=0?READ(c4):1))) r = 8;\
else WRITE(r3,HIGH);\
}\
if(r==255 && r4>=0) {\
WRITE(r4,LOW);asm volatile ("nop\nnop\nnop\nnop\nnop");\
if(!((c1>=0?READ(c1):1) && (c2>=0?READ(c2):1) && (c3>=0?READ(c3):1) && (c4>=0?READ(c4):1))) r = 12;\
else WRITE(r4,HIGH);\
}\
if(c2>=0 && !READ(c2)) r+=1;\
else if(c3>=0 && !READ(c3)) r+=2;\
else if(c4>=0 && !READ(c4)) r+=3;\
if(r<16) {action = pgm_read_word(&(matrixActions[r]));}\
}if(r1>=0)WRITE(r1,LOW);if(r2>=0)WRITE(r2,LOW);if(r3>=0)WRITE(r3,LOW);if(r4>=0)WRITE(r4,LOW);}
| #define UI_MEDIUM {} |
| #define UI_MENU | ( | name, | |
| items, | |||
| itemsCnt | |||
| ) | const UIMenuEntry * const name ## _entries[] PROGMEM = items;const UIMenu name PROGMEM = {2,0,itemsCnt,name ## _entries} |
| #define UI_MENU_ACTION2 | ( | name, | |
| action, | |||
| row1, | |||
| row2 | |||
| ) |
UI_STRING(name ## _1txt,row1);UI_STRING(name ## _2txt,row2);\ UIMenuEntry name ## _1 PROGMEM ={name ## _1txt,0,0};\ UIMenuEntry name ## _2 PROGMEM ={name ## _2txt,0,0};\ const UIMenuEntry * const name ## _entries[] PROGMEM = {&name ## _1,&name ## _2};\ const UIMenu name PROGMEM = {3,action,2,name ## _entries};
| #define UI_MENU_ACTION2C | ( | name, | |
| action, | |||
| rows | |||
| ) | UI_MENU_ACTION2(name,action,rows) |
| #define UI_MENU_ACTION4 | ( | name, | |
| action, | |||
| row1, | |||
| row2, | |||
| row3, | |||
| row4 | |||
| ) |
UI_STRING(name ## _1txt,row1);UI_STRING(name ## _2txt,row2);UI_STRING(name ## _3txt,row3);UI_STRING(name ## _4txt,row4);\ UIMenuEntry name ## _1 PROGMEM ={name ## _1txt,0,0};\ UIMenuEntry name ## _2 PROGMEM ={name ## _2txt,0,0};\ UIMenuEntry name ## _3 PROGMEM ={name ## _3txt,0,0};\ UIMenuEntry name ## _4 PROGMEM ={name ## _4txt,0,0};\ const UIMenuEntry * const name ## _entries[] PROGMEM = {&name ## _1,&name ## _2,&name ## _3,&name ## _4};\ const UIMenu name PROGMEM = {3,action,4,name ## _entries};
| #define UI_MENU_ACTION4C | ( | name, | |
| action, | |||
| rows | |||
| ) | UI_MENU_ACTION4(name,action,rows) |
| #define UI_MENU_ACTIONCOMMAND | ( | name, | |
| row, | |||
| action | |||
| ) | UI_STRING(name ## _txt,row);UIMenuEntry name PROGMEM = {name ## _txt,3,action}; |
| #define UI_MENU_ACTIONSELECTOR | ( | name, | |
| row, | |||
| entries | |||
| ) | UI_STRING(name ## _txt,row);UIMenuEntry name PROGMEM = {name ## _txt,2,(unsigned int)&entries}; |
| #define UI_MENU_CHANGEACTION | ( | name, | |
| row, | |||
| action | |||
| ) | UI_STRING(name ## _txt,row);UIMenuEntry name PROGMEM = {name ## _txt,4,action}; |
| #define UI_MENU_FILESELECT | ( | name, | |
| items, | |||
| itemsCnt | |||
| ) | const UIMenuEntry *name ## _entries[] PROGMEM = items;const UIMenu name PROGMEM = {1,0,itemsCnt,name ## _entries} |
| #define UI_MENU_HEADLINE | ( | name, | |
| text | |||
| ) | UI_STRING(name ## _txt,text);UIMenuEntry name PROGMEM = {name ## _txt,1,0}; |
| #define UI_MENU_SUBMENU | ( | name, | |
| row, | |||
| entries | |||
| ) | UI_STRING(name ## _txt,row);UIMenuEntry name PROGMEM = {name ## _txt,2,(unsigned int)&entries}; |
| #define UI_PAGE2 | ( | name, | |
| row1, | |||
| row2 | |||
| ) |
UI_STRING(name ## _1txt,row1);UI_STRING(name ## _2txt,row2);\ UIMenuEntry name ## _1 PROGMEM ={name ## _1txt,0,0};\ UIMenuEntry name ## _2 PROGMEM ={name ## _2txt,0,0};\ const UIMenuEntry * const name ## _entries[] PROGMEM = {&name ## _1,&name ## _2};\ const UIMenu name PROGMEM = {0,0,2,name ## _entries};
| #define UI_PAGE4 | ( | name, | |
| row1, | |||
| row2, | |||
| row3, | |||
| row4 | |||
| ) |
UI_STRING(name ## _1txt,row1);UI_STRING(name ## _2txt,row2);UI_STRING(name ## _3txt,row3);UI_STRING(name ## _4txt,row4);\ UIMenuEntry name ## _1 PROGMEM ={name ## _1txt,0,0};\ UIMenuEntry name ## _2 PROGMEM ={name ## _2txt,0,0};\ UIMenuEntry name ## _3 PROGMEM ={name ## _3txt,0,0};\ UIMenuEntry name ## _4 PROGMEM ={name ## _4txt,0,0};\ const UIMenuEntry * const name ## _entries [] PROGMEM = {&name ## _1,&name ## _2,&name ## _3,&name ## _4};\ const UIMenu name PROGMEM = {0,0,4,name ## _entries};
| #define UI_SLOW {} |
| #define UI_STATUS | ( | status | ) | {} |
| #define UI_STATUS_UPD | ( | status | ) | {} |
| #define UI_STATUS_UPD_RAM | ( | status | ) | {} |
| #define UI_VERSION_STRING "Repetier " REPETIER_VERSION |
| void beep | ( | byte | duration, |
| byte | count | ||
| ) |
| unsigned char i2c_read | ( | unsigned char | ack | ) |
read one byte from the I2C device
Implemented as a macro, which calls either i2c_readAck or i2c_readNak
| ack | 1 send ack, request more data from device 0 send nak, read is followed by a stop condition |
| unsigned char i2c_readAck | ( | void | ) |
read one byte from the I2C device, request more data from device
| unsigned char i2c_readNak | ( | void | ) |
read one byte from the I2C device, read is followed by a stop condition
| unsigned char i2c_start | ( | unsigned char | addr | ) |
Issues a start condition and sends address and transfer direction.
| addr | address and transfer direction of I2C device |
| 0 | device accessible |
| 1 | failed to access device |
| void i2c_start_wait | ( | unsigned char | addr | ) |
Issues a start condition and sends address and transfer direction.
If device is busy, use ack polling to wait until device ready
| addr | address and transfer direction of I2C device |
| void i2c_stop | ( | void | ) |
Terminates the data transfer and releases the I2C bus.
| void |
| unsigned char i2c_write | ( | unsigned char | data | ) |
Send one byte to I2C device.
| data | byte to be transfered |
| 0 | write successful |
| 1 | write failed |
| const int8_t encoder_table [16] PROGMEM |