جدول المحتويات:
فيديو: Arduino DIY Calculator باستخدام 1602 LCD و 4x4 Keypad: 4 خطوات
2024 مؤلف: John Day | [email protected]. آخر تعديل: 2024-01-30 07:38
مرحبًا يا رفاق في هذه التعليمات ، سنصنع آلة حاسبة باستخدام Arduino والتي يمكنها إجراء العمليات الحسابية الأساسية. لذلك سنأخذ في الأساس مدخلات من لوحة مفاتيح 4x4 ونطبع البيانات على شاشة 16x2 LCD وسيقوم arduino بإجراء العمليات الحسابية.
الخطوة 1: الأشياء التي تحتاجها
بالنسبة لهذه التعليمات ، سنحتاج إلى الأشياء التالية: Arduino Uno (سيعمل أي إصدار)
شاشة عرض LCD مقاس 16 × 2
4 × 4 Keypad 9V BatteryBreadboardConnect الأسلاك
الخطوة 2: التوصيلات
تم إعطاء مخطط الدائرة الكاملة لمشروع حاسبة Arduino هذا أعلاه. يمكن الحصول على الوصلة الأرضية + 5V الموضحة في مخطط الدائرة من 5V والدبوس الأرضي في Arduino. يمكن تشغيل Arduino نفسه من الكمبيوتر المحمول الخاص بك أو من خلال مقبس DC باستخدام محول 12 فولت أو بطارية 9 فولت. نحن نقوم بتشغيل شاشة LCD في وضع 4 بت مع Arduino بحيث يتم توصيل آخر أربع بتات بيانات فقط من شاشة LCD بـ Arduino. ستحتوي لوحة المفاتيح على 8 دبابيس إخراج يجب توصيلها من طرف 0 إلى طرف 7 كما هو موضح أعلاه. قد تظهر بعض لوحات Arduino خطأ أثناء تحميل البرنامج إذا كان هناك أي شيء متصل بـ pin 0 و pin1 ، لذلك إذا واجهت أي شيء فقط إزالة لوحة المفاتيح أثناء تحميل البرنامج.
الخطوة 3: الكود
انسخ الكود التالي وقم بتحميله إلى اردوينو الخاص بك: / * * Arduino Keypad calculator Program * / # include "LiquidCrystal.h" // Header file for LCD من https://www.arduino.cc/en/Reference/L LiquidCrystal# قم بتضمين "Keypad.h" // ملف Header الخاص بلوحة المفاتيح من 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 بهذه الدبابيس من Arduino colPins [COLS] = {4، 5، 6، 7}؛ // قم بتوصيل لوحة المفاتيح COL0 و COL1 و COL2 بدبابيس Arduino هذه. Keypad kpd = لوحة المفاتيح (makeKeymap (keys) ، rowPins ، colPins ، ROWS ، COLS) ؛ // قم بإنشاء Keypadconst int rs = 8 ، en = 9 ، d4 = 10 ، d5 = 11 ، d6 = 12 ، d7 = 13 ؛ // الدبابيس التي تتصل بها شاشات الكريستال السائل LCD LiquidCrystal LCD (rs، en، d4، d5، d6، d7) ؛ طويل Num1 ، Num2 ، رقم ؛ مفتاح char ، عمل ؛ نتيجة منطقية = خطأ ؛ إعداد باطل () {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 () ؛ إذا (النتيجة == صحيح) CalculateResult () ؛ DisplayResult () ؛ } باطل DetectButtons () {lcd.clear ()؛ // ثم نظفه إذا (key == '*') // إذا تم الضغط على زر الإلغاء {Serial.println ("Button Cancel") ؛ الرقم = Num1 = Num2 = 0 ؛ نتيجة = خطأ ؛} إذا (المفتاح == '1') // إذا تم الضغط على الزر 1 {Serial.println ("الزر 1") ؛ إذا كان (الرقم == 0) الرقم = 1 ؛ رقم آخر = (رقم * 10) + 1 ؛ // الضغط مرتين} إذا (المفتاح == '4') // إذا تم الضغط على الزر 4 {Serial.println ("الزر 4") ؛ إذا كان (الرقم == 0) الرقم = 4 ؛ رقم آخر = (رقم * 10) + 4 ؛ // الضغط مرتين} إذا (المفتاح == '7') // إذا تم الضغط على الزر 7 {Serial.println ("الزر 7") ؛ إذا كان (الرقم == 0) الرقم = 7 ؛ رقم آخر = (رقم * 10) + 7 ؛ // الضغط مرتين} إذا (المفتاح == '0') {Serial.println ("Button 0") ؛ // يتم الضغط على الزر 0 إذا كان (الرقم == 0) الرقم = 0 ؛ رقم آخر = (رقم * 10) + 0 ؛ // الضغط مرتين} إذا (المفتاح == '2') // تم الضغط على الزر 2 {Serial.println ("الزر 2") ؛ إذا كان (الرقم == 0) الرقم = 2 ؛ رقم آخر = (رقم * 10) + 2 ؛ // الضغط مرتين} إذا (المفتاح == '5') {Serial.println ("الزر 5") ؛ إذا كان (الرقم == 0) الرقم = 5 ؛ رقم آخر = (رقم * 10) + 5 ؛ // Pressed مرتين} if (key == '8') {Serial.println ("Button 8")؛ إذا كان (الرقم == 0) الرقم = 8 ؛ رقم آخر = (رقم * 10) + 8 ؛ // الضغط مرتين} إذا (المفتاح == '#') {Serial.println ("Button Equal") ؛ Num2 = رقم ؛ النتيجة = صحيح ؛ } if (key == '3') {Serial.println ("Button 3")؛ إذا كان (الرقم == 0) الرقم = 3 ؛ رقم آخر = (رقم * 10) + 3 ؛ // Pressed مرتين} if (key == '6') {Serial.println ("Button 6")؛ إذا كان (الرقم == 0) الرقم = 6 ؛ رقم آخر = (رقم * 10) + 6 ؛ // الضغط مرتين} إذا (المفتاح == '9') {Serial.println ("الزر 9") ؛ إذا كان (الرقم == 0) الرقم = 9 ؛ رقم آخر = (رقم * 10) + 9 ؛ // الضغط مرتين} إذا (key == 'A' || key == 'B' || key == 'C' || key == 'D') // Detecting Buttons on Column 4 {Num1 = Number؛ الرقم = 0 ؛ if (key == 'A') {Serial.println ("Addition") ؛ الإجراء = '+' ؛} إذا (المفتاح == 'B') {Serial.println ("الطرح") ؛ العمل = '-' ؛ } if (key == 'C') {Serial.println ("Multiplication")؛ الإجراء = '*'؛} إذا (المفتاح == 'D') {Serial.println ("Devesion") ؛ الإجراء = '/' ؛} تأخير (100) ؛ }}
باطل CalculateResult () {if (action == '+') Number = Num1 + Num2؛ إذا (الإجراء == '-') الرقم = Num1-Num2 ؛ إذا (الإجراء == '*') الرقم = Num1 * Num2 ؛ إذا (الإجراء == '/') الرقم = Num1 / Num2 ؛ } باطل DisplayResult () {lcd.setCursor (0، 0)؛ // اضبط المؤشر على العمود 0 ، السطر 1 lcd.print (Num1) ؛ lcd.print (عمل) ؛ lcd.print (Num2) ؛ إذا (النتيجة == صحيح) {lcd.print ("=") ؛ lcd.print (رقم) ؛} // عرض النتيجة lcd.setCursor (0 ، 1) ؛ // اضبط المؤشر على العمود 0 ، السطر 1 lcd.print (الرقم) ؛ // عرض النتيجة}
الخطوة 4: إخراج الآلة الحاسبة
لذلك أكملنا الاتصالات وقمنا بتحميل الكود إلى arduino ووقته لتوصيل الطاقة وإجراء بعض العمليات الحسابية وكما ترون ، فأنا أقوم بحسابات باستخدام لوحة المفاتيح ويمكنك رؤية النتائج في شاشة LCD. لذا استمتع بصنع الآلة الحاسبة الخاصة بك باستخدام اردوينو.
موصى به:
برنامج تعليمي Arduino Keypad 4x4: 4 خطوات (بالصور)
برنامج تعليمي Arduino Keypad 4x4: تم عرض إدخال لوحة المفاتيح على الشاشة التسلسلية باستخدام كود اردوينو أونو وكود كامل للوحة المفاتيح 4x4
نحن مجموعة من البرامج التعليمية 6 UQD10801 (Robocon1) طلاب من Universiti Tun Hussein Onn Malaysia (UTHM): Keypad 4x4 و LCD Arduino: 3 خطوات
نحن مجموعة من البرامج التعليمية 6 UQD10801 (Robocon1) طلاب من Universiti Tun Hussein Onn Malaysia (UTHM): Keypad 4x4 و LCD Arduino: تعد لوحات المفاتيح طريقة رائعة للسماح للمستخدمين بالتفاعل مع مشروعك. يمكنك استخدامها للتنقل بين القوائم وإدخال كلمات المرور والتحكم في الألعاب والروبوتات. في هذا البرنامج التعليمي ، سأوضح لك كيفية إعداد لوحة مفاتيح على Arduino. أولا سأشرح كيف أردو
4x4 Matrix Membrane Keypad باستخدام Arduino Nano: 4 خطوات
لوحة مفاتيح 4x4 Matrix Membrane Keypad باستخدام Arduino Nano: لوحة مفاتيح Matrix Membrane 4x4 هي وحدة لوحة مفاتيح تُستخدم غالبًا لإنشاء مشاريع Arduino ، مثل الآلات الحاسبة وإدخال كلمة المرور وغيرها ، وهذه هي ميزات لوحة المفاتيح هذه: تصميم رفيع جدًا سهل الاستخدام في أي المواصفات الرئيسية: ماكسي
1602 LCD Keypad Shield Module مع حقيبة ظهر I2C: 6 خطوات
1602 LCD Keypad Shield Module مع حقيبة ظهر I2C: كجزء من مشروع أكبر ، كنت أرغب في الحصول على شاشة LCD ولوحة مفاتيح للتنقل في بعض القوائم البسيطة. سأستخدم الكثير من منافذ الإدخال / الإخراج على Arduino لوظائف أخرى ، لذلك أردت واجهة I2C لشاشة LCD. لذلك اشتريت بعض الأجهزة ،
استخدام 1602 LCD Keypad Shield W / Arduino [+ مشاريع عملية]: 7 خطوات
باستخدام 1602 LCD Keypad Shield W / Arduino [+ مشاريع عملية]: يمكنك قراءة هذا وغيره من البرامج التعليمية المذهلة على الموقع الإلكتروني الرسمي لشركة ElectroPeak كيفية إعداد الدرع والتعرف على المفاتيح