Не работает код
#include <TimerOne.h>
#include <Wire.h>
#include <MultiFuncShield.h>
void setup() {
// put your setup code here, to run once:
Timer1.initialize();
MFS.initialize(&Timer1); // initialize multi-function shield library
MFS.write("Hi");
delay(2000);
MFS.blinkDisplay(DIGIT_ALL, ON);
delay(50);
MFS.write("Err1");
delay(2000);
MFS.blinkDisplay(DIGIT_ALL, ON);
delay(50);
MFS.write("Erlg"); // display to 2 decimal places.
delay(2000);
MFS.blinkDisplay(DIGIT_ALL, ON);
delay(50);
MFS.beep();
delay(50);
MPS.write("WELC");
delay(50);
MPS.beep();
delay(50);
MPS.write("LOG1");
delay(500);
MPS.write("WORK");
delay(500);
MPS.beep();
delay(500);
}
int counter=0;
byte ended = false;
void loop() {
}
вот этот код который и не работает с ошибкой
Compilation error: 'MPS' was not declared in this scope
заранее спасибо
'MPS' was not declared in this scope
Текст ошибки переведи, раз не доходит.
Ошибка возникает из-за опечатки: вы используете MPS, хотя в коде инициализировали библиотеку как MFS. Замените все вхождения MPS на MFS, и код должен скомпилироваться без ошибок.
Чтобы исправить проблему, нужно проверить, что переменная объявлена в заголовке той функции, где используется, или объявить её глобально, за пределами функции main()
В вашем коде ошибка компиляции возникает из-за того, что вы используете `MPS`, вместо правильного `MFS`.
В частности, в строках:
```cpp
MPS.write("WELC");
MPS.beep();
MPS.write("LOG1");
MPS.write("WORK");
MPS.beep();
```
переменная `MPS` должна быть заменена на `MFS`, так как именно `MFS` было объявлено и инициализировано для работы с Multi-Function Shield.
Вот исправленный код:
```cpp
#include <TimerOne.h>
#include <Wire.h>
#include <MultiFuncShield.h>
void setup() {
// Инициализация таймера и Multi-Function Shield
Timer1.initialize();
MFS.initialize(&Timer1); // Инициализация библиотеки Multi-Function Shield
MFS.write("Hi");
delay(2000);
MFS.blinkDisplay(DIGIT_ALL, ON);
delay(50);
MFS.write("Err1");
delay(2000);
MFS.blinkDisplay(DIGIT_ALL, ON);
delay(50);
MFS.write("Erlg"); // Показ числа с двумя знаками после запятой
delay(2000);
MFS.blinkDisplay(DIGIT_ALL, ON);
delay(50);
MFS.beep();
delay(50);
MFS.write("WELC");
delay(50);
MFS.beep();
delay(50);
MFS.write("LOG1");
delay(500);
MFS.write("WORK");
delay(500);
MFS.beep();
delay(500);
}
int counter = 0;
byte ended = false;
void loop() {
// Основной цикл
}
```
После этих изменений код должен компилироваться без ошибок.