1+ #include < Arduino.h>
2+ #include " RBCX.h"
3+
4+ void clear (){
5+ rb::Manager::get ().oled ().fill (rb::Oled::Black);
6+ rb::Manager::get ().oled ().updateScreen ();
7+ }
8+
9+ void waitToNextTest () {
10+ delay (3000 );
11+ clear ();
12+ }
13+
14+ void setup () {
15+ printf (" RB3204-RBCX\n " );
16+
17+ delay (500 );
18+
19+ printf (" Init manager\n " );
20+ auto & man = rb::Manager::get ();
21+ man.install ();
22+
23+ man.leds ().red (true );
24+
25+ auto & oled = rb::Manager::get ().oled ();
26+
27+ oled.init (rb::Oled::Oled_128x64, true , false );
28+ // oled.init(rb::Oled::Oled_128x32, true, false);
29+
30+ while (true ) {
31+ // /////// fill ////////////////////////
32+ printf (" fill\n " );
33+ oled.fill (rb::Oled::White);
34+ oled.updateScreen ();
35+ delay (1000 );
36+
37+ oled.fill (rb::Oled::Black);
38+ oled.updateScreen ();
39+ delay (1000 );
40+
41+
42+ // /////// drawPixel ////////////////////////
43+ printf (" drawPixel\n " );
44+ for (int i = 0 ; i<500 ; i++) {
45+ oled.drawPixel (random (0 ,oled.getWidth ()), random (0 , oled.getHeight ()), rb::Oled::White);
46+ }
47+ oled.updateScreen ();
48+ waitToNextTest ();
49+
50+
51+ // /////// setCursor ////////////////////////
52+ // /////// writeString ////////////////////////
53+ printf (" setCursor + writeString\n " );
54+ oled.setCursor (45 , 0 );
55+ oled.writeString (" OLED" , rb::Oled::Font_11x18, rb::Oled::White);
56+
57+ oled.setCursor (5 , oled.getHeight ()/2 );
58+ String text = " OLED w:" + String (oled.getWidth ()) + " | h:" + String (oled.getHeight ());
59+ oled.writeString (text, rb::Oled::Font_7x10, rb::Oled::White);
60+ oled.updateScreen ();
61+ waitToNextTest ();
62+
63+
64+ // /////// drawLine ////////////////////////
65+ printf (" drawLine\n " );
66+ oled.drawLine (0 , 0 , oled.getWidth (), oled.getHeight (), rb::Oled::White);
67+ oled.drawLine (0 , oled.getHeight (), oled.getWidth (), 0 , rb::Oled::White);
68+ oled.updateScreen ();
69+ waitToNextTest ();
70+
71+
72+ // /////// drawArc ////////////////////////
73+ printf (" drawArc\n " );
74+ oled.drawArc (oled.getWidth ()/2 , oled.getHeight ()/2 , 15 , 20 , 270 , rb::Oled::White);
75+ oled.updateScreen ();
76+ waitToNextTest ();
77+
78+
79+ // /////// drawCircle ////////////////////////
80+ printf (" drawCircle\n " );
81+ for (uint32_t delta = 0 ; delta < 5 ; delta ++) {
82+ oled.drawCircle (20 * delta+30 , 15 , 10 , rb::Oled::White);
83+ }
84+ oled.updateScreen ();
85+ waitToNextTest ();
86+
87+ // /////// drawRectangle ////////////////////////
88+ printf (" drawRectangle\n " );
89+ for (int i = 5 ; i< oled.getWidth (); i+=5 ) {
90+ oled.drawRectangle (i, 0 , i+i, oled.getHeight ()-1 , rb::Oled::White);
91+ }
92+ oled.updateScreen ();
93+ waitToNextTest ();
94+
95+ }
96+ }
97+
98+ void loop () {}
0 commit comments