Простой калькулятор UNO
Компоненты и расходные материалы
| | × | 1 | |
| | × | 1 | |
| | × | 1 | |
| | × | 1 | |
| | × | 1 | |
| | × | 1 | |
| | × | 1 | |
Приложения и онлайн-сервисы
Об этом проекте
Однажды, когда я говорил об Arduino, мой учитель математики спросил меня:«Сможете ли вы с ним заниматься математикой?» Я ответил:«Не знаю», и это заставило меня задуматься о том, как этого добиться. Потом я как бы понял, как это сделать, и хочу поделиться сейчас.
Итак, вот оно! Очень простой способ делать математику с помощью Arduino. В своем проекте я использовал arduino UNO, но, полагаю, он работает с любым из них.
Пошаговая инструкция очень проста:
- Подключите плату к компьютеру.
- Загрузите приведенный ниже код.
- Включить мониторинг последовательного порта
- Напишите правильный расчет (дополнительные инструкции см. в коде).
Я планирую сделать калькулятор получше, но пока это всего лишь способ выполнять базовую математику. Если вам нужен "лучший" калькулятор, дайте мне знать.
Следите за обновлениями, чтобы увидеть «калькулятор» получше! До скорой встречи!
Код
КОД ДЛЯ КАЛЬКУЛЯТОРА Arduino
Вы вводите числа и сигнал вместе, например «2 + 3» или 8 * 2, и это дает результат / * Последовательный калькулятор arduino в этом проекте, вы можете сделать базовую арифметику с помощью arduino, почти как очень простой калькулятор. Он принимает два числа и сигнал и выполняет операцию, которая может быть +, -, * или /.EG :отправьте «2 + 3» (без кавычек и с пространственным разделением информации), и arduino ответит 5.Цифра «7-3» и ответ arduino te Responde com 4.Criado por João Paulo Rodrigues Poltronieri Этот код находится в общественном достоянии * // / в первую очередь создаем переменные для хранения // информации, отправляемой на arduinolng number1; // первое число вычисления, // отправляемое через последовательный монитор // Если вы посмотрите, это длинная переменная, // поэтому мы можем использовать большие числаlong number2; // второе число, отправленное через SMchar calSignal; // создаем переменную типа char для хранения // сигнала вычисления. long result; // результат расчетаvoid setup () {Serial.begin (9600); // начинает последовательную связь Serial.println («Пришлите мне расчет»); Serial.println («Пример:2 + 3»); Serial.println (); // распечатывает это для проверки последовательной связи и // выводит пробел} void loop () {while (Serial.available ()> 0) {// пока на arduino отправляются данные, number1 =Serial.parseInt ( ); // number1 будет первым числом // Обратите внимание на использование Serial.parseInt, поэтому // если вы используете 23, он сохраняет в // number1 число 23, // если мы использовали Serial.read (), это // сохранит только 2 calSignal =Serial.read (); // calSignal будет первой // информацией после первого числа number2 =Serial.parseInt (); // сохраняет второе // число в number2 resolucao (); // Пользовательская функция для выполнения вычислений Serial.println ("Resultado ="); Serial.println (result); // Выводит результат вычисления Serial.println (); // переходит на строку Serial.println ("Outra conta, por Favor "); // выводит Serial.println (); // переходит на строку}} void resolucao () {// Пользовательская функция, // решающая расчеты switch (calSignal) {// Здесь мы используем" switch ... case "для экономии места // на скетче. Это, в основном, функция, которая проверяет // различные операторы" if ". // Здесь проверяется, какое значение хранится в // calSigna. В основном, она проверяет "сигнал" // варианта расчета '+':// если calSignal - это '+' результат =число1 + число2; // суммирует числа // и сохраняет в результате значение перерыва в вычислении; // перерыв для выхода из "case" case '+':// если calSignal равен '+' result =number1 - number2; // вычитает числа // и заставляет результат удерживать значение перерыва в вычислении; // перерыв для выхода из "case" case '+':// если calSignal равен '+' result =number1 * number2; // умножает числа // и заставляет результат содержать значение паузы вычисления; // перерыв для выхода из "case" case '/':// se calSignal for '/' result =number1 / number2; // делит числа // и заставляет результат содержать значение вычисления // PS:в случае неточного деления, результатом // будет ближайшее целое break; // прерывание для выхода из "case" default:// Если это не одно из этих ... Serial.println ("CONTA INVIDA"); // Создает «ошибку» Serial.println (); resultado =0; }}
Схема
В принципе, нужна именно плата.