sebastian martinez / Mbed 2 deprecated 01-04_Primer_Avance

Dependencies:   mbed

Fork of 01-04EntregaPrimerCorte by ferney alberto beltran molina

Committer:
sebasmartinez
Date:
Thu Sep 06 18:05:07 2018 +0000
Revision:
2:10956b8ceffb
Parent:
1:526bdd5faa37
Child:
3:60722da62531
Programa Avance uno

Who changed what in which revision?

UserRevisionLine numberNew contents of line
fabeltranm 0:89b318e49395 1 #include "mbed.h"
fabeltranm 0:89b318e49395 2
fabeltranm 0:89b318e49395 3 #include "main.h"
fabeltranm 0:89b318e49395 4
sebasmartinez 2:10956b8ceffb 5 #define MEM_SIZE 10
sebasmartinez 2:10956b8ceffb 6 #define MEM_TYPE char
sebasmartinez 2:10956b8ceffb 7 MEM_TYPE buffer[MEM_SIZE];
fabeltranm 0:89b318e49395 8
fabeltranm 0:89b318e49395 9
fabeltranm 0:89b318e49395 10 Serial command(USBTX, USBRX);
fabeltranm 0:89b318e49395 11
fabeltranm 0:89b318e49395 12
fabeltranm 0:89b318e49395 13
fabeltranm 0:89b318e49395 14 int main() {
fabeltranm 0:89b318e49395 15 init_servo();
fabeltranm 0:89b318e49395 16 init_serial();
fabeltranm 0:89b318e49395 17 debug_m("inicio \n");
sebasmartinez 2:10956b8ceffb 18
sebasmartinez 2:10956b8ceffb 19
fabeltranm 0:89b318e49395 20 uint32_t read_cc;
fabeltranm 0:89b318e49395 21 while(1)
fabeltranm 0:89b318e49395 22 {
fabeltranm 0:89b318e49395 23 read_cc=read_command();
sebasmartinez 2:10956b8ceffb 24 debug_m("Entrando TC...\n");
sebasmartinez 2:10956b8ceffb 25
fabeltranm 0:89b318e49395 26 switch (read_cc) {
sebasmartinez 2:10956b8ceffb 27
sebasmartinez 2:10956b8ceffb 28 case 0x01:
sebasmartinez 2:10956b8ceffb 29 debug_m("Tc1\n");
sebasmartinez 2:10956b8ceffb 30
sebasmartinez 2:10956b8ceffb 31 moving();
sebasmartinez 2:10956b8ceffb 32 debug_m("FTc1\n");
sebasmartinez 2:10956b8ceffb 33 break;
sebasmartinez 2:10956b8ceffb 34 case 0x02:
sebasmartinez 2:10956b8ceffb 35 debug_m("Tc2 :) \n");
sebasmartinez 2:10956b8ceffb 36 //moving();
sebasmartinez 2:10956b8ceffb 37 debug_m("FTc2\n");
sebasmartinez 2:10956b8ceffb 38 break;
sebasmartinez 2:10956b8ceffb 39 default: debug_m("error de comando. \nSe espera 0x01 - 0x08 \n");break ;
fabeltranm 0:89b318e49395 40 }
fabeltranm 0:89b318e49395 41 }
fabeltranm 0:89b318e49395 42 }
fabeltranm 0:89b318e49395 43
fabeltranm 0:89b318e49395 44
fabeltranm 0:89b318e49395 45
fabeltranm 0:89b318e49395 46 uint32_t read_command()
fabeltranm 0:89b318e49395 47 {
fabeltranm 1:526bdd5faa37 48 // retorna los byte recibidos concatenados en un entero,
fabeltranm 0:89b318e49395 49
sebasmartinez 2:10956b8ceffb 50 //char intc=command.getc();
sebasmartinez 2:10956b8ceffb 51 buffer[0] = command.getc();
sebasmartinez 2:10956b8ceffb 52 buffer[1] = command.getc();
sebasmartinez 2:10956b8ceffb 53 buffer[2] = command.getc();
sebasmartinez 2:10956b8ceffb 54 buffer[3] = command.getc();
sebasmartinez 2:10956b8ceffb 55 buffer[4] = command.getc();
fabeltranm 1:526bdd5faa37 56
sebasmartinez 2:10956b8ceffb 57 char intc = buffer[0];
sebasmartinez 2:10956b8ceffb 58 while(intc != 0xFF){
fabeltranm 0:89b318e49395 59
fabeltranm 1:526bdd5faa37 60 intc=command.getc();
sebasmartinez 2:10956b8ceffb 61
sebasmartinez 2:10956b8ceffb 62 debug_m("comando inicio invalido \n");
sebasmartinez 2:10956b8ceffb 63 }
sebasmartinez 2:10956b8ceffb 64
sebasmartinez 2:10956b8ceffb 65 printf("encontrado: %c \n", buffer[0] );
sebasmartinez 2:10956b8ceffb 66 //intc=command.getc();
sebasmartinez 2:10956b8ceffb 67 int tele = buffer[1];
sebasmartinez 2:10956b8ceffb 68 printf("dato siguente: %c \n", tele );
sebasmartinez 2:10956b8ceffb 69
sebasmartinez 2:10956b8ceffb 70
sebasmartinez 2:10956b8ceffb 71 return tele;
sebasmartinez 2:10956b8ceffb 72
fabeltranm 0:89b318e49395 73 }
fabeltranm 1:526bdd5faa37 74
fabeltranm 1:526bdd5faa37 75
fabeltranm 0:89b318e49395 76 void init_serial()
fabeltranm 0:89b318e49395 77 {
sebasmartinez 2:10956b8ceffb 78 command.baud(9600);
sebasmartinez 2:10956b8ceffb 79 debug_m("Serial 9600 \n");
fabeltranm 0:89b318e49395 80 }
fabeltranm 0:89b318e49395 81
fabeltranm 0:89b318e49395 82
fabeltranm 1:526bdd5faa37 83 void moving(){
fabeltranm 1:526bdd5faa37 84 debug_m("se inicia el comado mover..\n");
fabeltranm 0:89b318e49395 85
sebasmartinez 2:10956b8ceffb 86 char nmotor = buffer[2];
sebasmartinez 2:10956b8ceffb 87 printf("Motor: %c \n", nmotor );
sebasmartinez 2:10956b8ceffb 88 char grados = buffer[3];
sebasmartinez 2:10956b8ceffb 89 printf("Grados: %c \n", grados );
sebasmartinez 2:10956b8ceffb 90 char endc = buffer[4];
sebasmartinez 2:10956b8ceffb 91 printf("Cierre: %c \n", endc );
fabeltranm 1:526bdd5faa37 92 mover_ser(nmotor,grados);
sebasmartinez 2:10956b8ceffb 93
sebasmartinez 2:10956b8ceffb 94 debug_m("fin del comado mover..\n");
fabeltranm 0:89b318e49395 95
fabeltranm 0:89b318e49395 96 }
fabeltranm 0:89b318e49395 97
fabeltranm 0:89b318e49395 98 void debug_m(char *s , ... ){
fabeltranm 0:89b318e49395 99 #if DEBUG
fabeltranm 0:89b318e49395 100 command.printf(s);
fabeltranm 0:89b318e49395 101 #endif
fabeltranm 0:89b318e49395 102 }