2018年度用翼端mbedプログラム
Dependencies: Control_Yokutan_CANver1 XBusServo mbed mbed-rtos
Fork of ControlYokutan2017_2 by
Diff: main.cpp
- Branch:
- mpu????????
- Revision:
- 60:a45dc19a6001
- Parent:
- 59:f007e543f8c9
- Child:
- 61:988e3f4280ac
--- a/main.cpp Tue Jun 06 15:46:30 2017 +0000 +++ b/main.cpp Wed Jun 07 14:13:53 2017 +0000 @@ -60,7 +60,7 @@ char toSendDatas[TO_SEND_DATAS_NUM]; char controlValues[sizeof(float) +3];//0~3:eruruon,4( sizeof(float)で指定してください ):drug -char intvalues[sizeof(float)]; +char floatValues[10]; float eruronTrim; float drugTrim; float eruronMoveDeg; @@ -242,12 +242,12 @@ void receiveDatas() { if(can.read(recmsg)) { - for(int i = 0; i < CONTROL_VALUES_NUM; i++) { - controlValues[i] = recmsg.data[i]; - if(i<sizeof(float)) intvalues[i] = controlValues[i]; + for(int i = 0; i < 6; i++) { + floatValues[i] = recmsg.data[i]; + // controlValues[i] = recmsg.data[i]; + // if(i<sizeof(float)) floatValues[i] = controlValues[i]; } - // intvalues[0] = controlValues[0]; - eruronfloat = *(const float *)intvalues; + eruronfloat = atof(floatValues); led1 = !led1; } } @@ -274,10 +274,15 @@ void WriteServo() { + for(int i = 0; i< 10; i++) { + pc.printf("%c",floatValues[i]); + } + pc.printf(" : %f",eruronfloat); + pc.printf("\n\r"); drugServo.pulsewidth(calcPulse(drugTrim + drugMoveDeg *(float)controlValues[sizeof(float) + 2])); eruronServo.pulsewidth(calcPulse( eruronTrim + eruronMoveDeg * eruronfloat)); - pc.printf("WriteNum:%f ef:%d ",calcPulse( eruronTrim + eruronMoveDeg * eruronfloat),eruronfloat); - pc.printf("drValue::%f ei::%f\n\r",drugTrim + drugMoveDeg *(float)controlValues[sizeof(float) + 2]); + //pc.printf("WriteNum:%10f ef:%10d \n\r",calcPulse( eruronTrim + eruronMoveDeg * eruronfloat),eruronfloat); + // pc.printf("drValue::%f ei::%f\n\r",drugTrim + drugMoveDeg *(float)controlValues[sizeof(float) + 2]); } void setTrim()