受け取り 外装動かし用

Dependencies:   Servo mbed

main.cpp

Committer:
shiyuu
Date:
2014-10-05
Revision:
1:703f56f14ee2
Parent:
0:5b2b8466d9fe
Child:
2:f20c880d251b

File content as of revision 1:703f56f14ee2:

#include "mbed.h"
#include "Servo.h"

Servo Head(p21);
Servo Ball(p22); 
BusOut myled(LED4,LED3,LED2,LED1);

Serial TMsan(p9,p10);
Serial pc(USBTX,USBRX);
//InterruptIn wedge(p5);

void f_led(){
    myled=TMsan.getc();    //割り込み用関数の宣言
}

void Setup (void){
    uint8_t i=1;
    i=TMsan.getc();     //せっとうっぷ
    }

int main() {
    
    Setup();
    
    /*   宣言   */
    int i,kk,redata =0;   //主に使うカウンターと、首カックンチョ・カウンター,高松さんレシーブ用
    
    /*redata=TMsan.getc();
    myled=redata;*/    
    
    /*      データ来るまで出れまテン    */
    while(1){
    redata=TMsan.getc();    //高松さんからのデータを受信    
    if(redata>0){
        break;
        }  
    }
    
    pc.printf("%d\n",redata);
    
    
        
    TMsan.attach(&f_led,Serial::RxIrq);  //割り込み用関数( LEDを光らす用 )
        
        //myled=1;
        
        Ball.calibrate(0.0021,45.0);//ぶっ壊れサーボを、まわれ回れし続ける
        Ball=1.0;
        
        Head.position(0.3);
        Head.calibrate(0.0004,40.0);//正常なほうのサーボ     (範囲,角度)
        
    while(1) {
    //redata=TMsan.getc();//          確認
    //myled=redata;    
        
    for(i=0;i<100;i++){
        Head=i/100.0;
        wait(0.01);
        }
        
    for(kk=1;kk<=5;kk++){  //首をカックンチョするためのやつ
        
        for(i=100;i>80;i--){
            Head=i/100.0;       //  --- 往路 ---
            wait(0.01);
            }
        
            //wait (0.5);
        
        for(i=80;i<100;i++){    //  --- 復路 ---
            Head=i/100.0;
            wait(0.01);
            }
            
    }   //カックンチョend
        
    for(i=100;i>0;i--){
        Head=i/100.0;
        wait(0.01);
        }
        
           
    }//while
}//main