forking app

Dependencies:   microbit-acc

Fork of microbit-animator-starter by Martin Woolley

Revision:
5:ed00381f279a
Parent:
2:ceab125d609b
--- a/main.cpp	Fri Mar 24 06:21:09 2017 +0000
+++ b/main.cpp	Wed Nov 29 22:41:20 2017 +0000
@@ -31,103 +31,32 @@
 
 MicroBit uBit;
 
-Animator my_animator(uBit.display);
-
-void animationLoop() {
-    while (my_animator.playing == 1) {
-        switch (my_animator.current_animation) {
-          case ANIMATION_TYPE_FLASH:
-            my_animator.flash();
-            break;
-          case ANIMATION_TYPE_RIPPLE:
-            my_animator.ripple();
-            break;
-          case ANIMATION_TYPE_SPIRAL:
-            my_animator.spiral();
-            break;
-        }
-        fiber_sleep(my_animator.sleep_time);    
-    }    
-}
-
-void onConnected(MicroBitEvent)
-{
-    uBit.display.print("C");
-}
-
-void onDisconnected(MicroBitEvent)
-{
-    uBit.display.print("D");
+void onConnected(MicroBitEvent) 
+{ 
+    uBit.display.print("C"); 
+} 
+ 
+void onDisconnected(MicroBitEvent) 
+{ 
+    uBit.display.print("D"); 
+} 
+ 
+int main() 
+{ 
+    // Initialise the micro:bit runtime. 
+    uBit.init(); 
+ 
+    uBit.display.print("X"); 
+ 
+    uBit.messageBus.listen(MICROBIT_ID_BLE, MICROBIT_BLE_EVT_CONNECTED, onConnected); 
+    uBit.messageBus.listen(MICROBIT_ID_BLE, MICROBIT_BLE_EVT_DISCONNECTED, onDisconnected); 
+ 
+    // services: note that the device information service is included by default 
+    // see config.json property microbit-dal.bluetooth. device_info_service 
+ 
+    new MicroBitAccelerometerService(*uBit.ble, uBit.accelerometer); 
+    new MicroBitLEDService(*uBit.ble, uBit.display); 
+    new MicroBitTemperatureService(*uBit.ble, uBit.thermometer);
+ 
+    release_fiber(); 
 }
-
-void animationControl(MicroBitEvent e)
-{
-    if (e.value == ANIMATION_CONTROL_START) {
-        if (my_animator.playing == 0) {
-            my_animator.start();
-            create_fiber(animationLoop);        
-        }
-        return;
-    }    
-    if (e.value == ANIMATION_CONTROL_STOP) {
-        my_animator.stop();
-        return;
-    }    
-    if (e.value == ANIMATION_CONTROL_FASTER) {
-        my_animator.faster();
-        return;
-    }    
-    if (e.value == ANIMATION_CONTROL_SLOWER) {
-        my_animator.slower();
-        return;
-    }    
-}
-
-void animationType(MicroBitEvent e)
-{
-    my_animator.setAnimationType(e.value);
-}
-
-void onButton(MicroBitEvent e)
-{
-    if (e.source == MICROBIT_ID_BUTTON_B) {
-          uBit.display.scroll(uBit.getName());
-        return;
-    }
-}
-    
-int main()
-{
-    // Initialise the micro:bit runtime.
-    uBit.init();
-
-    // Insert your code here!
-    uBit.display.scroll("A");
-
-    uBit.messageBus.listen(MICROBIT_ID_BLE, MICROBIT_BLE_EVT_CONNECTED, onConnected);
-    uBit.messageBus.listen(MICROBIT_ID_BLE, MICROBIT_BLE_EVT_DISCONNECTED, onDisconnected);
-
-    uBit.messageBus.listen(ANIMATION_CONTROL_EVENT, MICROBIT_EVT_ANY, animationControl);
-    uBit.messageBus.listen(ANIMATION_TYPE_EVENT,    MICROBIT_EVT_ANY, animationType);
-
-    uBit.messageBus.listen(MICROBIT_ID_BUTTON_B, MICROBIT_BUTTON_EVT_CLICK, onButton);
-
-/* NOTES
- * -----
- *
- * Add #include "MicroBitAnimationService.h" to MicroBitBLEManager.h
- *
- * In MicroBitConfig.h:
- *   #define MICROBIT_BLE_OPEN                       1
- *   #define MICROBIT_SD_GATT_TABLE_SIZE             0x500
- *
- * See https://developer.mbed.org/teams/Bluetooth-Low-Energy/code/BLE_GATT_Example/ for additional information on mbed support for Bluetooth low energy
- *
- */
-    new MicroBitAnimationService(*uBit.ble);
-
-    // If main exits, there may still be other fibers running or registered event handlers etc.
-    // Simply release this fiber, which will mean we enter the scheduler. Worse case, we then
-    // sit in the idle task forever, in a power efficient sleep.
-    release_fiber();
-}