資源描述:
《武術(shù)機(jī)器人源代碼》由會員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。
1、#include"Apps/SystemTask.h"#include"funcwalk.h"uint8SERVO_MAPPING[5]={1,2,3,4,5};intmain(){intx=0;intnchess=0;inty=0;intenemy=0;intbian=0;intad[4]={0};inttest=0;intio[10]={0};intnbian=0;intchess=0;MFInit();MFInitServoMapping(&SERVO_MAPPING[0],5);MFSetPortDirect(0x0000
2、0C00);MFSetServoMode(1,1);MFSetServoMode(2,1);MFSetServoMode(3,1);MFSetServoMode(4,1);MFSetServoMode(5,0);DelayMS(1000);while(1){io[8]=MFGetDigiInput(8);io[9]=MFGetDigiInput(9);if((io[8]==0)
3、
4、(io[9]==0)){break;}DelayMS(100);}MFSetServoRotaSpd(1,-1023);MFSetServoRotaSpd
5、(2,-1023);MFSetServoRotaSpd(3,1023);MFSetServoRotaSpd(4,1023);MFSetServoPos(5,180,80);MFServoAction();DelayMS(7000);for(x=0;x<2000;x++){MFSetServoRotaSpd(1,-1000);MFSetServoRotaSpd(2,-1000);MFSetServoRotaSpd(3,1023);MFSetServoRotaSpd(4,1023);MFSetServoPos(5,180,512);MF
6、ServoAction();DelayMS(10);io[0]=MFGetDigiInput(0);io[1]=MFGetDigiInput(1);nbian=io[0]+io[1];if(nbian>=1){break;}}while(1){io[0]=MFGetDigiInput(0);io[1]=MFGetDigiInput(1);io[2]=MFGetDigiInput(2);io[3]=MFGetDigiInput(3);io[4]=MFGetDigiInput(4);io[6]=MFGetDigiInput(6);io[
7、7]=MFGetDigiInput(7);io[8]=MFGetDigiInput(8);io[9]=MFGetDigiInput(9);ad[0]=MFGetAD(0);ad[1]=MFGetAD(1);ad[2]=MFGetAD(2);ad[3]=MFGetAD(3);nbian=io[0]+io[1]+io[2]+io[3];nchess=io[6]*io[7]*io[8]*io[9];//nbian>=1,檢測到邊沿//nchess=0,檢測到物體if(nbian>0){//testbianinttestbian(){//0
8、未到邊沿//1前方到達(dá)邊沿//2左方到達(dá)邊沿//3右方到達(dá)邊沿//4后方到達(dá)邊沿io[0]=MFGetDigiInput(0);io[1]=MFGetDigiInput(1);io[2]=MFGetDigiInput(2);io[3]=MFGetDigiInput(3);if(io[0]==1
9、
10、io[1]==1){return1;}elseif(io[2]==1){return2;}elseif(io[3]==1){return3;}//elseif(io[4]==1)//{//return4;//}else{return0;}r
11、eturn0;}bian=testbian();switch(bian){case1:for(y=0;y<100;y++){MFSetServoRotaSpd(1,1023);MFSetServoRotaSpd(2,1023);MFSetServoRotaSpd(3,-1023);MFSetServoRotaSpd(4,-1023);MFSetServoPos(5,180,512);MFServoAction();DelayMS(10);ad[0]=MFGetAD(0);ad[1]=MFGetAD(1);io[2]=MFGetDig
12、iInput(2);io[3]=MFGetDigiInput(3);nbian=io[2]+io[3];if(ad[0]>200
13、
14、ad[1]>200
15、
16、nbian>=1){break;}}for(x=0;x<100;x++){io[