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

مسابقة TinkerCad للحاسبة: 8 خطوات
مسابقة TinkerCad للحاسبة: 8 خطوات

فيديو: مسابقة TinkerCad للحاسبة: 8 خطوات

فيديو: مسابقة TinkerCad للحاسبة: 8 خطوات
فيديو: فتاة الروبوت عندما سألها هل تؤمنين بالله شاهد ماذا أجابت #shorts 2024, شهر نوفمبر
Anonim
مسابقة TinkerCad للحاسبة
مسابقة TinkerCad للحاسبة

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

الخطوة 1: المواد

للحلبة:

  • شاشة LCD 16 × 2
  • اردوينو اونو R3
  • لوحة المفاتيح 4x4
  • اللوح الصغير
  • مقياس الجهد (250 كيلو أوم)
  • المقاوم (1kΩ)
  • x26 أسلاك توصيل

الخطوة 2: توصيل لوحة المفاتيح 4x4

توصيل لوحة المفاتيح 4x4
توصيل لوحة المفاتيح 4x4

قم بتوصيل دبابيس 4 صفوف على لوحة المفاتيح 4x4 بدبابيس Arduino 4-7 ، وقم بتوصيل دبابيس الأعمدة الأربعة بدبابيس Arduino 0-3.

الخطوة 3: توفير الطاقة للوحة التوصيل وتوصيل شاشة LCD

قم بتوفير الطاقة للوحة التوصيل وتوصيل شاشة LCD
قم بتوفير الطاقة للوحة التوصيل وتوصيل شاشة LCD

لقد استخدمت جهد طاقة قدره 5 للوح. لقد قمت بتوصيل الطاقة والأرض باللوحة. يتم وضع شاشة LCD على اللوح ، ويتم وضعها بحيث يتم توصيل جميع دبابيسها بلوحة التجارب.

الخطوة 4: قم بتوصيل الطاقة والأرضي بشاشة LCD

قم بتوصيل الطاقة والأرضي بشاشة LCD
قم بتوصيل الطاقة والأرضي بشاشة LCD

سيكون هناك 3 دبابيس من الأرض اللازمة لتوصيلها بشاشة LCD. سيتم توصيل أحدهم بالأرض بنفسه من شاشة LCD ، وسيتم توصيل الآخر بمصباح LED الخاص بشاشة LCD ، وسيتم توصيل الأخير بـ RW. سوف يتطلب VCC الخاص بشاشة LCD و LED توصيل الطاقة. ومع ذلك ، فإن طاقة LED ستتطلب مقاومًا متصلًا في هذه الحالة لقد استخدمت مقاومًا 1kΩ.

الخطوة 5: توصيل مقياس الجهد

توصيل مقياس الجهد
توصيل مقياس الجهد

قم بتوصيل مقياس الجهد بلوحة التجارب باستخدام 3 أعمدة مجانية. سيكون به 3 دبابيس ، سيحتاج العمود الذي يحتوي على دبوس الطرف 1 إلى الأرض الممنوحة له. سيحتاج العمود الذي يحتوي على طرف الطرف 2 إلى الطاقة الممنوحة له. بعد ذلك ، سيكون للممسحة سلك توصيل في العمود الذي يتصل بـ VO من شاشة LCD.

الخطوة 6: توصيل Arduino بشاشة LCD

توصيل Arduino بشاشة LCD
توصيل Arduino بشاشة LCD

سيتم توصيل الدبابيس 8-13 الموجودة على Arduino بشاشة LCD. سوف تتصل الدبابيس 8-11 على Arduino بـ D8 (7-4) على التوالي. ثم سيتصل الدبوس 12 من Arduino بـ Enable of the LCD ، وسوف يتصل الدبوس 13 في Arduino بسجل شاشة LCD.

الخطوة 7: تنفيذ التعليمات البرمجية

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

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

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

طويلة أولا = 0 ؛

ثانية طويلة = 0 ؛

مجموع مزدوج = 0 ؛

وضع int = 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) ؛

lcd.setCursor (5 ، 0) ؛

lcd.clear () ؛ }

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

customKey = customKeypad.getKey () ؛

التبديل (مفتاح مخصص) {

الحالة "0" … "9":

lcd.setCursor (0 ، 0) ؛

الأول = الأول * 10 + (مفتاح مخصص - '0') ؛

lcd.print (أولاً) ؛

وضع ++ ؛

استراحة؛

الحالة "+":

الأول = (المجموع = 0؟ المجموع: الأول) ؛

lcd.setCursor (الوضع ، 0) ؛

lcd.print ("+") ؛

وضع ++ ؛

الثانية = SecondNumber () ؛

المجموع = أول + ثانية ؛

lcd.setCursor (1 ، 1) ؛

lcd.print (إجمالي) ؛

الأول = 0 ،

الثانية = 0 ؛

وضع = 0 ؛

استراحة؛

قضية '-':

الأول = (المجموع = 0؟ المجموع: الأول) ؛

lcd.setCursor (الوضع ، 0) ؛

lcd.print ("-") ؛

وضع ++ ؛

الثانية = SecondNumber () ؛

المجموع = أول - ثانية ؛

lcd.setCursor (1 ، 1) ؛

lcd.print (إجمالي) ؛

الأول = 0 ،

الثانية = 0 ؛

وضع = 0 ؛

استراحة؛

قضية '*':

الأول = (المجموع = 0؟ المجموع: الأول) ؛

lcd.setCursor (الوضع ، 0) ؛

lcd.print ("*") ؛

وضع ++ ؛

الثانية = SecondNumber () ؛

المجموع = أول * ثانية ؛

lcd.setCursor (1 ، 1) ؛

lcd.print (إجمالي) ؛

الأول = 0 ،

الثانية = 0 ؛

وضع = 0 ؛

استراحة؛

قضية '/':

الأول = (المجموع = 0؟ المجموع: الأول) ؛

lcd.setCursor (الوضع ، 0) ؛

lcd.print ("/") ؛

وضع ++ ؛

الثانية = SecondNumber () ؛ lcd.setCursor (1 ، 1) ؛

الثانية == 0؟ lcd.print ("خطأ"): المجموع = (عائم) أولاً / (عائم) ثانية ؛

lcd.print (إجمالي) ؛

الأول = 0 ،

الثانية = 0 ؛

وضع = 0 ؛

استراحة؛

الحالة "ج":

المجموع = 0 ؛

الأول = 0 ؛

الثانية = 0 ؛

وضع = 0 ؛

lcd.clear () ؛

استراحة؛ }

}

رقم SecondNumber الطويل () {

بينما (1) {

customKey = customKeypad.getKey () ؛

إذا (customKey> = '0' && customKey <= '9') {

الثانية = الثانية * 10 + (مفتاح مخصص - '0') ؛

lcd.setCursor (الوضع ، 0) ؛

lcd.print (الثانية) ؛ }

إذا (المفتاح المخصص == 'C') {

المجموع = 0 ؛

الأول = 0 ؛

الثانية = 0 ؛

وضع = 0 ؛

lcd.clear () ؛

استراحة؛ }

إذا (المفتاح المخصص == '=') {

lcd.setCursor (0 ، 1) ؛

lcd.print ("=") ؛

وضع = المجموع ؛

lcd.clear () ؛

lcd.setCursor (0 ، 1) ؛

lcd.print ("=") ؛

استراحة؛ }

}

العودة الثانية؛}

الخطوة 8: النتيجة

نتيجة
نتيجة
نتيجة
نتيجة

أتمنى أن تستمتعوا جميعًا بهذه التعليمات. شكرا لقرائتك!

صاييم.

موصى به: