جدول المحتويات:

آلة حاسبة LCD بواسطة Jai Mishra: 8 خطوات
آلة حاسبة LCD بواسطة Jai Mishra: 8 خطوات

فيديو: آلة حاسبة LCD بواسطة Jai Mishra: 8 خطوات

فيديو: آلة حاسبة LCD بواسطة Jai Mishra: 8 خطوات
فيديو: آلة حاسبة مزودة بشاشة للكتابة بخط اليد Desktop Calculator with LCD Handwriting Screen Writing Tablet 2024, شهر نوفمبر
Anonim
حاسبة LCD بواسطة Jai Mishra
حاسبة LCD بواسطة Jai Mishra

مشاريع تينكركاد »

هذا مشروع مفيد للغاية يعلمك كيفية إنشاء الآلة الحاسبة الخاصة بك. يمكنك إما إنشاء هذه الآلة الحاسبة عبر الإنترنت أو في الحياة الواقعية بمساعدة الإمدادات الإضافية ولكن في الوقت الحالي سنركز فقط على إنشاء آلة حاسبة عبر الإنترنت.

اللوازم

  • اردوينو اونو R3
  • 220 أوم المقاوم
  • لوحة مفاتيح 4 * 4
  • 16 * 2 LCD
  • حفنة من الأسلاك لتوصيل الدائرة

الخطوة 1: اجمع المستلزمات الخاصة بك على TinkerCad

اجمع المستلزمات الخاصة بك على TinkerCad
اجمع المستلزمات الخاصة بك على TinkerCad

تأكد من توفر جميع المستلزمات الخاصة بك قبل أن نبدأ بالخطوة 2 لتقليل التوتر والأخطاء. تأكد أيضًا من استخدام المستلزمات المناسبة ، فبعض المكونات الموجودة في هذه الصورة أعلاه تشبه المكونات الأخرى ، لذلك لا تخلط بينها. استخدم الصورة أعلاه كدليل لك.

الخطوة 2: رتب المستلزمات الخاصة بك

ترتيب المستلزمات الخاصة بك
ترتيب المستلزمات الخاصة بك

يعد ترتيب المستلزمات الخاصة بك هو أفضل طريقة لمشاهدة معاينة للشكل الذي قد تبدو عليه الآلة الحاسبة. يمكنك إنشاء أي نوع من تصميم الآلة الحاسبة الذي تريده ولكن تأكد من أن الآلة الحاسبة تبدو طبيعية ويمكن للمستخدمين فهم التصميم وعدم الخلط. لقد استخدمت تصميم آلة حاسبة أنيقًا نموذجيًا يكون فعالًا ومفهومًا من قبل الجميع. يمكنك إما اختيار تصميمي أو إنشاء التصميم الخاص بك ، ولكن مهما كان تصميمه ، سيكون مبدعًا ونتمنى لك التوفيق!

الخطوة الثالثة: توصيل الأسلاك

توصيل الأسلاك
توصيل الأسلاك

يعد توصيل الأسلاك مهمة شاقة إذا لم تفهم المعنى الكامن وراءها. في هذا الأسلاك ، نحاول توصيل المكونات الأربعة معًا حتى يتمكنوا من العمل كمجموعة عندما يحين وقت كتابة الكود. إذا لم تكن هناك أسلاك ، فلن يتدفق أي تيار ، مما يؤدي إلى فشل المشروع. تأكد من توصيل الأسلاك الخاصة بك بشكل صحيح دون أي سوء فهم.

بعد الانتهاء من توصيل الأسلاك ، تأكد من أن أسلاكك مرتبة ومنظمة بحيث يسهل عليك وعلى الآخرين فهم ما يحدث بالضبط في أجهزة هذه الآلة الحاسبة. كما قلت من قبل ، يمكنك إما استخدام تقنيتي في تنظيم الأسلاك الخاصة بك أو يمكنك إنشاء أسلوبك الخاص ، ولكن مهما قررت القيام به ، تأكد من تجميعها ببعض المساحة.

الخطوة 4: كتابة الكود

كتابة الكود
كتابة الكود
كتابة الكود
كتابة الكود
كتابة الكود
كتابة الكود

#يشمل

# تضمين # تضمين

LiquidCrystal LCD (13 ، 12 ، 11 ، 10 ، 9 ، 8) ؛

طويلة أولا = 0 ؛ ثانية طويلة = 0 ؛ مجموع مزدوج = 0 ؛

char customKey ؛ const بايت ROWS = 4 ؛ البايت الثابت COLS = 4 ؛

مفاتيح char [ROWS] [COLS] = {{'1'، '4'، '7'، '/'}، {'2'، '5'، '8'، '+'}، {'3' ، '6'، '9'، '-'}، {'C'، '0'، '='، '*'}} ؛ بايت rowPins [ROWS] = {7، 6، 5، 4} ؛ // الاتصال بدبابيس الصف الخاصة بـ colPins بايت لوحة المفاتيح [COLS] = {3 ، 2 ، 1 ، 0} ؛ // الاتصال بدبابيس عمود لوحة المفاتيح

// تهيئة مثيل لفئة NewKeypad Keypad customKeypad = لوحة المفاتيح (makeKeymap (keys) ، rowPins ، colPins ، ROWS ، COLS) ؛

إعداد باطل () {lcd.begin (16، 2) ؛ // start lcd for (int i = 0 ؛ i <= 3 ؛ i ++) ؛ lcd.setCursor (0 ، 0) ؛ lcd.print ("آلة حاسبة") ؛ lcd.setCursor (0 ، 1) ؛ lcd.print ("بقلم جاي ميشرا") ؛ تأخير (4000) ؛ lcd.clear () ؛ lcd.print ("المشروع النهائي") ؛ تأخير (2500) ؛ lcd.clear () ؛ lcd.setCursor (0 ، 0) ؛ }

حلقة فارغة() {

customKey = customKeypad.getKey () ؛ switch (customKey) {case '0'… '9': // هذا يحافظ على جمع القيمة الأولى حتى يتم الضغط على عامل التشغيل "+ - * /" lcd.setCursor (0، 0)؛ الأول = الأول * 10 + (مفتاح مخصص - '0') ؛ lcd.print (أولاً) ؛ استراحة؛

الحالة '+': الأول = (المجموع! = 0؟ المجموع: الأول) ؛ lcd.setCursor (0 ، 1) ؛ lcd.print ("+") ؛ الثانية = SecondNumber () ؛ // احصل على العدد الإجمالي الثاني الذي تم جمعه = الأول + الثاني ؛ lcd.setCursor (0 ، 3) ؛ lcd.print (إجمالي) ؛ الأول = 0 ، الثاني = 0 ؛ // إعادة تعيين القيم إلى الصفر للاستخدام التالي لكسر ؛

الحالة "-": الأول = (المجموع! = 0؟ المجموع: الأول) ؛ lcd.setCursor (0 ، 1) ؛ lcd.print ("-") ؛ الثانية = SecondNumber () ؛ المجموع = أول - ثانية ؛ lcd.setCursor (0 ، 3) ؛ lcd.print (إجمالي) ؛ الأول = 0 ، الثاني = 0 ؛ استراحة؛

الحالة '*': الأولى = (المجموع! = 0؟ المجموع: الأول) ؛ lcd.setCursor (0 ، 1) ؛ lcd.print ("*") ؛ الثانية = SecondNumber () ؛ المجموع = أول * ثانية ؛ lcd.setCursor (0 ، 3) ؛ lcd.print (إجمالي) ؛ الأول = 0 ، الثاني = 0 ؛ استراحة؛

الحالة '/': الأول = (المجموع! = 0؟ المجموع: الأول) ؛ lcd.setCursor (0 ، 1) ؛ lcd.print ("/") ؛ الثانية = SecondNumber () ؛ lcd.setCursor (0 ، 3) ؛

الثانية == 0؟ lcd.print ("غير صالح"): إجمالي = (عائم) أولاً / (عائم) ثانية ؛

lcd.print (إجمالي) ؛ الأول = 0 ، الثاني = 0 ؛ استراحة؛

الحالة "ج": المجموع = 0 ؛ lcd.clear () ؛ استراحة؛ }}

long SecondNumber () {while (1) {customKey = customKeypad.getKey () ؛ if (customKey> = '0' && customKey <= '9') {second = second * 10 + (customKey - '0') ؛ lcd.setCursor (0 ، 2) ؛ lcd.print (الثانية) ؛ }

إذا كسر (مفتاح مخصص == '=') ؛ // العودة الثانية ؛ } عودة ثانية؛ }

الخطوة 5: تفكيك الكود

تحطيم القانون
تحطيم القانون

قمنا بتهيئة القيم لكي يفهمها الكمبيوتر

#يشمل

# تضمين # تضمين

LiquidCrystal LCD (13 ، 12 ، 11 ، 10 ، 9 ، 8) ؛

طويلة أولا = 0 ؛ ثانية طويلة = 0 ؛ مجموع مزدوج = 0 ؛

char customKey ؛ const بايت ROWS = 4 ؛ البايت الثابت COLS = 4 ؛

أخبرنا الكمبيوتر بالأرقام والعلامات التي يجب أن تعمل عليها لوحة المفاتيح

مفاتيح char [ROWS] [COLS] = {{'1'، '2'، '3'، '/'}، {'4'، '5'، '6'، '+'}، {'7' ، '8'، '9'، '-'}، {'C'، '0'، '='، '*'}} ؛

لقد انتهينا من صفوف وأعمدة لوحة المفاتيح وأي رقم يأتي في أي عمود ، إلخ

بايت rowPins [ROWS] = {7، 6، 5، 4} ؛ البايت colPins [COLS] = {3، 2، 1، 0} ؛

أنشأنا المقدمة ، أو الطاقة على الشاشة للكمبيوتر (يمكنك كتابة اسمك عليها)

إعداد باطل () {lcd.begin (16، 2) ؛ لـ (int i = 0 ؛ i <= 3 ؛ i ++) ؛ lcd.setCursor (0 ، 0) ؛ lcd.print ("آلة حاسبة") ؛ lcd.setCursor (0 ، 1) ؛ lcd.print ("بقلم جاي ميشرا") ؛ تأخير (4000) ؛ lcd.clear () ؛ lcd.print ("المشروع النهائي") ؛ تأخير (2500) ؛ lcd.clear () ؛ lcd.setCursor (0 ، 0) ؛ }

نقوم بإنشاء المعنى والصيغة لكل عملية في الآلة الحاسبة حتى يفهم الكمبيوتر الصيغة التي يجب استخدامها عندما يضغط المستخدم على "+" على الآلة الحاسبة ، إلخ

{case '0'… '9': lcd.setCursor (0، 0)؛ الأول = الأول * 10 + (مفتاح مخصص - '0') ؛ lcd.print (أولاً) ؛ استراحة؛

الحالة '/': الأول = (المجموع! = 0؟ المجموع: الأول) ؛ lcd.setCursor (0 ، 1) ؛ lcd.print ("/") ؛ الثانية = SecondNumber () ؛ lcd.setCursor (0 ، 3) ؛

الثانية == 0؟ lcd.print ("غير صالح"): إجمالي = (عائم) أولاً / (عائم) ثانية ؛

lcd.print (إجمالي) ؛ الأول = 0 ، الثاني = 0 ؛ استراحة؛ الحالة '+': الأول = (المجموع! = 0؟ المجموع: الأول) ؛ lcd.setCursor (0 ، 1) ؛ lcd.print ("+") ؛ الثانية = SecondNumber () ؛ lcd.setCursor (0 ، 3) ؛ lcd.print (إجمالي) ؛ الأول = 0 ، الثاني = 0 ؛ استراحة؛

الحالة "-": الأولى = (المجموع! = 0؟ المجموع: أولاً) ؛ lcd.setCursor (0 ، 1) ؛ lcd.print ("-") ؛ الثانية = SecondNumber () ؛ المجموع = أول - ثانية ؛ lcd.setCursor (0 ، 3) ؛ lcd.print (إجمالي) ؛ الأول = 0 ، الثاني = 0 ؛ استراحة؛

الحالة '*': الأولى = (المجموع! = 0؟ المجموع: الأول) ؛ lcd.setCursor (0 ، 1) ؛ lcd.print ("*") ؛ الثانية = SecondNumber () ؛ المجموع = أول * ثانية ؛ lcd.setCursor (0 ، 3) ؛ lcd.print (إجمالي) ؛ الأول = 0 ، الثاني = 0 ؛ استراحة؛

الحالة "ج": المجموع = 0 ؛ lcd.clear () ؛ استراحة؛ }}

الكود سهل للغاية ، كل ما عليك فعله هو محاولة فهمه ومن ثم يمكن القيام بكل شيء بسهولة. إذا كان هناك أي مشاكل مع الرمز ، راسلني عبر البريد الإلكتروني

الخطوة 6: كيف تعمل أجهزة هذه الآلة الحاسبة؟

كيف تعمل أجهزة هذه الآلة الحاسبة؟
كيف تعمل أجهزة هذه الآلة الحاسبة؟

تستخدم هذه الآلة الحاسبة شاشة LCD ولوحة مفاتيح ولوحة Arduino ومقاوم 220 أوم. كل هذه المكونات منفصلة ولكنها متصلة بأسلاك من Arduino إلى لوحة المفاتيح وشاشة LCD. ترتبط أقسام مختلفة من شاشة LCD بلوحة Arduino التي تربطهما في النهاية بلوحة المفاتيح. بعد الاتصال ، يقوم الترميز بكل العمل ويعطي كل عملية وزر على لوحة المفاتيح مهمة لمتابعة.

الخطوة 7: معاينة كاملة للحاسبة

هذا ما يبدو عليه مشروعنا النهائي! إذا لم يعمل الرمز الخاص بك ، أو كانت هناك بعض الصعوبات التقنية ، فيرجى مراسلتي عبر البريد الإلكتروني وسأبذل قصارى جهدي لمساعدتك في إنشاء أفضل آلة حاسبة!

الخطوة 8: استلهمي من هذه المدونة

لقد استوحيت من الفيديو أعلاه كيفية صنع آلة حاسبة على tinkercad! لم أقوم بنسخ ولصق أي شيء ولكني استخدمت فكرته عن الآلة الحاسبة وفهم الكود.

موصى به: