Juri Pfammatter / AdafruitOLED128x64
Committer:
pfammjur
Date:
Mon Apr 19 19:21:26 2021 +0000
Revision:
17:b116da3bffbb
Child:
18:6ab8b740e55a
1st running display test.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
pfammjur 17:b116da3bffbb 1 /*
pfammjur 17:b116da3bffbb 2 * Copyright (c) 2012 Neal Horman - http://www.wanlink.com
pfammjur 17:b116da3bffbb 3 *
pfammjur 17:b116da3bffbb 4 * License: MIT open source (http://opensource.org/licenses/MIT)
pfammjur 17:b116da3bffbb 5 * Summary;
pfammjur 17:b116da3bffbb 6 * Use / modify / distribute / publish it how you want and
pfammjur 17:b116da3bffbb 7 * if you use it, or don't, you can't hold me liable for how
pfammjur 17:b116da3bffbb 8 * it does or doesn't work.
pfammjur 17:b116da3bffbb 9 * If it doesn't work how you want, don't use it, or change
pfammjur 17:b116da3bffbb 10 * it so that it does work.
pfammjur 17:b116da3bffbb 11 */
pfammjur 17:b116da3bffbb 12
pfammjur 17:b116da3bffbb 13 #include "mbed.h"
pfammjur 17:b116da3bffbb 14 #include "Adafruit_SSD1306.h"
pfammjur 17:b116da3bffbb 15 #include "platform/mbed_thread.h" //Muss immer rein
pfammjur 17:b116da3bffbb 16 #define SCREEN_ADRESS 0x3D
pfammjur 17:b116da3bffbb 17
pfammjur 17:b116da3bffbb 18 DigitalOut myled(LED1);
pfammjur 17:b116da3bffbb 19 static BufferedSerial pc(USBTX, USBRX); //pc Seriel für baud
pfammjur 17:b116da3bffbb 20
pfammjur 17:b116da3bffbb 21 using namespace std::chrono; //Namespce für printf
pfammjur 17:b116da3bffbb 22
pfammjur 17:b116da3bffbb 23
pfammjur 17:b116da3bffbb 24
pfammjur 17:b116da3bffbb 25 // an I2C sub-class that provides a constructed default
pfammjur 17:b116da3bffbb 26 class I2CPreInit : public I2C
pfammjur 17:b116da3bffbb 27 {
pfammjur 17:b116da3bffbb 28 public:
pfammjur 17:b116da3bffbb 29 I2CPreInit(PinName sda, PinName scl) : I2C(sda, scl)
pfammjur 17:b116da3bffbb 30 {
pfammjur 17:b116da3bffbb 31 frequency(400000);
pfammjur 17:b116da3bffbb 32 //start();
pfammjur 17:b116da3bffbb 33 };
pfammjur 17:b116da3bffbb 34 };
pfammjur 17:b116da3bffbb 35
pfammjur 17:b116da3bffbb 36
pfammjur 17:b116da3bffbb 37 I2CPreInit gI2C(I2C_SDA, I2C_SCL); //I2CPreInit gI2C(d9,d10);
pfammjur 17:b116da3bffbb 38 Adafruit_SSD1306_I2c gOled2(gI2C,D4,0x7A,64,128); //Adafruit_SSD1306_I2c gOled2(gI2C,p27);
pfammjur 17:b116da3bffbb 39
pfammjur 17:b116da3bffbb 40 int main()
pfammjur 17:b116da3bffbb 41 { uint16_t i=0;
pfammjur 17:b116da3bffbb 42 //gOled2.begin(SSD1306_SWITCHCAPVCC);
pfammjur 17:b116da3bffbb 43 thread_sleep_for(1000);
pfammjur 17:b116da3bffbb 44 pc.set_baud(9600); //baudrate
pfammjur 17:b116da3bffbb 45 gOled2.clearDisplay();
pfammjur 17:b116da3bffbb 46 gOled2.drawPixel (10, 10,WHITE);
pfammjur 17:b116da3bffbb 47 gOled2.display();
pfammjur 17:b116da3bffbb 48 thread_sleep_for(1000);
pfammjur 17:b116da3bffbb 49 gOled2.clearDisplay();
pfammjur 17:b116da3bffbb 50 while(true)
pfammjur 17:b116da3bffbb 51 {
pfammjur 17:b116da3bffbb 52 gOled2.setTextCursor(0,0);
pfammjur 17:b116da3bffbb 53 gOled2.printf("%ux%u OLED Display\r\n", gOled2.width(), gOled2.height());
pfammjur 17:b116da3bffbb 54 gOled2.printf("Hello World\n");
pfammjur 17:b116da3bffbb 55 gOled2.printf("Laufnr.: %d\r",i);
pfammjur 17:b116da3bffbb 56 gOled2.display();
pfammjur 17:b116da3bffbb 57 i++;
pfammjur 17:b116da3bffbb 58 myled = !myled;
pfammjur 17:b116da3bffbb 59 thread_sleep_for(1000);
pfammjur 17:b116da3bffbb 60 gOled2.clearDisplay();
pfammjur 17:b116da3bffbb 61 //printf("%d",i);
pfammjur 17:b116da3bffbb 62 }
pfammjur 17:b116da3bffbb 63 }