displaying on SSD1306, 128x64 pixels OLED

Dependencies:   microbit

Committer:
bvirk
Date:
Tue Feb 25 20:59:35 2020 +0000
Revision:
12:b4d5e007640e
Parent:
6:c69f08f464b5
doc removed from cpp files

Who changed what in which revision?

UserRevisionLine numberNew contents of line
bvirk 6:c69f08f464b5 1 #include "MicroBit.h"
bvirk 6:c69f08f464b5 2 #include "MicroBitPin.h"
bvirk 6:c69f08f464b5 3
bvirk 6:c69f08f464b5 4 #include "common.h"
bvirk 6:c69f08f464b5 5
bvirk 6:c69f08f464b5 6
bvirk 6:c69f08f464b5 7 void example_OLED() {
bvirk 6:c69f08f464b5 8 oled.init();
bvirk 6:c69f08f464b5 9
bvirk 6:c69f08f464b5 10 oled.puts("*** VOLTMETER ****\n\n");
bvirk 6:c69f08f464b5 11 char spin[] = "|/-\\";
bvirk 6:c69f08f464b5 12 uint8_t si=0;
bvirk 6:c69f08f464b5 13 float oldVoltage=0;
bvirk 6:c69f08f464b5 14 while(true) {
bvirk 6:c69f08f464b5 15 uint16_t samples =uBit.io.P0.getAnalogValue();
bvirk 6:c69f08f464b5 16
bvirk 6:c69f08f464b5 17 float voltage = 3.3*samples/1023;
bvirk 6:c69f08f464b5 18 int8_t dir = voltage - oldVoltage > 0.01
bvirk 6:c69f08f464b5 19 ? 1
bvirk 6:c69f08f464b5 20 : voltage - oldVoltage < -0.01
bvirk 6:c69f08f464b5 21 ? -1
bvirk 6:c69f08f464b5 22 : 0;
bvirk 6:c69f08f464b5 23 if (dir) {
bvirk 6:c69f08f464b5 24 si = (si+dir) & 3;
bvirk 6:c69f08f464b5 25 oldVoltage=voltage;
bvirk 6:c69f08f464b5 26 }
bvirk 6:c69f08f464b5 27 oled.printf("\r%c %03.2f volt ",spin[si],voltage);
bvirk 6:c69f08f464b5 28
bvirk 6:c69f08f464b5 29 }
bvirk 6:c69f08f464b5 30 }
bvirk 6:c69f08f464b5 31
bvirk 6:c69f08f464b5 32