DesignForAmputee hw 5 project
Dependencies: mbed BLE_API nRF51822
Revision 4:0ebd5e43da47, committed 2014-11-07
- Comitter:
- jstroud
- Date:
- Fri Nov 07 23:34:15 2014 +0000
- Parent:
- 3:436ef162bf2d
- Child:
- 5:46dd21736d36
- Commit message:
- power + temp test for nordic
Changed in this revision
--- a/BLE_API.lib Thu Nov 06 06:56:04 2014 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,1 +0,0 @@ -http://mbed.org/teams/Bluetooth-Low-Energy/code/BLE_API/#fede41ce9407
--- a/main.cpp Thu Nov 06 06:56:04 2014 +0000 +++ b/main.cpp Fri Nov 07 23:34:15 2014 +0000 @@ -1,91 +1,21 @@ #include "mbed.h" -#include "BLEDevice.h" - -#include "UARTService.h" - -#define NEED_CONSOLE_OUTPUT 1 /* Set this if you need debug messages on the console; - * it will have an impact on code-size and power consumption. */ +DigitalOut myled(LED1); +DigitalOut power(P0_0); // brown + +AnalogIn tempPin(P0_1); // purple +float temp; Serial pc(USBTX, USBRX); -#if NEED_CONSOLE_OUTPUT -#define DEBUG(...) { pc.printf(__VA_ARGS__); } -#else -#define DEBUG(...) /* nothing */ -#endif /* #if NEED_CONSOLE_OUTPUT */ - -BLEDevice ble; -DigitalOut led1(LED1); -DigitalOut led2(LED2); -DigitalOut powerSwitch(P0_0); - -AnalogIn tempPin(P0_2); - -UARTService *uartServicePtr; - -void disconnectionCallback(Gap::Handle_t handle, Gap::DisconnectionReason_t reason) -{ - DEBUG("Disconnected!\n\r"); - DEBUG("Restarting the advertising process\n\r"); - ble.startAdvertising(); -} - -void onDataWritten(const GattCharacteristicWriteCBParams *params) -{ - if ((uartServicePtr != NULL) && (params->charHandle == uartServicePtr->getTXCharacteristicHandle())) { - float temp = tempPin.read(); // temperature, not temporary - - uint16_t bytesRead = params->len; - DEBUG("received %u bytes\n\r", bytesRead); - DEBUG("first byte received: %u\n\r", params->data[0]); - uint8_t on = '1'; - uint8_t off = '0'; - if (params->data[0] == on) { - led2 = 1; - powerSwitch = 1; - } else if (params->data[0] == off) { - led2 = 0; - powerSwitch = 0; - } - ble.updateCharacteristicValue(uartServicePtr->getRXCharacteristicHandle(), params->data, bytesRead); +int main() { + while(1) { + myled = 1; + wait(0.2); + myled = 0; + wait(0.2); + power = 1; + temp = tempPin.read(); + pc.printf("%f\n",temp); } } - -void periodicCallback(void) -{ - led1 = !led1; -} - -int main(void) -{ - led1 = 1; - led2 = 0; - powerSwitch = 0; - Ticker ticker; - ticker.attach(periodicCallback, 1); - - DEBUG("Initialising the nRF51822\n\r"); - ble.init(); - ble.onDisconnection(disconnectionCallback); - ble.onDataWritten(onDataWritten); - - /* setup advertising */ - ble.accumulateAdvertisingPayload(GapAdvertisingData::BREDR_NOT_SUPPORTED); - ble.setAdvertisingType(GapAdvertisingParams::ADV_CONNECTABLE_UNDIRECTED); - ble.accumulateAdvertisingPayload(GapAdvertisingData::SHORTENED_LOCAL_NAME, - (const uint8_t *)"pgao", sizeof("pgao") - 1); - ble.accumulateAdvertisingPayload(GapAdvertisingData::COMPLETE_LIST_128BIT_SERVICE_IDS, - (const uint8_t *)UARTServiceUUID_reversed, sizeof(UARTServiceUUID_reversed)); - - ble.setAdvertisingInterval(160); /* 100ms; in multiples of 0.625ms. */ - ble.startAdvertising(); - - UARTService uartService(ble); - uartServicePtr = &uartService; - - while (true) { - ble.waitForEvent(); - } -} - \ No newline at end of file
--- a/nRF51822.lib Thu Nov 06 06:56:04 2014 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,1 +0,0 @@ -http://developer.mbed.org/users/pgao/code/nRF51822/#c36c550b7208