Simple demo application demonstrating use of Nucleo_BLE_DemoApp

Dependencies:   Nucleo_BLE_API Nucleo_BLE_BlueNRG Nucleo_BLE_DemoApp mbed

Committer:
berlingeradam
Date:
Wed May 27 18:59:24 2015 +0000
Revision:
0:d450c9945f96
Simple demo application

Who changed what in which revision?

UserRevisionLine numberNew contents of line
berlingeradam 0:d450c9945f96 1 /* Bluetooth low energy demo application
berlingeradam 0:d450c9945f96 2 * Copyright (c) 2015 Adam Berlinger
berlingeradam 0:d450c9945f96 3 *
berlingeradam 0:d450c9945f96 4 * Licensed under the Apache License, Version 2.0 (the "License");
berlingeradam 0:d450c9945f96 5 * you may not use this file except in compliance with the License.
berlingeradam 0:d450c9945f96 6 * You may obtain a copy of the License at
berlingeradam 0:d450c9945f96 7 *
berlingeradam 0:d450c9945f96 8 * http://www.apache.org/licenses/LICENSE-2.0
berlingeradam 0:d450c9945f96 9 *
berlingeradam 0:d450c9945f96 10 * Unless required by applicable law or agreed to in writing, software
berlingeradam 0:d450c9945f96 11 * distributed under the License is distributed on an "AS IS" BASIS,
berlingeradam 0:d450c9945f96 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
berlingeradam 0:d450c9945f96 13 * See the License for the specific language governing permissions and
berlingeradam 0:d450c9945f96 14 * limitations under the License.
berlingeradam 0:d450c9945f96 15 */
berlingeradam 0:d450c9945f96 16
berlingeradam 0:d450c9945f96 17 #include "mbed.h"
berlingeradam 0:d450c9945f96 18 #include "DemoAppService.h"
berlingeradam 0:d450c9945f96 19
berlingeradam 0:d450c9945f96 20
berlingeradam 0:d450c9945f96 21 extern bool user_button_pressed;
berlingeradam 0:d450c9945f96 22 bool connected = false;
berlingeradam 0:d450c9945f96 23 bool UpdatedEnabled = false;
berlingeradam 0:d450c9945f96 24
berlingeradam 0:d450c9945f96 25 DemoAppService *demoService;
berlingeradam 0:d450c9945f96 26 PwmOut led(LED1);
berlingeradam 0:d450c9945f96 27
berlingeradam 0:d450c9945f96 28 void demoCallback(uint8_t event){
berlingeradam 0:d450c9945f96 29 /* Nastaveni stridy PWM signalu */
berlingeradam 0:d450c9945f96 30 if(event & DemoAppService::EVENT_SLIDER1_CHANGED){
berlingeradam 0:d450c9945f96 31 int x = 1 << (demoService->getSlider1Value() / 10);
berlingeradam 0:d450c9945f96 32 led.write((float)(x / (float)(1 << 10)));
berlingeradam 0:d450c9945f96 33 }
berlingeradam 0:d450c9945f96 34 /* Nastaveni periody PWM signalu */
berlingeradam 0:d450c9945f96 35 if(event & DemoAppService::EVENT_SLIDER2_CHANGED){
berlingeradam 0:d450c9945f96 36 led.period(1.0f / (demoService->getSlider2Value() + 1));
berlingeradam 0:d450c9945f96 37 }
berlingeradam 0:d450c9945f96 38 }
berlingeradam 0:d450c9945f96 39
berlingeradam 0:d450c9945f96 40 int main(void)
berlingeradam 0:d450c9945f96 41 {
berlingeradam 0:d450c9945f96 42 demoService = startDemoBLE("Demo App");
berlingeradam 0:d450c9945f96 43 demoService->setCallback(demoCallback);
berlingeradam 0:d450c9945f96 44
berlingeradam 0:d450c9945f96 45 led = 0.0f;
berlingeradam 0:d450c9945f96 46
berlingeradam 0:d450c9945f96 47 while (true)
berlingeradam 0:d450c9945f96 48 {
berlingeradam 0:d450c9945f96 49 demoService->waitForEvent();
berlingeradam 0:d450c9945f96 50 }
berlingeradam 0:d450c9945f96 51 }