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.
OLEDTest.cpp@18:6ab8b740e55a, 2021-04-26 (annotated)
- Committer:
- pfammjur
- Date:
- Mon Apr 26 07:54:19 2021 +0000
- Revision:
- 18:6ab8b740e55a
- Parent:
- 17:b116da3bffbb
OLED Test;
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
pfammjur | 17:b116da3bffbb | 1 | #include "mbed.h" |
pfammjur | 17:b116da3bffbb | 2 | #include "Adafruit_SSD1306.h" |
pfammjur | 18:6ab8b740e55a | 3 | #include "platform/mbed_thread.h" |
pfammjur | 17:b116da3bffbb | 4 | #define SCREEN_ADRESS 0x3D |
pfammjur | 17:b116da3bffbb | 5 | |
pfammjur | 17:b116da3bffbb | 6 | DigitalOut myled(LED1); |
pfammjur | 17:b116da3bffbb | 7 | static BufferedSerial pc(USBTX, USBRX); //pc Seriel für baud |
pfammjur | 17:b116da3bffbb | 8 | |
pfammjur | 17:b116da3bffbb | 9 | using namespace std::chrono; //Namespce für printf |
pfammjur | 17:b116da3bffbb | 10 | |
pfammjur | 17:b116da3bffbb | 11 | |
pfammjur | 17:b116da3bffbb | 12 | |
pfammjur | 17:b116da3bffbb | 13 | // an I2C sub-class that provides a constructed default |
pfammjur | 17:b116da3bffbb | 14 | class I2CPreInit : public I2C |
pfammjur | 17:b116da3bffbb | 15 | { |
pfammjur | 17:b116da3bffbb | 16 | public: |
pfammjur | 17:b116da3bffbb | 17 | I2CPreInit(PinName sda, PinName scl) : I2C(sda, scl) |
pfammjur | 17:b116da3bffbb | 18 | { |
pfammjur | 17:b116da3bffbb | 19 | frequency(400000); |
pfammjur | 17:b116da3bffbb | 20 | //start(); |
pfammjur | 17:b116da3bffbb | 21 | }; |
pfammjur | 17:b116da3bffbb | 22 | }; |
pfammjur | 17:b116da3bffbb | 23 | |
pfammjur | 17:b116da3bffbb | 24 | |
pfammjur | 18:6ab8b740e55a | 25 | I2CPreInit gI2C(I2C_SDA, I2C_SCL); |
pfammjur | 18:6ab8b740e55a | 26 | Adafruit_SSD1306_I2c gOled2(gI2C,D4,0x7A,64,128); //D4: Adresse für reset, 0x7A: I2C Adresse |
pfammjur | 17:b116da3bffbb | 27 | |
pfammjur | 17:b116da3bffbb | 28 | int main() |
pfammjur | 17:b116da3bffbb | 29 | { uint16_t i=0; |
pfammjur | 17:b116da3bffbb | 30 | thread_sleep_for(1000); |
pfammjur | 18:6ab8b740e55a | 31 | pc.set_baud(9600); //baudrate |
pfammjur | 17:b116da3bffbb | 32 | gOled2.clearDisplay(); |
pfammjur | 17:b116da3bffbb | 33 | gOled2.drawPixel (10, 10,WHITE); |
pfammjur | 17:b116da3bffbb | 34 | gOled2.display(); |
pfammjur | 17:b116da3bffbb | 35 | thread_sleep_for(1000); |
pfammjur | 17:b116da3bffbb | 36 | gOled2.clearDisplay(); |
pfammjur | 17:b116da3bffbb | 37 | while(true) |
pfammjur | 17:b116da3bffbb | 38 | { |
pfammjur | 17:b116da3bffbb | 39 | gOled2.setTextCursor(0,0); |
pfammjur | 17:b116da3bffbb | 40 | gOled2.printf("%ux%u OLED Display\r\n", gOled2.width(), gOled2.height()); |
pfammjur | 17:b116da3bffbb | 41 | gOled2.printf("Hello World\n"); |
pfammjur | 17:b116da3bffbb | 42 | gOled2.printf("Laufnr.: %d\r",i); |
pfammjur | 17:b116da3bffbb | 43 | gOled2.display(); |
pfammjur | 17:b116da3bffbb | 44 | i++; |
pfammjur | 17:b116da3bffbb | 45 | myled = !myled; |
pfammjur | 17:b116da3bffbb | 46 | thread_sleep_for(1000); |
pfammjur | 17:b116da3bffbb | 47 | gOled2.clearDisplay(); |
pfammjur | 17:b116da3bffbb | 48 | } |
pfammjur | 17:b116da3bffbb | 49 | } |