Color Oled(SSD1331) connect to STMicroelectronics Nucleo-F466

Dependencies:   ssd1331

Revision:
0:8fdf9a60065b
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mbed-os/TESTS/mbedmicro-mbed/cpp/main.cpp	Wed Oct 10 00:33:53 2018 +0000
@@ -0,0 +1,105 @@
+/* mbed Microcontroller Library
+ * Copyright (c) 2017 ARM Limited
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+#include "greentea-client/test_env.h"
+
+#define PATTERN_CHECK_VALUE  0xF0F0ADAD
+
+class Test {
+
+private:
+    const char *name;
+    const int pattern;
+
+public:
+    Test(const char *_name, bool print_message = true) : name(_name), pattern(PATTERN_CHECK_VALUE)
+    {
+        if (print_message) {
+            print("init");
+        }
+    }
+
+    void print(const char *message)
+    {
+        printf("%s::%s\n", name, message);
+    }
+
+    bool check_init(void)
+    {
+        bool result = (pattern == PATTERN_CHECK_VALUE);
+        print(result ? "check_init: OK" : "check_init: ERROR");
+        return result;
+    }
+
+    void stack_test(void)
+    {
+        print("stack_test");
+        Test t("Stack");
+        t.hello();
+    }
+
+    void hello(void)
+    {
+        print("hello");
+    }
+
+    ~Test()
+    {
+        print("destroy");
+    }
+};
+
+/* Check C++ startup initialisation */
+Test s("Static", false);
+
+/* EXPECTED OUTPUT:
+*******************
+Static::init
+Static::stack_test
+Stack::init
+Stack::hello
+Stack::destroy
+Static::check_init: OK
+Heap::init
+Heap::hello
+Heap::destroy
+*******************/
+int main(void)
+{
+    GREENTEA_SETUP(10, "default_auto");
+
+    bool result = true;
+    for (;;) {
+        s.print("init");
+        // Global stack object simple test
+        s.stack_test();
+        if (s.check_init() == false) {
+            result = false;
+            break;
+        }
+
+        // Heap test object simple test
+        Test *m = new Test("Heap");
+        m->hello();
+
+        if (m->check_init() == false) {
+            result = false;
+        }
+        delete m;
+        break;
+    }
+
+    GREENTEA_TESTSUITE_RESULT(result);
+}