Código para o menu no LCD
Dependencies: mbed SDFileSystemSD TextLCD
Fork of TextLCD_HelloWorld2 by
Diff: classes.h
- Revision:
- 17:0b8e489fac36
- Child:
- 18:5338b83b4de9
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/classes.h Tue May 15 12:05:45 2018 +0000 @@ -0,0 +1,94 @@ +#define tx PC_10 +#define rx PC_11 + +Serial Mach(tx, rx); +SDFileSystem sd(PB_5, PB_4, PB_3, PB_10, "sd"); //MOSI - D4, MISO - D5, SCLK - D3, CS - D6 + +class Machine { + int n; + string buffer; + char buffer_char[2]; + + public: + int debug; + + // PUBLIC FUNCTIONS ---------------------------------------------------------------------------------------------------------------------------------------- + void move_to(float x, float y, float z, string type, int speed){ + + } + + void move(int x_axis, int y_axis, int z_axis, float pct_speed){ + buffer = ""; + + buffer.append("f"); + + //buffer.append("X"); + n = sprintf(buffer_char, "%d", x_axis); + buffer.append(buffer_char); + + //buffer.append("Y"); + n = sprintf(buffer_char, "%d", y_axis); + buffer.append(buffer_char); + + //buffer.append("Z"); + n = sprintf(buffer_char, "%d", z_axis); + buffer.append(buffer_char); + + buffer.append("F"); + n = sprintf(buffer_char, "%.2f", pct_speed); + buffer.append(buffer_char); + + send(buffer); + } + + void save_point(int mode, float pct_speed){ + buffer = ""; + + buffer.append("s"); + + n = sprintf(buffer_char, "M%d", mode); + buffer.append(buffer_char); + + n = sprintf(buffer_char, "F%.2f", pct_speed); + buffer.append(buffer_char); + + send(buffer); + } + + void start_program(void){ + send("b"); + } + + void cancel_program(void){ + send("c"); + } + + void get_status(void){ + send("s"); + } + + void machine_zero(void){ + send("mz"); + } + + void set_zero(string axis){ + buffer = ""; + + buffer.append("z"); + buffer+=axis; + + send(buffer); + } + + private: + + // PRIVATE FUNCTIONS ---------------------------------------------------------------------------------------------------------------------------------------- + void send(string msg){ + msg.append("x"); + + for(int i = 0; i < msg.length(); i++){ + Mach.putc(msg[i]); + wait_ms(15); + } + } +}; \ No newline at end of file