Cách tạo một máy tính toán học đơn giản bằng Arduino

Hãy Thử Công Cụ CủA Chúng Tôi Để LoạI Bỏ Các VấN Đề





Trong bài đăng này, chúng ta sẽ xây dựng một máy tính bằng Arduino, có thể thực hiện phép tính số học phức tạp hơn nhiều so với một máy tính thông thường.



Phương châm của bài đăng này không phải là tạo ra một máy tính sử dụng Arduino, mà là để giới thiệu khả năng số học của Arduino, thực hiện các phép tính và diễn giải dữ liệu phức tạp khác nhau từ các cảm biến và các thiết bị ngoại vi khác.

Đối với dự án thú vị này, bạn chỉ cần cáp USB và Arduino mà bạn chọn. Chúng ta sẽ nhận được kết quả tính toán của mình thông qua màn hình nối tiếp của Arduino IDE. Nếu bạn đã quen thuộc với những kiến ​​thức cơ bản về ngôn ngữ C thì dự án này là một miếng bánh và bạn có thể tạo các chương trình của riêng mình để thực hiện các phép tính số học phức tạp hơn. Ở đây chúng tôi sẽ sử dụng tệp tiêu đề #include được tạo sẵn trong trình biên dịch Arduino IDE, vì vậy bạn không cần tải xuống bất kỳ thư viện nào.



Chúng tôi thậm chí có thể kết nối màn hình LCD và bàn phím với Arduino và tạo ra một máy tính khoa học, nhưng nó là chủ đề của một bài báo khác. Nếu bạn đã quen với “Turbo C ++”, một trong những chương trình đầu tiên của chúng tôi sẽ là phép cộng hai số, tất cả các phép tính số học đều được thực hiện trong CPU của máy tính. Nhưng ở đây, tất cả các tính toán số học đều được thực hiện trong vi điều khiển Arduino. Hãy bắt đầu với các phép cộng, trừ, chia và nhân.

Đây là một chương trình có hai biến a và b, sử dụng hai biến này, chúng ta có thể thực hiện các phép tính đã nêu ở trên bằng các toán tử “+, -, * /”, tương ứng là cộng, trừ, nhân, chia.

Chương trình:

//-------------------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---------------//

ĐẦU RA:

Trong chương trình trên, chúng tôi đang sử dụng “Float” để thực hiện các hàm thập phân, chúng tôi đang sử dụng “Serial.print ()” để in các giá trị trong màn hình nối tiếp, phần còn lại của chương trình là tự giải thích. Bạn có thể thay đổi biến a và b trong chương trình bằng các giá trị của riêng bạn.

Hãy di chuyển thứ gì đó thú vị hơn, khu vực hình tròn. Công thức cho diện tích hình tròn là: pi * radius ^ 2 hoặc pi nhân với hình vuông bán kính. Vì giá trị của số pi là hằng số, chúng ta cần gán nó trong chương trình bằng cách sử dụng 'float' vì giá trị của số pi là 3,14159 trong đó dấu thập phân xuất hiện.

Chương trình:

//-------------------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---------------//

ĐẦU RA:

Máy tính toán học đơn giản sử dụng Arduino

Một lần nữa, bạn có thể thay đổi các giá trị của riêng bạn trong chương trình. Chúng tôi đang sử dụng “sq ()” bình phương của số có trong ngoặc đơn. Bây giờ chúng ta hãy chuyển sang cấp độ tiếp theo. Trong chương trình này, chúng ta sẽ sử dụng định lý Pythagoras để tính cạnh huyền của một tam giác. Công thức đằng sau điều này là: “hyp = sqrt (sq (cơ sở) + sq (chiều cao))” hoặc căn bậc hai của (hình vuông cơ sở + hình vuông chiều cao).

Chương trình:

//-------------------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---------------//

ĐẦU RA:

Bạn có thể thay đổi các giá trị của cơ sở và chiều cao bằng các giá trị của riêng bạn trong chương trình. Chúng tôi đã sử dụng “sqrt ()” để thực hiện các giá trị của hàm căn bậc hai trong dấu ngoặc đơn. Bây giờ chúng ta hãy thực hiện một chương trình phổ biến mà chúng ta đã học trong đầu khóa học ngôn ngữ C, chuỗi Fibonacci.

Tóm lại, chuỗi Fibonacci là phép cộng của hai số trước đó cho ra số tiếp theo, v.v., nó luôn bắt đầu bằng 0, 1. Ví dụ: 0, 1. Vì vậy, 0 + 1 = 1 chuỗi tiếp theo là 0, 1, 1. Vì vậy, 1 + 1 = 2. Vì vậy, chuỗi tiếp theo là, 0, 1, 1, 2… ..vv. Chương trình được viết ở đây là để tìm số Fibonacci cho chữ số thứ n đầu tiên. Bạn có thể thay đổi giá trị của ‘n’ trong chương trình để có được chuỗi Fibonacci mong muốn.

Chương trình:

//-------------------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---------------//

ĐẦU RA:

Vì vậy, điều này có thể đã cung cấp đủ liều lượng cho não của bạn và nhầm lẫn rằng thứ gì đó được thiết kế để điều khiển các thiết bị ngoại vi phần cứng đang thực hiện một số phép tính toán học vô nghĩa, nếu vậy, bạn không đơn độc.

Toán học đóng một vai trò quan trọng trong lĩnh vực điện tử, đó là lý do tại sao sách giáo khoa của chúng tôi chứa đầy các phương trình toán học mà chúng tôi thậm chí còn không hiểu và đó là điểm mà máy tính đến để giải cứu chúng tôi và nó đây.

Nếu bạn có bất kỳ câu hỏi nào liên quan đến mạch máy tính đơn giản này sử dụng Arduino, bạn có thể thể hiện chúng thông qua các nhận xét có giá trị.




Trước: Mạch cung cấp điện biến đổi 0-60V LM317HV Tiếp theo: Cách tạo ra điện từ Piezo