a

Dependencies:   BraccialeSlave FTHR_OLED

Revision:
9:ecdad18f61c2
Parent:
8:1d48f139567d
Child:
10:1f5e78dd4a7c
--- a/main.cpp	Tue Feb 07 23:17:38 2017 +0000
+++ b/main.cpp	Wed Feb 08 00:14:26 2017 +0000
@@ -1,3 +1,35 @@
+/**********************************************************************
+* Copyright (C) 2016 Maxim Integrated Products, Inc., All Rights Reserved.
+*
+* Permission is hereby granted, free of charge, to any person obtaining a
+* copy of this software and associated documentation files (the "Software"),
+* to deal in the Software without restriction, including without limitation
+* the rights to use, copy, modify, merge, publish, distribute, sublicense,
+* and/or sell copies of the Software, and to permit persons to whom the
+* Software is furnished to do so, subject to the following conditions:
+*
+* The above copyright notice and this permission notice shall be included
+* in all copies or substantial portions of the Software.
+*
+* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
+* OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
+* IN NO EVENT SHALL MAXIM INTEGRATED BE LIABLE FOR ANY CLAIM, DAMAGES
+* OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
+* ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+* OTHER DEALINGS IN THE SOFTWARE.
+*
+* Except as contained in this notice, the name of Maxim Integrated
+* Products, Inc. shall not be used except as stated in the Maxim Integrated
+* Products, Inc. Branding Policy.
+*
+* The mere transfer of this software does not imply any licenses
+* of trade secrets, proprietary technology, copyrights, patents,
+* trademarks, maskwork rights, or any other form of intellectual
+* property whatsoever. Maxim Integrated Products, Inc. retains all
+* ownership rights.
+**********************************************************************/
+
 #include "mbed.h"
 #include "max32630fthr.h"
 #include "Adafruit_SSD1306.h"
@@ -7,7 +39,7 @@
 
 I2C i2c(P3_4, P3_5); // SDA, SCL
 
-Adafruit_SSD1306_I2c featherOLED(i2c, P2_7);  //I2C, RST
+Adafruit_SSD1306_I2c featherOLED(i2c);  // I2C
 
 // Hardware serial port over DAPLink
 Serial daplink(P2_1, P2_0);
@@ -19,9 +51,18 @@
 DigitalOut gLED(LED2);
 DigitalOut bLED(LED3);
 
-AnalogIn ain0(AIN_4);
-AnalogIn ain1(AIN_5);
-AnalogIn ain2(AIN_2);
+DigitalIn aButton(P5_3, PullUp);
+DigitalIn bButton(P3_3, PullUp);
+DigitalIn cButton(P3_2, PullUp);
+
+/* Analog inputs 0 and 1 have internal dividers to allow measuring 5V signals  
+ * The dividers are selected by using inputs AIN_5 and AIN_5 respectively.
+ * The full scale range for AIN0-3 is 1.2V
+ * The full scale range for AIN4-5 is 6.0V
+ */
+AnalogIn ain0(AIN_4); 
+AnalogIn ain1(AIN_5); 
+AnalogIn ain2(AIN_2); 
 AnalogIn ain3(AIN_3);
 
 
@@ -56,13 +97,15 @@
             microUSB.putc(c);
             daplink.putc(c);
         }
-        bLED = c & 1;
+        rLED = aButton;
+        gLED = bButton;
+        bLED = cButton;
         featherOLED.clearDisplay();
         featherOLED.setTextCursor(0,0);
         featherOLED.printf("MAX32630FTHR OLED\n");
-        featherOLED.printf("AIN0/1: %1.3f, %1.3f\n", (6.0f * ain0), (6.0f * ain1) );  // analog inputs 0,1
-        featherOLED.printf("AIN2/3: %1.3f, %1.3f\n", (1.2f * ain2), (1.2f * ain3) );  // analog inputs 2,3
-        featherOLED.printf("CHAR: %c\n", c);  // character recieved
+        featherOLED.printf("AIN0/1: %1.2f, %1.2f\n", (6.0f * ain0), (6.0f * ain1) );  // analog inputs 0,1
+        featherOLED.printf("AIN2/3: %1.2f, %1.2f\n", (1.2f * ain2), (1.2f * ain3) );  // analog inputs 2,3
+        featherOLED.printf("UART:%c  A:%d  B:%d  C:%d\n", c, aButton.read(), bButton.read(), cButton.read());  // UART and Buttons
         featherOLED.display();
 
     }