- 追加された行はこの色です。
- 削除された行はこの色です。
最初にどちらのnxcがマスターかスレイブかを設定する。
マスター側のプログラム(Aとする)
#define CONN 1 // スレーブの接続番号
task main()
{
until (BluetoothStatus(CONN) == NO_ERR);
//プログラム
RemoteStartProgram(CONN, "B.rxe");
}
スレーブ側のプログラム(Bとする)
#define CONN 0 // スレーブの接続番号
task main()
{
until (BluetoothStatus(CONN) == NO_ERR);
//プログラム
RemoteStartProgram(CONN, "C.rxe");
}
これでマスター側のCというプログラムが実行される
旋回からの直進
float GetAngle(float d)
{
const float diameter = 5.45;
const float pi=3.1415;
float ang =d/(diameter*pi)*360.0;
return ang;
}
#define SPEED 50
task main()
{
int angle = GetAngle(20);
RotateMotor(OUT_BC,-SPEED,angle);
OnFwd(OUT_B,-SPEED);
OnFwd(OUT_C,SPEED);
Wait(1500);
angle += GetAngle(30);
RotateMotor(OUT_BC,SPEED,angle);
}
超音波
#define SPEED 50
#define SPEED_SLOW 30
#define count 3
#define sound PlaySound(SOUND_CLICK);
task main()
{
int nOnline=0;
//最初のプログラム
if(nOnline=0){//アームの作業終わり
if(SensorUS(S3)<count){
sound;
Wait(10000);
nOnline++;
//この行にbackを入力
}
}
else if(nOnline=1){//アームの作業終わり、ボール4つ乗ってる
if(SensorUS(S3)<count){
sound;
nOnline++;
}
}
else if(nOnline=2){
//この行にbackを入力、ボール2つになる
if(SensorUS(S3)<count){
sound;
Wait(10000);
nOnline++;
}
}
else if(nOnline=3)
//この行にbackを入力
}