Donghun Kang / Mbed 2 deprecated 20190105_I2C

Dependencies:   mbed Adafruit_GFX

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers main.cpp Source File

main.cpp

00001 #include "mbed.h"
00002 #include "Adafruit_SSD1306.h"
00003 
00004 DigitalOut myled(LED1);
00005 
00006 #define PR_3
00007 
00008 #ifdef Test
00009 int main()
00010 {
00011     I2C     I2C_Oled(PB_7, PA_15);
00012     I2C_Oled.frequency(400000);
00013     
00014     Adafruit_SSD1306_I2c    myOled(I2C_Oled, PA_1);
00015     myOled.splash();
00016     myOled.display();
00017     wait(0.5);
00018     
00019     myOled.clearDisplay();
00020     myOled.printf("%u x %u OLED Display\r\n", myOled.width(), myOled.height());
00021     myOled.display();
00022     wait(1);
00023     
00024     uint16_t n = 0;
00025     
00026     while(1)
00027     {
00028         myled = !myled;
00029         myOled.clearDisplay();
00030         myOled.setTextCursor(1,5);
00031         myOled.printf("<<< UNIST DHE: %u >>>", n++);
00032         myOled.display();
00033         wait(0.1);
00034     }
00035 } 
00036 #endif
00037 
00038 #ifdef PR_1
00039 int main()
00040 {
00041     I2C     I2C_Oled(PB_7, PA_15);
00042     I2C_Oled.frequency(400000);
00043     
00044     Adafruit_SSD1306_I2c    myOled(I2C_Oled, PA_1);
00045     myOled.splash();
00046     myOled.display();
00047     wait(0.5);
00048     
00049     myOled.clearDisplay();
00050     myOled.printf("%u x %u OLED Display\r\n", myOled.width(), myOled.height());
00051     myOled.display();
00052     wait(1);
00053     
00054     while(1)
00055     {
00056         myOled.clearDisplay();
00057         myOled.setTextCursor(1,5);
00058         myled = !myled;
00059         
00060         myOled.display();
00061     }
00062 } 
00063 #endif
00064 
00065 #ifdef PR_2
00066 int main()
00067 {
00068     I2C     I2C_Oled(PB_7, PA_15);
00069     I2C_Oled.frequency(400000);
00070     
00071     Adafruit_SSD1306_I2c    myOled(I2C_Oled, PA_1);
00072     myOled.splash();
00073     myOled.display();
00074     wait(0.5);
00075     
00076     myOled.clearDisplay();
00077     myOled.printf("%u x %u OLED Display\r\n", myOled.width(), myOled.height());
00078     myOled.display();
00079     wait(1);
00080     
00081     while(1)
00082     {
00083         myOled.clearDisplay();
00084         myOled.setTextSize(3);
00085         myOled.setTextColor(BLACK, WHITE);
00086         myOled.setTextCursor(1,1);
00087         myOled.printf("Read This?");
00088         myOled.display();
00089         wait(1); 
00090         myOled.clearDisplay();
00091         myOled.setTextSize(2);
00092         myOled.setTextColor(BLACK, WHITE);
00093         myOled.setTextCursor(1,1);
00094         myOled.printf("How About This?");
00095         myOled.display();
00096         wait(1);
00097         myOled.clearDisplay();
00098         myOled.setTextSize(1);
00099         myOled.setTextColor(BLACK, WHITE);
00100         myOled.setTextCursor(1,1);
00101         myOled.printf("Really?");
00102         myOled.display();
00103         wait(1);
00104         myOled.clearDisplay();
00105         myOled.setTextColor(WHITE);
00106         myOled.setTextCursor(0,0);
00107         myOled.setTextSize(1);
00108         myOled.printf("A");
00109         myOled.setTextSize(2);
00110         myOled.printf("A");
00111         myOled.setTextSize(3);
00112         myOled.printf("A");
00113         myOled.setTextSize(4);
00114         myOled.printf("A");
00115         myOled.setTextSize(5);
00116         myOled.printf("A");
00117         myOled.setTextSize(6);
00118         myOled.printf("A");
00119         myOled.display();
00120         wait(1);
00121         myOled.clearDisplay();
00122         myOled.clearDisplay(); 
00123         myOled.drawRect(100, 10, 20, 20, WHITE);
00124         myOled.display();
00125         wait(1);
00126         myOled.fillRect(10, 10, 45, 15, WHITE);
00127         myOled.display();
00128         wait(1);
00129         myOled.drawRoundRect(60, 20, 35, 35, 8, WHITE);
00130         myOled.display();
00131         wait(1);
00132         myOled.drawCircle(60, 30, 30, WHITE);
00133         myOled.display();
00134         wait(1);
00135         myOled.fillCircle(100, 20, 5, WHITE);
00136         myOled.display();
00137         wait(1);
00138         myOled.fillCircle(70, 20, 5, WHITE);
00139         myOled.display();
00140         wait(1);
00141         myOled.drawTriangle(24, 1, 3, 55, 45, 55, WHITE);
00142         myOled.display();
00143         wait(1);
00144         myOled.fillTriangle(104, 62, 125, 9, 83, 9, WHITE);
00145         myOled.display();
00146         wait(1);
00147     }
00148 } 
00149 #endif
00150 
00151 #ifdef PR_3
00152 int main()
00153 {
00154     I2C     I2C_Oled(PB_7, PA_15);
00155     I2C_Oled.frequency(400000);
00156     
00157     Adafruit_SSD1306_I2c    myOled(I2C_Oled, PA_1);
00158     myOled.splash();
00159     myOled.display();
00160     wait(0.5);
00161     
00162     myOled.clearDisplay();
00163     myOled.printf("%u x %u OLED Display\r\n", myOled.width(), myOled.height());
00164     myOled.display();
00165     wait(1);
00166     
00167     static const unsigned char panda[] =
00168 {
00169 
00170 };
00171     while(1)
00172     {
00173         myOled.clearDisplay();
00174         myOled.drawBitmap(32,16,panda, 64, 32, WHITE);
00175         myOled.display();
00176         wait(0.5);
00177     }
00178 } 
00179 #endif