fork download
  1. #include <SPI.h>
  2. #include <Wire.h>
  3. #include <Adafruit_GFX.h>
  4. #include <Adafruit_SSD1306.h>
  5.  
  6. // If using software SPI (the default case):
  7. #define OLED_MOSI 9
  8. #define OLED_CLK 10
  9. #define OLED_DC 11
  10. #define OLED_CS 12
  11. #define OLED_RESET 13
  12. Adafruit_SSD1306 display(OLED_MOSI, OLED_CLK, OLED_DC, OLED_RESET, OLED_CS);
  13. volatile unsigned long Time = 0;
  14. volatile int ptr_one = 0;
  15. volatile int ptr_two = 0;
  16. String utf8rus(String source)
  17. {
  18. int i,k;
  19. String target;
  20. unsigned char n;
  21. char m[2] = { '0', '\0' };
  22.  
  23. k = source.length(); i = 0;
  24.  
  25. while (i < k) {
  26. n = source[i]; i++;
  27.  
  28. if (n >= 0xBF){
  29. switch (n) {
  30. case 0xD0: {
  31. n = source[i]; i++;
  32. if (n == 0x81) { n = 0xA8; break; }
  33. if (n >= 0x90 && n <= 0xBF) n = n + 0x2F;
  34. break;
  35. }
  36. case 0xD1: {
  37. n = source[i]; i++;
  38. if (n == 0x91) { n = 0xB7; break; }
  39. if (n >= 0x80 && n <= 0x8F) n = n + 0x6F;
  40. break;
  41. }
  42. }
  43. }
  44. m[0] = n; target = target + String(m);
  45. }
  46. return target;
  47. }
  48. void setup()
  49. {
  50. DDRD = B00000000;
  51. //attachInterrupt(0,my1,FALLING);
  52. display.begin();
  53. display.clearDisplay();
  54. // display.drawPixel(10, 10, 1);
  55. // display.display();
  56. // delay(2000);
  57. // display.clearDisplay();
  58. for(int i = 82; i != 18; i--)
  59. {
  60. display.clearDisplay();
  61. display.setCursor(4, i);
  62. display.setTextColor(1);
  63. display.setTextSize(2);
  64. display.print(utf8rus("Приветсвую"));
  65. display.display();
  66. }
  67. delay(700);
  68. }
  69. void loop()
  70. {
  71. if(PIND == B01100000)
  72. {
  73. delay(400);
  74. display.clearDisplay();
  75. display.setCursor(0, 16);
  76. display.setTextColor(1);
  77. display.setTextSize(1);
  78. display.print(utf8rus("Мощность1"));
  79. display.display();
  80. }
  81. else if(PIND == B00100000)
  82. {
  83. delay(150);
  84. if(PIND == B00100000)
  85. {
  86. delay(150);
  87. display.clearDisplay();
  88. display.setCursor(0, 16);
  89. display.setTextColor(1);
  90. display.setTextSize(1);
  91. display.print(utf8rus("Выход"));
  92. display.display();
  93. }
  94. else
  95. {
  96. delay(150);
  97. display.clearDisplay();
  98. display.setCursor(0, 16);
  99. display.setTextColor(1);
  100. display.setTextSize(1);
  101. display.print(utf8rus("Мощность"));
  102. display.display();
  103. }
  104. }
  105. if(PIND == B01100000)
  106. {
  107. ptr_one--;
  108. display.clearDisplay();
  109. display.setCursor(0, 16);
  110. display.setTextColor(1);
  111. display.setTextSize(1);
  112. display.print(utf8rus("Мощность2"));
  113. display.display();
  114. delay(400);
  115. }
  116. else if(PIND == B01000000)
  117. {
  118. delay(150);
  119. ptr_two--;
  120. delay(150);
  121. display.clearDisplay();
  122. display.setCursor(0, 36);
  123. display.setTextColor(1);
  124. display.setTextSize(1);
  125. display.print(utf8rus("Время"));
  126. display.setCursor(0, 43);
  127. display.setTextColor(1);
  128. display.setTextSize(1);
  129. display.print(utf8rus("отключения"));
  130. display.display();
  131. }
  132. }
  133.  
Compilation error #stdin compilation error #stdout 0s 0KB
stdin
Standard input is empty
compilation info
prog.cpp:1:17: fatal error: SPI.h: No such file or directory
 #include <SPI.h>
                 ^
compilation terminated.
stdout
Standard output is empty