2017ロボコンはやとブーメランプログラム
Dependencies: PID QEI ikarashiMDC recieveController omni
main.cpp
- Committer:
- WAT34
- Date:
- 2017-09-01
- Revision:
- 7:baf16d0c14e7
- Parent:
- 6:0bee4b2bb400
- Child:
- 8:c47cf4e0230c
- Child:
- 11:68defd561031
File content as of revision 7:baf16d0c14e7:
#include "mbed.h" #include "hayatoBoomerang.h" #include "recieveController.h" #include "omni.h" Serial rs485(PC_10,PC_11,38400); Serial serial(USBTX,USBRX); PwmOut led(LED1); DigitalIn button(BUTTON1); boomerang boom(&rs485); Thread commThread; recieveController con(PA_0,PA_1,198); // Serial con(PA_0,PA_1,115200); void init() { button.mode(PullUp); serial.baud(115200); //boom.calibrateArm(); boom.setTargetMotorSpeed(0); boom.setTargetArmAngle(40); } void comm() { wait_ms(10); } void updater() { boom.update(); } int main() { init(); int angle = 5; bool prevAnglechange = false; char data[20],*data2,*data3; // commThread.start(&comm); // ticker.attach(&updater,0.01); while(true) { if(con.buttons[0] == 0x1000 ) boom.fire(); if(con.buttons[0] == 0x1800 ) { boom.fire(); boom.setTargetMotorSpeed(8000); }else if(con.buttons[0] == 0x800) boom.setTargetMotorSpeed(8000); else boom.setTargetMotorSpeed(0); if(con.buttons[0] == 0x80 ) { if(!prevAnglechange) angle += 10; prevAnglechange =true; }else{ prevAnglechange = false; } if(con.buttons[0] == 0x100) { if(!prevAnglechange) angle -= 10; prevAnglechange =true; }else{ prevAnglechange =false; } if(angle < 5){ angle = 5; } if(angle > 80 ){ angle = 80; } boom.setTargetArmAngle(angle); led = boom.beltSpeed; boom.move(con.buttons[1],con.buttons[2],con.buttons[3]); boom.update(); printf("SPPED:%f\n",boom.armAngle); wait_ms(20); /* code */ con.update(); // printf("whats up\n" ); } }