![](/media/cache/img/default_profile.jpg.50x50_q85.jpg)
Trying to encode a configuration file and a set of instructions to be passed to a microcontroller
Dependencies: MODSERIAL Nanopb
Diff: main.cpp
- Revision:
- 1:5752892425a3
- Parent:
- 0:abf096b1334e
- Child:
- 2:89156c267f7a
--- a/main.cpp Sun Aug 18 18:53:32 2019 +0000 +++ b/main.cpp Sun Aug 18 19:03:28 2019 +0000 @@ -27,47 +27,20 @@ DigitalOut signal2(p25); //Red -void incr(int i, int n = 1){ - for (int k = 0; k < n; k++){ - i++; - i = i % sizeof(buffer); - } - } void read_setpoint(){ if (pc.scanf("%d",&set_point_in_length) < 0){pc.printf("Error in reading message length");} for (int i = 0; i < set_point_length; i++) { - c = pc.getc(); - if (c == '#'){ - i++; - } - else{ - if (c == 'E'){ - if ((cn = pc.getc()) == 'o'){ - if ((cnn = pc.getc()) == 'T'){ - break; - } - else { - buffer_in[i+2] = cnn; - buffer_in[i+1] = cn; - buffer_in[i] = c; - incr(i,3); - } - } - else{ - buffer_in[i+1] = cn; - buffer_in[i] = c; - incr(i,2); - } - } - else{ - buffer_in[i] = c; - pc.putc(buffer_in[i]); - incr(i); - } + i = i % sizeof(buffer_in); + c = pc.getc(); + if (c == '#'){ } - } -} + else{ + buffer_in[i] = c; + } + pc.putc(buffer_in[i]); + } + } void write_setpoint(){ pc.printf("%d ",set_point_length); @@ -79,7 +52,6 @@ pc.putc(buffer[i]); } } - pc.printf("EoT"); } @@ -138,6 +110,13 @@ pc.getc(); pc.printf("\n Input your set point:\n"); read_setpoint(); + for (i=0;i<20;i++){ + pc.putc(buffer[i]); + pc.putc(buffer_in[i]); + if(buffer_in[i] == buffer[i]) {pc.putc('y');} + else {pc.putc('n');} + pc.printf("\n"); + } decode_setpoint();