Простой калькулятор на Arduino UNO — базовый проект для начинающих
Компоненты и материалы
Проект работает на любой плате, совместимой с Arduino IDE: UNO, Nano, Mega, Leonardo, Due, Yun, Arduino 101 и др. Нужен только сам контроллер.
Приложения и сервисы
- Arduino IDE
О проекте
Учитель математики спросил: «Может ли Arduino делать математику?». Ответа не было — и родилась идея. Это простейший калькулятор через Serial Monitor.
Как пользоваться
- Подключите плату к компьютеру.
- Загрузите скетч.
- Откройте Serial Monitor (9600 бод).
- Введите выражение без пробелов:
2+3,8*2,10-4,20/5. - Получите результат.
Поддерживаемые операции: +, -, *, / (целочисленное деление). Планируется расширенная версия.
Код
/* Serial Arduino Calculator
Базовые арифметические операции через Serial.
Принимает два числа и знак операции (+, -, *, /).
Пример: "2+3" -> 5, "7-3" -> 4.
Автор: João Paulo Rodrigues Poltronieri
Public Domain */
long number1, number2, result;
char calSignal;
void setup() {
Serial.begin(9600);
Serial.println("Send me a calculation");
Serial.println("E.G. : 2+3");
Serial.println();
}
void loop() {
while (Serial.available() > 0) {
number1 = Serial.parseInt();
calSignal = Serial.read();
number2 = Serial.parseInt();
resolucao();
Serial.print("Resultado = ");
Serial.println(result);
Serial.println();
Serial.println("Outra conta, por favor");
Serial.println();
}
}
void resolucao() {
switch (calSignal) {
case '+': result = number1 + number2; break;
case '-': result = number1 - number2; break;
case '*': result = number1 * number2; break;
case '/': result = (number2 != 0) ? number1 / number2 : 0; break;
default:
Serial.println("CONTA INVALIDA");
result = 0;
}
}
Схемы
Схема тривиальна — нужна только плата Arduino. Никаких внешних компонентов.
Производственный процесс
- Слово-часы (Word Clock) на Arduino — DIY-часы с текстовой индикацией времени
- Часы реального времени на Arduino с расчётом времени намаза
- Веб-сервер на Arduino Uno WiFi: управление LED через браузер
- Простой ИК-датчик препятствий на Arduino: ИК-светодиод и фотодиод
- Сборка портативного дисплея на основе эффекта сохранения изображения с Arduino UNO и ATtiny85
- SerialDebug: Улучшение отладки Arduino с расширенным сериальным логированием
- Простой секундомер на Arduino с кнопкой и EEPROM
- Arduino-таймер для мытья рук: простое DIY-устройство для борьбы с COVID‑19
- Мастерство 8×8 LED-матрицы с Arduino Uno: Пошаговое руководство
- Wi-Servo: управление сервоприводами по Wi-Fi через веб-браузер