【これは旧バージョンです】 AndroidのBLEラジコンプロポアプリ「BLEPropo」と接続し、RCサーボとDCモータを制御するプログラムです。 mbed HRM1017で動作を確認しています。 BLEPropo → https://github.com/lipoyang/BLEPropo

Dependencies:   BLE_API mbed

Fork of BLE_RCBController2 by Junichi Katsu

BLEを使ったAndroid用ラジコンプロポアプリ「BLEPropo」に対応するmbed HRM1017用ファームウェアです。
BLEPropoは、GitHubにて公開中。
https://github.com/lipoyang/BLEPropo
/media/uploads/lipoyang/blepropo_ui.png
ラジコンは、mbed HRM1017とRCサーボやDCモータを組み合わせて作ります。
/media/uploads/lipoyang/ble_wiring.png

Revision:
6:1b978b32118c
Parent:
5:572c91221792
Child:
7:6115339996eb
--- a/main.cpp	Wed Sep 10 04:11:28 2014 +0000
+++ b/main.cpp	Thu Sep 11 14:02:31 2014 +0000
@@ -47,26 +47,27 @@
 // pin asign
 DigitalOut tb6612_ain1(P0_28);
 DigitalOut tb6612_ain2(P0_29);
-PwmOut     tb6612_pwma(P0_30);
-PwmOut     servo_pwm  (P0_12);
+//PwmOut     tb6612_pwma(P0_30);
+//PwmOut     servo_pwm  (P0_12);
+PwmOut     servo_pwm  (P0_30);
 
 // DC motor driver (TB6612)
 void motor (float speed)
 {
     if (speed > 0) {
         // CW
-        tb6612_pwma = speed;
+        //tb6612_pwma = speed;
         tb6612_ain1 = 1;
         tb6612_ain2 = 0;
     } else
     if (speed < 0) {
         // CCW
-        tb6612_pwma = - speed;
+        //tb6612_pwma = - speed;
         tb6612_ain1 = 0;
         tb6612_ain2 = 1;
     } else {
         // stop
-        tb6612_pwma = 1;
+        //tb6612_pwma = 1;
         tb6612_ain1 = 0;
         tb6612_ain2 = 0;
 //        // break
@@ -114,7 +115,7 @@
         motor(m);
         float s = 0.5 + (float)stickData.value.lr /256.0;
         if(s<0) s=0;
-        servo(s);
+        //servo(s);
 	}
 		 
 }
@@ -144,10 +145,10 @@
                                     (const uint8_t *)UUID_BLUEPROPO, sizeof(UUID_BLUEPROPO));
     ble.setAdvertisingInterval(160); /* 100ms; in multiples of 0.625ms. */
     ble.startAdvertising();
-    ble.addService(serviceBluePropo);
+    ///ble.addService(serviceBluePropo);
 
 	// main loop (wait for BLE event)
     while (true) {
-        ble.waitForEvent();
+        //ble.waitForEvent();
     }
 }