Jean Martin Mojica Pinzon
/
piccolo2
piccolo 2
Fork of 01-02EjercicioComunicacionSerial by
main.cpp@1:7e0035a62222, 2018-03-15 (annotated)
- Committer:
- jeanmojica05
- Date:
- Thu Mar 15 02:33:25 2018 +0000
- Revision:
- 1:7e0035a62222
- Parent:
- 0:abaa541e10d5
puerto serial
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
fabeltranm | 0:abaa541e10d5 | 1 | #include "mbed.h" |
jeanmojica05 | 1:7e0035a62222 | 2 | #include "draw.h" |
fabeltranm | 0:abaa541e10d5 | 3 | |
fabeltranm | 0:abaa541e10d5 | 4 | #define CM_EJECUTAR 0xff |
fabeltranm | 0:abaa541e10d5 | 5 | #define CM_GUARDAR 0xfe |
fabeltranm | 0:abaa541e10d5 | 6 | #define CM_VERTEX2D 0xfd |
fabeltranm | 0:abaa541e10d5 | 7 | #define CM_DRAW 0xfc |
fabeltranm | 0:abaa541e10d5 | 8 | #define CM_NODRAW 0xfb |
fabeltranm | 0:abaa541e10d5 | 9 | #define CM_STOP 0xfa |
fabeltranm | 0:abaa541e10d5 | 10 | #define CM_END 0xf0 |
jeanmojica05 | 1:7e0035a62222 | 11 | #define MEM_SIZE 5000 |
jeanmojica05 | 1:7e0035a62222 | 12 | #define MEM_TYPE uint32_t |
fabeltranm | 0:abaa541e10d5 | 13 | |
jeanmojica05 | 1:7e0035a62222 | 14 | int mem_head = 0; |
jeanmojica05 | 1:7e0035a62222 | 15 | int mem_tail = 0; |
jeanmojica05 | 1:7e0035a62222 | 16 | uint32_t full = 0; |
fabeltranm | 0:abaa541e10d5 | 17 | |
fabeltranm | 0:abaa541e10d5 | 18 | |
jeanmojica05 | 1:7e0035a62222 | 19 | MEM_TYPE buffer[MEM_SIZE]; |
fabeltranm | 0:abaa541e10d5 | 20 | Serial command(USBTX, USBRX); |
fabeltranm | 0:abaa541e10d5 | 21 | |
jeanmojica05 | 1:7e0035a62222 | 22 | uint32_t mem_free() |
jeanmojica05 | 1:7e0035a62222 | 23 | { |
jeanmojica05 | 1:7e0035a62222 | 24 | mem_head=0; |
jeanmojica05 | 1:7e0035a62222 | 25 | full=0; |
jeanmojica05 | 1:7e0035a62222 | 26 | } |
jeanmojica05 | 1:7e0035a62222 | 27 | |
jeanmojica05 | 1:7e0035a62222 | 28 | uint32_t mem_put(MEM_TYPE data) |
jeanmojica05 | 1:7e0035a62222 | 29 | { |
jeanmojica05 | 1:7e0035a62222 | 30 | |
jeanmojica05 | 1:7e0035a62222 | 31 | if (full) |
jeanmojica05 | 1:7e0035a62222 | 32 | return 1; |
jeanmojica05 | 1:7e0035a62222 | 33 | buffer[mem_head] = data; |
jeanmojica05 | 1:7e0035a62222 | 34 | mem_head += 1; |
jeanmojica05 | 1:7e0035a62222 | 35 | if (mem_head == MEM_SIZE) |
jeanmojica05 | 1:7e0035a62222 | 36 | full =1; |
jeanmojica05 | 1:7e0035a62222 | 37 | return 0; |
jeanmojica05 | 1:7e0035a62222 | 38 | } |
jeanmojica05 | 1:7e0035a62222 | 39 | uint32_t mem_get(MEM_TYPE* data) |
jeanmojica05 | 1:7e0035a62222 | 40 | { |
jeanmojica05 | 1:7e0035a62222 | 41 | if (mem_head == 0) |
jeanmojica05 | 1:7e0035a62222 | 42 | return 1; |
jeanmojica05 | 1:7e0035a62222 | 43 | if (mem_head == mem_tail) |
jeanmojica05 | 1:7e0035a62222 | 44 | return 1; |
jeanmojica05 | 1:7e0035a62222 | 45 | |
jeanmojica05 | 1:7e0035a62222 | 46 | |
jeanmojica05 | 1:7e0035a62222 | 47 | *data = buffer[mem_tail]; |
jeanmojica05 | 1:7e0035a62222 | 48 | mem_tail += 1; |
jeanmojica05 | 1:7e0035a62222 | 49 | |
jeanmojica05 | 1:7e0035a62222 | 50 | return 0; |
jeanmojica05 | 1:7e0035a62222 | 51 | } |
fabeltranm | 0:abaa541e10d5 | 52 | |
fabeltranm | 0:abaa541e10d5 | 53 | void ejecutar(){ |
fabeltranm | 0:abaa541e10d5 | 54 | command.printf("se esta ejecutando el dibujo..."); |
fabeltranm | 0:abaa541e10d5 | 55 | // ubicar acà el codigo |
jeanmojica05 | 1:7e0035a62222 | 56 | uint32_t mem_free(); |
jeanmojica05 | 1:7e0035a62222 | 57 | |
fabeltranm | 0:abaa541e10d5 | 58 | } |
fabeltranm | 0:abaa541e10d5 | 59 | void guardar(){ |
fabeltranm | 0:abaa541e10d5 | 60 | command.printf("se inicia el comado de guardar.."); |
fabeltranm | 0:abaa541e10d5 | 61 | // ubicar acà el codigo |
jeanmojica05 | 1:7e0035a62222 | 62 | uint32_t mem_get(MEM_TYPE* data); |
fabeltranm | 0:abaa541e10d5 | 63 | } |
fabeltranm | 0:abaa541e10d5 | 64 | void init_serial() |
fabeltranm | 0:abaa541e10d5 | 65 | { |
fabeltranm | 0:abaa541e10d5 | 66 | command.baud(9600); |
fabeltranm | 0:abaa541e10d5 | 67 | } |
fabeltranm | 0:abaa541e10d5 | 68 | int main() { |
jeanmojica05 | 1:7e0035a62222 | 69 | command.printf("se inicia el comado de guardar.."); |
fabeltranm | 0:abaa541e10d5 | 70 | } |