Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: BLE_API mbed nRF51822
Fork of UART_TEMPLATE by
Revision 1:32c6991f7180, committed 2017-06-21
- Comitter:
- VicenteFerrara
- Date:
- Wed Jun 21 01:33:50 2017 +0000
- Parent:
- 0:442c7a6f1978
- Commit message:
- Leer caracter?stica y responder en base a ello
Changed in this revision
| main.cpp | Show annotated file Show diff for this revision Revisions of this file |
--- a/main.cpp Mon Dec 15 21:05:18 2014 -0800
+++ b/main.cpp Wed Jun 21 01:33:50 2017 +0000
@@ -23,16 +23,17 @@
#define SENSOR_READ_INTERVAL_S (0.5F)
#define ADV_INTERVAL_MS (1000UL)
#define UART_BAUD_RATE (19200UL)
-#define DEVICE_NAME ("DEMO SENSOR") // This can be read AFTER connecting to the device.
-#define SHORT_NAME ("HACKDEMO") // Keep this short: max 8 chars if a 128bit UUID is also advertised.
+#define DEVICE_NAME ("EVA") // This can be read AFTER connecting to the device.
+#define SHORT_NAME ("EVA") // Keep this short: max 8 chars if a 128bit UUID is also advertised.
#define DEBUG(...) { m_serial_port.printf(__VA_ARGS__); }
+//static const char DEVICE_NAME[] = "EVA";
BLEDevice m_ble;
Serial m_serial_port(p9, p11); // TX pin, RX pin
-DigitalOut m_cmd_led(LED1);
-DigitalOut m_error_led(LED2);
+Serial pc(USBTX, USBRX); // tx, rx
+DigitalOut led1(LED1);
AnalogIn m_analog_in(p1);
uint16_t m_analog_in_value;
UARTService *m_uart_service_ptr;
@@ -68,17 +69,24 @@
// Ensure that initialization is finished and the host has written to the TX characteristic.
if ((m_uart_service_ptr != NULL) && (params->charHandle == m_uart_service_ptr->getTXCharacteristicHandle())) {
uint8_t buf[MAX_REPLY_LEN];
+ uint8_t buf2[3]= {0xFF, 0x01, 0x02};
uint32_t len = 0;
-
+
if (1 == params->len) {
switch (params->data[0]) {
case '0':
- m_cmd_led = 0;
len = snprintf((char*) buf, MAX_REPLY_LEN, "OK");
+ pc.printf("Si llego prro\n");
break;
- case '1':
- m_cmd_led = 1;
- len = snprintf((char*) buf, MAX_REPLY_LEN, "OK");
+ case 1:
+ led1 = 1;
+ wait(1.0);
+ led1 = 0;
+ wait(1.0);
+ led1 = 1;
+ wait(1.0);
+ led1 = 0;
+ len = snprintf((char*) buf, MAX_REPLY_LEN, "prrow");
break;
case 'a':
len = snprintf((char*) buf, MAX_REPLY_LEN, "%d", m_analog_in_value);
@@ -92,8 +100,8 @@
{
len = snprintf((char*) buf, MAX_REPLY_LEN, "ERROR: Invalid len");
}
-
- m_ble.updateCharacteristicValue(m_uart_service_ptr->getRXCharacteristicHandle(), buf, len);
+ //m_ble.updateCharacteristicValue(m_uart_service_ptr->getRXCharacteristicHandle(), buf, len);
+ m_ble.updateCharacteristicValue(m_uart_service_ptr->getRXCharacteristicHandle(), buf2, 3);
DEBUG("%d bytes received from host\n\r", params->len);
}
@@ -121,7 +129,7 @@
void error(ble_error_t err, uint32_t line)
{
- m_error_led = 1;
+ //m_error_led = 1;
DEBUG("Error %d on line number %d\n\r", err, line);
}
@@ -135,8 +143,7 @@
DEBUG("Initialising\n\r");
- m_cmd_led = 0;
- m_error_led = 0;
+ led1 = 0;
m_analog_in_value = 0;
ticker.attach(periodicCallback, SENSOR_READ_INTERVAL_S);
