Calculadora UNO simples
Componentes e suprimentos
| | × | 1 | |
| | × | 1 | |
| | × | 1 | |
| | × | 1 | |
| | × | 1 | |
| | × | 1 | |
| | × | 1 | |
Aplicativos e serviços online
Sobre este projeto
Um dia, meu professor de matemática me perguntou enquanto eu falava sobre o arduino:“Você consegue fazer matemática com ele?” Eu respondi “Não sei”, e isso me fez pensar em como fazer isso acontecer. Então, eu meio que descobri como fazer isso e quero compartilhar agora.
Então aqui está! Uma maneira muito simples de fazer matemática com o Arduino. Para o meu projeto, usei o arduino UNO, mas acredito que funciona com qualquer um deles.
O passo a passo é muito simples:
- Conecte a placa ao computador
- Escreva um cálculo que seja válido (consulte o código para obter mais instruções)
Pretendo fazer uma calculadora melhor, mas por enquanto é apenas isso:uma maneira de fazer matemática básica. Se você quiser a calculadora "melhor", por favor me avise.
Fique ligado para ver uma "calculadora" melhor! Espero vê-lo em breve!
Código
CÓDIGO PARA CALCULADORA Arduino
Você insere os números e o sinal juntos, como "2 + 3", ou 8 * 2, e dá o resultado / * Calculadora arduino serial neste projeto, você pode fazer basicaritmético com a ajuda do arduino, quase como um calculadora muito rústica. Aceita dois números e um sinal, e faz a operação, que pode ser de +, -, * ou /.EG :enviar "2 + 3" (sem aspas e com nospace separando as informações), e arduino responde 5.Digito "7-3" e arduino te responde com 4.Criado por João Paulo Rodrigues PoltronieriEste código está em domínio público * // / em primeiro lugar, crie variáveis para armazenar // as informações enviadas para arduinolng number1; // primeiro número do cálculo, // enviado por meio do monitor serial // Se você der uma olhada, é uma variável longa, então // podemos usar números grandeslong number2; // segundo número enviado através do SMchar calSignal; // cria uma variável char para armazenar // o sinal de calcuation.long result; // resultado do cálculovoid setup () {Serial.begin (9600); // inicia as comunicações seriais Serial.println ("Envie-me um cálculo"); Serial.println ("E.G.:2 + 3"); Serial.println (); // imprime isso para testar a comunicação serial, e // imprime um espaço de linha} void loop () {while (Serial.available ()> 0) {// enquanto houver dados sendo enviados para arduino, number1 =Serial.parseInt ( ); // número1 será o primeiro número // Observe o uso de "Serial.parseInt, então, // no caso de você usar 23, ele armazena em // número1 o número 23 // se usarmos Serial.read (), ele // armazenaria apenas 2 calSignal =Serial.read (); // calSignal será a primeira // informação após o primeiro número number2 =Serial.parseInt (); // armazena o segundo // número no número2 resolucao (); // Função personalizada para resolver os cálculos Serial.println ("Resultado ="); Serial.println (resultado); // Imprime o resultado do cálculo Serial.println (); // pula uma linha Serial.println ("Outra conta, por favor "); // imprime Serial.println (); // salta uma linha}} void resolucao () {// Função personalizada que // resolve o switch de cálculos (calSignal) {// Aqui usamos" switch ... case "para economizar espaço // no esboço. É, basicamente, uma função que verifica // várias declarações" if ". // Aqui, ele verifica qual é o valor mantido por // calSigna. Basicamente, ele verifica o "sinal" // do caso de cálculo '+':// se calSignal é '+' resultado =número1 + número2; // soma os números // e faz o resultado conter o valor do cálculo break; // quebra para sair do "caso" caso '+':// se calSignal é '+' resultado =número1 - número2; // subtrai os números // e faz com que o resultado mantenha o valor do cálculo break; // quebra para sair do "caso" caso '+':// se calSignal é '+' resultado =número1 * número2; // multiplica os números // e faz com que o resultado mantenha o valor do cálculo quebrado; // quebra para sair do "caso" caso '/':// se calSignal para '/' resultado =número1 / número2; // divide os números // e faz com que o resultado mantenha o valor do cálculo // PS:caso a divisão não seja exata, o resultado // será a quebra de integrador mais próxima; // quebra para sair do "caso" default:// Se não for nenhum desses ... Serial.println ("CONTA INVÁVIDA"); // Cria um "erro" Serial.println (); resultado =0; }}
Esquemas
Basicamente, apenas a placa é necessária, na verdade