فهرست مطالب:

Arduino DIY ماشین حساب با استفاده از 1602 LCD و صفحه کلید 4x4: 4 مرحله
Arduino DIY ماشین حساب با استفاده از 1602 LCD و صفحه کلید 4x4: 4 مرحله

تصویری: Arduino DIY ماشین حساب با استفاده از 1602 LCD و صفحه کلید 4x4: 4 مرحله

تصویری: Arduino DIY ماشین حساب با استفاده از 1602 LCD و صفحه کلید 4x4: 4 مرحله
تصویری: Lesson 03: Project LED Blink Breadboard and Resistor | Robojax Arduino Step By Step Course 2024, نوامبر
Anonim
Arduino DIY ماشین حساب با استفاده از 1602 LCD و صفحه کلید 4x4
Arduino DIY ماشین حساب با استفاده از 1602 LCD و صفحه کلید 4x4

سلام بچه ها در این دستورالعمل ما یک ماشین حساب با استفاده از آردوینو ایجاد می کنیم که می تواند محاسبات اولیه را انجام دهد. بنابراین اساساً ما از صفحه کلید 4x4 ورودی می گیریم و داده ها را روی صفحه LCD 16x2 چاپ می کنیم و arduino محاسبات را انجام می دهد.

مرحله 1: موارد مورد نیاز

چیزهایی که شما نیاز دارید
چیزهایی که شما نیاز دارید
چیزهایی که شما نیاز دارید
چیزهایی که شما نیاز دارید
چیزهایی که شما نیاز دارید
چیزهایی که شما نیاز دارید
چیزهایی که شما نیاز دارید
چیزهایی که شما نیاز دارید

برای این دستورالعمل ها به موارد زیر نیاز داریم: Arduino Uno (هر نسخه ای کار می کند)

نمایشگر LCD 16 × 2

4 × 4 صفحه کلید 9V BatteryBreadboard اتصال سیم

مرحله 2: اتصالات

اتصالات
اتصالات
اتصالات
اتصالات

نمودار مدار کامل این پروژه ماشین حساب Arduino در بالا آورده شده است. اتصال +5V و زمین نشان داده شده در نمودار مدار را می توان از 5V و پایه زمین آردوینو بدست آورد. خود آردوینو را می توان از لپ تاپ یا از طریق جک DC با استفاده از آداپتور 12 ولت یا باتری 9 ولت تغذیه کرد. ما در حال کار با LCD در حالت 4 بیتی با آردوینو هستیم ، بنابراین تنها چهار بیت داده آخر LCD به آردوینو متصل است. صفحه کلید دارای 8 پین خروجی است که باید همانطور که در بالا نشان داده شده است از پین 0 به پین 7 متصل شوند. در صورت بارگذاری برنامه ، در صورت اتصال هر چیزی به پین 0 و پین 1 ، ممکن است برخی از بردهای Arduino خطایی را نشان دهند ، بنابراین در صورت مشاهده هر گونه مورد ، فقط حذف کنید صفحه کلید هنگام بارگذاری برنامه

مرحله 3: کد

کد
کد

کد زیر را کپی کرده و arduino خود را روی آن بارگذاری کنید:/ * * برنامه ماشین حساب صفحه کلید Arduino */#شامل "LiquidCrystal.h" // فایل هدر برای LCD از https://www.arduino.cc/fa/Reference/LiquidCrystal# شامل "Keypad.h" // فایل سرصفحه برای صفحه کلید از https://github.com/Chris--A/Keypadconst byte ROWS = 4؛ // چهار ردیف کنایت بایت COLS = 4؛ // سه ستون // تعریف کلیدهای Keymapchar [ROWS] [COLS] = {{'7'، '8'، '9'، 'D'}، {'4'، '5'، '6'، ' C '}، {' 1 '،' 2 '،' 3 '،' B '}، {'*'،' 0 '،'#'،' A '}}؛ byte rowPins [ROWS] = {0، 1 ، 2 ، 3} ؛ // صفحه کلید ROW0 ، ROW1 ، ROW2 و ROW3 را به این پین های آردوینو وصل کنید. byte colPins [COLS] = {4 ، 5 ، 6 ، 7} ؛ // صفحه کلید COL0 ، COL1 و COL2 را به این پین های آردوینو وصل کنید. Keypad kpd = Keypad (makeKeymap (keys) ، rowPins ، colPins ، ROWS ، COLS) ؛ // ایجاد صفحه کلید int rs = 8 ، en = 9 ، d4 = 10 ، d5 = 11 ، d6 = 12 ، d7 = 13 ؛ // پین هایی که LCD به آنها متصل است LiquidCrystal LCD (rs، en، d4، d5، d6، d7) ؛ طولانی Num1 ، Num2 ، Number ؛ کلید char ، اقدام ؛ boolean result = false؛ void setup () {lcd.begin (16، 2)؛ // ما از یک صفحه LCD 16*2 lcd.print ("ماشین حساب DIY") استفاده می کنیم. // نمایش یک پیام مقدماتی lcd.setCursor (0 ، 1) ؛ // مکان نما را روی ستون 0 ، خط 1 تأخیر (2000) تنظیم کنید ؛ // منتظر بمانید تا اطلاعات نمایش داده شود lcd.clear ()؛ // سپس آن را تمیز کنید} void loop () {key = kpd.getKey ()؛ // ذخیره مقدار کلید فشرده شده در یک charif (key! = NO_KEY) DetectButtons () ؛ if (result == true) CalculateResult () ؛ DisplayResult () ؛ } void DetectButtons () {lcd.clear ()؛ // سپس آن را تمیز کنید اگر (کلید == '*') // اگر دکمه لغو {Serial.println ("لغو دکمه") فشار داده می شود ؛ تعداد = Num1 = Num2 = 0 ؛ result = false؛} if (key == '1') // If Button 1 is pressed {Serial.println ("Button 1")؛ اگر (تعداد == 0) شماره = 1 ؛ else شماره = (شماره*10) + 1؛ // دو بار}} فشار دهید (کلید == '4') // اگر دکمه 4 {Serial.println ("دکمه 4") فشار داده شود ؛ اگر (تعداد == 0) شماره = 4 ؛ else شماره = (شماره*10) + 4 ؛ // دو بار} if (key == '7') // اگر دکمه 7 فشرده شود {Serial.println ("Button 7") ؛ اگر (تعداد == 0) شماره = 7 ؛ else شماره = (شماره*10) + 7 ؛ // دو بار} if (key == '0') {Serial.println ("Button 0")؛ // دکمه 0 فشار داده می شود اگر (تعداد == 0) شماره = 0 ؛ else شماره = (شماره*10) + 0 ؛ // دو بار} اگر (کلید == '2') // دکمه 2 فشرده شود {Serial.println ("دکمه 2") ؛ اگر (تعداد == 0) شماره = 2 ؛ else شماره = (شماره*10) + 2؛ // دو بار} if (key == '5') {Serial.println ("Button 5")؛ اگر (تعداد == 0) شماره = 5 ؛ else شماره = (شماره*10) + 5؛ // دو بار} if (key == '8') {Serial.println ("Button 8")؛ اگر (تعداد == 0) شماره = 8 ؛ else شماره = (شماره*10) + 8؛ // دو بار} if (key == '#') {Serial.println ("Button Equal") فشار داده شده است؛ Num2 = تعداد ؛ نتیجه = درست ؛ } if (key == '3') {Serial.println ("Button 3")؛ اگر (تعداد == 0) شماره = 3 ؛ else شماره = (شماره*10) + 3؛ // دو بار} if (key == '6') {Serial.println ("Button 6")؛ اگر (تعداد == 0) شماره = 6 ؛ else شماره = (شماره*10) + 6 ؛ // دو بار} if (key == '9') {Serial.println ("Button 9")؛ اگر (تعداد == 0) شماره = 9 ؛ else شماره = (شماره*10) + 9 ؛ // دو بار} if (key == 'A' || key == 'B' || key == 'C' || key == 'D') فشار داده شده است // تشخیص دکمه ها در ستون 4 {Num1 = Number؛ تعداد = 0 ؛ if (key == 'A') {Serial.println ("Add")؛ action = '+'؛} if (key == 'B') {Serial.println ("تفریق")؛ action = '-'؛ } if (key == 'C') {Serial.println ("ضرب")؛ action = '*'؛} if (key == 'D') {Serial.println ("Devesion")؛ action = '/'؛} تاخیر (100)؛ }}

void CalculateResult () {if (action == '+') Number = Num1+Num2؛ if (action == '-') Number = Num1-Num2؛ if (action == '*') Number = Num1*Num2؛ if (action == '/') Number = Num1/Num2؛ } void DisplayResult () {lcd.setCursor (0، 0)؛ // مکان نما را روی ستون 0 ، خط 1 lcd.print (Num1) تنظیم کنید ؛ lcd.print (action) ؛ lcd.print (Num2) ؛ if (result == true) {lcd.print ("=")؛ lcd.print (Number)؛} // نمایش نتیجه lcd.setCursor (0، 1)؛ // مکان نما را روی ستون 0 ، خط 1 lcd.print (Number) تنظیم کنید ؛ // نمایش نتیجه}

مرحله 4: خروجی ماشین حساب

خروجی ماشین حساب
خروجی ماشین حساب
خروجی ماشین حساب
خروجی ماشین حساب
خروجی ماشین حساب
خروجی ماشین حساب

بنابراین ما اتصالات را تکمیل کردیم و کد را در arduino بارگذاری کردیم و زمان اتصال به برق و محاسبات را انجام دادیم و همانطور که می بینید من با صفحه کلید محاسبات را انجام می دهم و نتایج را در LCD می بینید. بنابراین با ساخت آردوینو ، ماشین حساب خود را بسازید.

توصیه شده: