00001 #ifndef _HPGL_H
00002 #define _HPGL_H
00003
00007 enum _hpgl_command {
00008 CMD_ERR = -1,
00009 CMD_CONT = 0,
00010 CMD_PA = 1,
00011 CMD_PD,
00012 CMD_PU,
00013 CMD_ARCABS,
00014 CMD_INIT,
00015 CMD_SEEK0,
00016 CMD_LB0,
00017 CMD_LB,
00018 CMD_SI,
00019 CMD_SR,
00020 CMD_DI,
00021 };
00022
00025 enum _scanner_state {
00026 STATE_EXP1 = 0,
00027 STATE_EXP_P,
00028 STATE_EXP_S,
00029 STATE_EXP_I,
00030 STATE_EXP_A,
00031 STATE_EXP_L,
00032 STATE_EXP_D,
00033 STATE_X,
00034 STATE_Y,
00035 STATE_SP,
00036 STATE_SC,
00037 STATE_IP,
00038 STATE_LB,
00039 STATE_SI,
00040 STATE_SR,
00041 STATE_DT,
00042 STATE_DI,
00043
00044 STATE_EXP4,
00045 STATE_ARC,
00046 STATE_SKIP_END,
00047 };
00048
00050 void hpgl_init();
00051
00059 int8_t hpgl_char(char c, STEPPER_COORD* x, STEPPER_COORD* y, uint8_t* lb);
00060
00061
00062 #endif