Kako narediti preprost matematični kalkulator z uporabo Arduina

Preizkusite Naš Instrument Za Odpravo Težav





V tem prispevku bomo izdelali kalkulator z uporabo Arduina, ki lahko izvaja mnogo bolj zapletene aritmetične izračune kot običajni kalkulator.



Moto te objave ni izdelati kalkulator z uporabo Arduina, temveč predstaviti aritmetične zmožnosti Arduina, ki izvaja različne zapletene interpretacije podatkov in izračune s senzorjev in drugih zunanjih naprav.

Za ta zabaven projekt potrebujete le kabel USB in Arduino po vaši izbiri. Rezultate naših izračunov bomo dobili prek serijskega monitorja Arduino IDE. Če poznate osnove jezika C, je ta projekt prava stvar in lahko ustvarite lastne programe, ki naredijo še bolj zapletene aritmetične izračune. Tu bomo uporabili datoteko glave #include, ki je vgrajena v prevajalnik Arduino IDE, zato vam ni treba prenesti nobene knjižnice.



Na Arduino lahko celo povežemo LCD zaslon in tipkovnico in izdelamo znanstveni kalkulator, vendar je to predmet drugega članka. Če poznate “Turbo C ++”, bo eden naših prvih programov seštevanje dveh številk, vsi aritmetični izračuni se izvajajo v CPU računalnika. Toda tukaj se vsi aritmetični izračuni izvajajo v mikrokrmilniku Arduino. Začnimo z seštevanjem, odštevanjem, deljenjem in množenjem.

Tukaj je program z dvema spremenljivkama a in b. Z uporabo teh dveh spremenljivk lahko naredimo zgoraj navedene izračune z uporabo operatorjev “+, -, * /”, ki so seštevanje, odštevanje, množenje, deljenje.

Program:

//-------------------Program Developed by R.Girish---------------//
#include
float a = 500
float b = 105.33
float add
float sub
float divide
float mul
void setup()
{
Serial.begin(9600)
Serial.println('Simple Arduino Calculator:')
Serial.println('n')
Serial.print('a = ')
Serial.println(a)
Serial.print('b = ')
Serial.println(b)
Serial.println('n')
Serial.print('Addition: ')
Serial.print('a + b = ') // add
add=a+b
Serial.println(add)
Serial.print('Multiplication: ')
Serial.print('a * b = ') // multiply
mul=a*b
Serial.println(mul)
Serial.print('Division: ')
Serial.print('a / b = ') // divide
divide=a/b
Serial.println(divide)
Serial.print('Subtraction: ')
Serial.print('a - b = ') // subtract
sub=a-b
Serial.println(sub)
}
void loop() // we need this to be here even though its empty
{
}
//-------------------Program Developed by R.Girish---------------//

IZHOD:

V zgornjem programu uporabljamo »Float«, ki izvaja decimalne funkcije, za tiskanje vrednosti v serijskem monitorju uporabljamo »Serial.print ()«, preostali del programa je sam po sebi razumljiv. Spremenljivki a in b v programu lahko spremenite z lastnimi vrednostmi.

Premaknimo nekaj bolj zanimivega, območje kroga. Formula za območje kroga je: pi * polmer ^ 2 ali pi krat polmer kvadrat. Ker je vrednost pi konstantna, jo moramo v programu dodeliti s pomočjo 'float', saj je vrednost pi 3,14159, kjer nastopi decimalna vejica.

Program:

//-------------------Program Developed by R.Girish---------------//
#include
float pi = 3.14159
float radius = 50
float area
void setup()
{
Serial.begin(9600)
Serial.println('Arduino Area Calculator:')
Serial.print('n')
Serial.print('Radius = ')
Serial.print(radius)
Serial.print('n')
area = pi*sq(radius)
Serial.print('The Area of circle is: ')
Serial.println(area)
}
void loop()
{
// we need this to be here even though it is empty
}
//-------------------Program Developed by R.Girish---------------//

IZHOD:

Preprost matematični kalkulator z uporabo Arduina

Spet lahko v programu spremenite lastne vrednosti. Uporabljamo 'sq ()', ki v oklepaju izračuna kvadrat s številom. Zdaj pa pojdimo na naslednjo stopnjo. V tem programu bomo uporabili Pitagorin izrek za izračun hipotenuze trikotnika. Formula za tem je: »hyp = sqrt (sq (osnova) + sq (višina))« ali kvadratni koren (osnovni kvadrat + kvadrat višine).

Program:

//-------------------Program Developed by R.Girish---------------//
#include
float base = 50.36
float height = 45.336
float hyp
void setup()
{
Serial.begin(9600)
Serial.println('Arduino Pythagoras Calculator:')
Serial.print('n')
Serial.print('base = ')
Serial.println(base)
Serial.print('height = ')
Serial.print(height)
Serial.print('n')
hyp=sqrt(sq(base) + sq(height))
Serial.print('The hypotenuse is: ')
Serial.print(hyp)
}
void loop()
{
// we need this to be here even though its empty
}
//-------------------Program Developed by R.Girish---------------//

IZHOD:

Vrednosti podstavka in višine lahko spremenite z lastnimi vrednostmi v programu. Uporabili smo “sqrt ()”, ki v oklepaju naredi vrednosti funkcije kvadratnega korena. Zdaj pa naredimo priljubljen program, ki bi se ga naučili na našem začetku tečaja C, serija Fibonacci.

Na kratko Fibonaccijeva serija je seštevanje dveh prejšnjih števil, ki daje naslednjo številko in tako naprej, vedno se začne z 0, 1. Na primer: 0, 1. Torej 0 + 1 = 1 naslednja serija je 0, 1, 1. Torej, 1 + 1 = 2. Torej je naslednja serija 0, 1, 1, 2 ... in tako naprej. Tukaj napisan program je najti Fibonaccijevo številko za prvo n-to številko. V programu lahko spremenite vrednost ‘n’, da dobite želeno Fibonaccijevo serijo.

Program:

//-------------------Program Developed by R.Girish---------------//
#include
int n=6
int first = 0
int Second = 1
int next
int c
void setup()
{
Serial.begin(9600)
Serial.print('Fibonacci series for first ')
Serial.print(n)
Serial.print(' numbers are:nn')
for ( c = 0 c {
if ( c <= 1 )
next = c
else
{
next = first + Second
first = Second
Second = next
}
Serial.println(next)
}
}
void loop()
{
// put your main code here, to run repeatedly:
}
//-------------------Program Developed by R.Girish---------------//

IZHOD:

Torej, to bi dalo dovolj odmerkov vašim možganom in bi vas zmedlo, da nekaj, kar je zasnovano za nadzor zunanje opreme strojne opreme, dela neumne matematične izračune, če pa, niste sami.

Matematika igra glavno vlogo v elektroniki, zato je naš učbenik poln matematičnih enačb, ki jih sploh ne razumemo in tista točka, kjer nas kalkulatorji priskočijo na pomoč in tukaj je.

Če imate kakršna koli vprašanja v zvezi s tem preprostim vezjem kalkulatorja z uporabo Arduina, jih lahko izrazite z vedno dragocenimi komentarji.




Prejšnja: 0-60V LM317HV spremenljivo napajalno vezje Naprej: Kako proizvesti električno energijo iz Pieza