diff --git a/code moteurs/.Rhistory b/Arch Pro bin/.Rhistory similarity index 100% rename from code moteurs/.Rhistory rename to Arch Pro bin/.Rhistory diff --git a/Arch Pro bin/mbed-os-motor-control-serialARCH_PRO_DEBUG.bin b/Arch Pro bin/mbed-os-motor-control-serialARCH_PRO_DEBUG.bin new file mode 100644 index 0000000..cd176f5 Binary files /dev/null and b/Arch Pro bin/mbed-os-motor-control-serialARCH_PRO_DEBUG.bin differ diff --git a/Arch Pro bin/mbed-os-motor-control-serialARCH_PRO_RELEASE.bin b/Arch Pro bin/mbed-os-motor-control-serialARCH_PRO_RELEASE.bin new file mode 100644 index 0000000..b09f6ba Binary files /dev/null and b/Arch Pro bin/mbed-os-motor-control-serialARCH_PRO_RELEASE.bin differ diff --git a/Arch Pro bin/motor-control-serial.cpp b/Arch Pro bin/motor-control-serial.cpp new file mode 100644 index 0000000..0bb23ec --- /dev/null +++ b/Arch Pro bin/motor-control-serial.cpp @@ -0,0 +1,68 @@ +#include "mbed.h" + +DigitalOut led2(P0_5); +DigitalOut led1(LED1); +PwmOut servo1(P2_5); +PwmOut servo2(P2_4); +//Serial pc(USBTX,USBRX); +Serial pc(USBTX,USBRX); +Thread mythread; + +void console_thread(){ + char buff[255]; + char *c0; + char *c; + int vals[3]; + int num=0; + //pc.printf("Ask for servos with XXX,YYY \n\r(where XXX and YYY are integers 1/1000 of 20ms)\n\r"); //Commented in RELEASE + + while (true) { + c0=buff; + c=buff; + for(num=0;num<2;){ + + *c=pc.getc(); // echo input back to terminal + pc.putc(*c); + if(*c == 'q') + break ; + if((*c == '\n') || (*c == '\r') || (*c == '\0') || (*c == ' ') || (*c == ',')) + { + // + *c='\0'; + vals[num]=atoi(c0); + c0=c+1; + num++; + } + c++; + } + float s_vals[2]; + int idx=0; + for(idx=0;idx<2;idx++){ + if(vals[idx]<0) vals[idx]=0; + if(vals[idx]>1000) vals[idx]=1000; + s_vals[idx]=vals[idx]*0.001; + } + servo1=s_vals[0]; + servo2=s_vals[1]; + + pc.printf("%d,%d \n",vals[0],vals[1]); + wait(0.5); + + + + } +} + +int main() { + mythread.start(console_thread); + int mystate=0; + servo1.period_ms(20); + servo2.period_ms(20); + while (true) { + led2 = !led2; + led1 = !led1; + mystate = !mystate; + wait(0.5); + } +} +