Logibotのサンプルプログラミングです

Dependencies:   mbed

Committer:
natuga117
Date:
Fri Mar 03 18:32:40 2017 +0000
Revision:
0:66a643c36c9e
Logibot????????????

Who changed what in which revision?

UserRevisionLine numberNew contents of line
natuga117 0:66a643c36c9e 1 #include "mbed.h"
natuga117 0:66a643c36c9e 2 #include "beep_sound.h"
natuga117 0:66a643c36c9e 3 DigitalOut leds[]= {DigitalOut(D9),DigitalOut(A2),DigitalOut(D3),DigitalOut(A5),DigitalOut(D5),DigitalOut(A4),DigitalOut(D4),DigitalOut(A3),DigitalOut(D10),DigitalOut(A0)};
natuga117 0:66a643c36c9e 4 //モーター用のピン設定
natuga117 0:66a643c36c9e 5 DigitalOut Ain1(PD_2);
natuga117 0:66a643c36c9e 6 DigitalOut Ain2(PC_12);
natuga117 0:66a643c36c9e 7 PwmOut Aen(PC_8);
natuga117 0:66a643c36c9e 8 DigitalOut Bin1(PC_11);
natuga117 0:66a643c36c9e 9 DigitalOut Bin2(PC_10);
natuga117 0:66a643c36c9e 10 PwmOut Ben(PC_9);
natuga117 0:66a643c36c9e 11 //スピーカー用のピン設定
natuga117 0:66a643c36c9e 12 beep_sound sp(PB_7);
natuga117 0:66a643c36c9e 13 //ボタン用のピン設定
natuga117 0:66a643c36c9e 14 DigitalIn sw(PC_13);
natuga117 0:66a643c36c9e 15 //以下関数プロトタイプ宣言//
natuga117 0:66a643c36c9e 16 void play_music();
natuga117 0:66a643c36c9e 17 /**
natuga117 0:66a643c36c9e 18 音楽を鳴らします
natuga117 0:66a643c36c9e 19 **/
natuga117 0:66a643c36c9e 20 void move(int Lspeed,int Rspeed);
natuga117 0:66a643c36c9e 21 /**
natuga117 0:66a643c36c9e 22 モーターを動かす関数
natuga117 0:66a643c36c9e 23 Rspeed 入れられる値:整数で-100~100
natuga117 0:66a643c36c9e 24 Lspeed 入れられる値:整数で-100~100
natuga117 0:66a643c36c9e 25 いずれも負の数で後退,正の数で前進
natuga117 0:66a643c36c9e 26 例)move(100,100)//両モーター前進
natuga117 0:66a643c36c9e 27 **/
natuga117 0:66a643c36c9e 28 int main (void) //ここからプログラム開始
natuga117 0:66a643c36c9e 29 {
natuga117 0:66a643c36c9e 30 ////サンプルプログラム////
natuga117 0:66a643c36c9e 31 //音を鳴らして動きます. //
natuga117 0:66a643c36c9e 32 ///////////////////////
natuga117 0:66a643c36c9e 33 sp.boot();
natuga117 0:66a643c36c9e 34 while(sw);
natuga117 0:66a643c36c9e 35 while(1) {
natuga117 0:66a643c36c9e 36 play_music();
natuga117 0:66a643c36c9e 37 move(-100,100);
natuga117 0:66a643c36c9e 38 wait(0.8);
natuga117 0:66a643c36c9e 39 move(100,-100);
natuga117 0:66a643c36c9e 40 wait(0.8);
natuga117 0:66a643c36c9e 41 }
natuga117 0:66a643c36c9e 42 }//プログラム終了
natuga117 0:66a643c36c9e 43 void move(int Lspeed,int Rspeed) //モーターを動かす関数
natuga117 0:66a643c36c9e 44 {
natuga117 0:66a643c36c9e 45 if(Lspeed>0) { //前転
natuga117 0:66a643c36c9e 46 Ain1=0;
natuga117 0:66a643c36c9e 47 Ain2=1;
natuga117 0:66a643c36c9e 48 Aen=(float)Lspeed/100;
natuga117 0:66a643c36c9e 49 } else if(Lspeed==0) {
natuga117 0:66a643c36c9e 50 Ain1=1;
natuga117 0:66a643c36c9e 51 Ain2=1;
natuga117 0:66a643c36c9e 52 Aen=1;
natuga117 0:66a643c36c9e 53 } else {
natuga117 0:66a643c36c9e 54 Ain1=1;
natuga117 0:66a643c36c9e 55 Ain2=0;
natuga117 0:66a643c36c9e 56 Aen=-(float)Lspeed/100;
natuga117 0:66a643c36c9e 57 }
natuga117 0:66a643c36c9e 58 if(Rspeed>0) { //前転
natuga117 0:66a643c36c9e 59 Bin1=1;
natuga117 0:66a643c36c9e 60 Bin2=0;
natuga117 0:66a643c36c9e 61 Ben=(float)Rspeed/100;
natuga117 0:66a643c36c9e 62 } else if(Rspeed==0) {
natuga117 0:66a643c36c9e 63 Bin1=1;
natuga117 0:66a643c36c9e 64 Bin2=1;
natuga117 0:66a643c36c9e 65 Ben=1;
natuga117 0:66a643c36c9e 66 } else {
natuga117 0:66a643c36c9e 67 Bin1=0;
natuga117 0:66a643c36c9e 68 Bin2=1;
natuga117 0:66a643c36c9e 69 Ben=-(float)Rspeed/100;
natuga117 0:66a643c36c9e 70 }
natuga117 0:66a643c36c9e 71 }
natuga117 0:66a643c36c9e 72 void play_music() //音楽を鳴らす関数
natuga117 0:66a643c36c9e 73 {
natuga117 0:66a643c36c9e 74 sp.setGakuhu(1,0,0.2);
natuga117 0:66a643c36c9e 75 sp.setGakuhu(1,2,0.2);
natuga117 0:66a643c36c9e 76 sp.setGakuhu(1,4,0.2);
natuga117 0:66a643c36c9e 77 sp.setGakuhu(1,5,0.2);
natuga117 0:66a643c36c9e 78 sp.setGakuhu(1,7,0.2);
natuga117 0:66a643c36c9e 79 sp.setGakuhu(1,5,0.2);
natuga117 0:66a643c36c9e 80 sp.setGakuhu(1,4,0.2);
natuga117 0:66a643c36c9e 81 sp.setGakuhu(1,2,0.2);
natuga117 0:66a643c36c9e 82 sp.playGakuhu();
natuga117 0:66a643c36c9e 83 }