piccolo 2

Dependencies:   mbed

Fork of 01-02EjercicioComunicacionSerial by ferney alberto beltran molina

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?

UserRevisionLine numberNew 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 }