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: max32630fthr Adafruit_FeatherOLED USBDevice
Diff: main.cpp
- Revision:
- 8:1d48f139567d
- Parent:
- 6:684c51f32c1d
- Child:
- 9:ecdad18f61c2
--- a/main.cpp Mon Feb 06 23:40:01 2017 +0000
+++ b/main.cpp Tue Feb 07 23:17:38 2017 +0000
@@ -1,9 +1,14 @@
#include "mbed.h"
#include "max32630fthr.h"
+#include "Adafruit_SSD1306.h"
#include "USBSerial.h"
MAX32630FTHR pegasus(MAX32630FTHR::VIO_3V3);
+I2C i2c(P3_4, P3_5); // SDA, SCL
+
+Adafruit_SSD1306_I2c featherOLED(i2c, P2_7); //I2C, RST
+
// Hardware serial port over DAPLink
Serial daplink(P2_1, P2_0);
@@ -14,11 +19,18 @@
DigitalOut gLED(LED2);
DigitalOut bLED(LED3);
+AnalogIn ain0(AIN_4);
+AnalogIn ain1(AIN_5);
+AnalogIn ain2(AIN_2);
+AnalogIn ain3(AIN_3);
+
+
// main() runs in its own thread in the OS
// (note the calls to Thread::wait below for delays)
int main()
{
int c;
+ c = ' ';
daplink.printf("daplink serial port\r\n");
microUSB.printf("micro USB serial port\r\n");
@@ -26,13 +38,33 @@
gLED = LED_ON;
bLED = LED_OFF;
+ featherOLED.printf("%ux%u OLED Display\r\n", featherOLED.width(), featherOLED.height());
+ featherOLED.printf("HelloWorld \r");
+ featherOLED.display();
+
rLED = LED_OFF;
while(1) {
- c = microUSB.getc();
- microUSB.putc(c);
- daplink.putc(c);
+ Thread::wait(250);
+ if (microUSB.readable()) {
+ c = microUSB.getc();
+ microUSB.putc(c);
+ daplink.putc(c);
+ }
+ if (daplink.readable()) {
+ c = daplink.getc();
+ microUSB.putc(c);
+ daplink.putc(c);
+ }
bLED = c & 1;
+ 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.display();
+
}
}