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

حاسبة ثنائية إلى عشرية: 8 خطوات
حاسبة ثنائية إلى عشرية: 8 خطوات

فيديو: حاسبة ثنائية إلى عشرية: 8 خطوات

فيديو: حاسبة ثنائية إلى عشرية: 8 خطوات
فيديو: أسهل طريقه لتحويل العدد من النظام الثنائي الى النظام العشرى أو العكس 2024, يوليو
Anonim
ثنائي إلى آلة حاسبة عشرية
ثنائي إلى آلة حاسبة عشرية

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

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

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

لهذا المشروع ، سوف تحتاج إلى المواد التالية:

  • اردوينو UNO
  • أربعة ألواح
  • بطارية تسعة فولت
  • سبع بوابات XOR (2 شرائح XOR)
  • سبعة و بوابات (2 و رقائق)
  • ثلاث بوابات أو (شريحة أو شريحة واحدة)
  • خمسة مصابيح LED
  • ثمانية مقاومات 330 أوم
  • عرض شاشات الكريستال السائل
  • أربعة أسلاك من الذكور والإناث
  • الكثير من الأسلاك بين الذكور والإناث
  • متجرد الأسلاك
  • الأنود المشترك RGB LED

التكلفة (باستثناء الأسلاك): 79.82 دولارًا أمريكيًا

تم العثور على تكلفة جميع المواد على إلكترونيات ABRA.

الخطوة 2: فهم الأفعى 4 بت

فهم الأفعى 4 بت
فهم الأفعى 4 بت

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

www.youtube.com/watch؟v=mZ9VWA4cTbE&t=619s

الخطوة 3: بناء الأفعى 4 بت

بناء الافعى 4 بت
بناء الافعى 4 بت
بناء الافعى 4 بت
بناء الافعى 4 بت

من الصعب للغاية شرح كيفية بناء أعمدة من أربع بتات ، لأنها تنطوي على الكثير من الأسلاك. بناءً على هذه الصور ، يمكنني أن أعطيك بعض الحيل من أجل بناء هذه الدائرة. أولاً ، يمكن أن تكون الطريقة التي ترتب بها شرائح المنطق مهمة جدًا. من أجل الحصول على دائرة مرتبة ، اطلب رقائقك بالترتيب التالي: XOR و AND و OR و AND و XOR. من خلال الحصول على هذا الطلب ، لن تكون دائرتك نظيفة فحسب ، بل سيكون من السهل عليك أيضًا تنظيمها.

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

الخطوة 4: توفير الطاقة والأرض للدائرة

باستخدام بطارية 9 فولت ، قم بتوفير الطاقة والأرض للوحة التجارب التي ستحتوي على الأفعى المكون من أربعة بتات. بالنسبة للوحات التجارب الثلاثة المتبقية ، قم بتوفير الطاقة والأرضية لها من خلال Arduino UNO.

الخطوة 5: أسلاك المصابيح

المصابيح السلكية
المصابيح السلكية

بالنسبة لهذا المشروع ، سيتم استخدام مصابيح LED الخمسة كجهاز إدخال وإخراج. كجهاز إخراج ، سيضيء مؤشر LED رقمًا ثنائيًا ، اعتمادًا على المدخلات الموضوعة في الأفعى المكون من أربعة بتات. كجهاز إدخال ، اعتمادًا على مصابيح LED التي يتم تشغيلها وإيقافها ، سنكون قادرين على عرض الرقم الثنائي المحول على شاشة LCD كرقم عشري. لتوصيل الصمام الثنائي الباعث للضوء (LED) ، سوف تقوم بتوصيل أحد المجاميع المكونة من الأفعى المكون من أربعة بتات بساق الأنود الخاصة بمؤشر LED (الجزء الطويل من LED) ، ولكن بينهما ، ضع مقاومًا بقوة 330 أوم. ثم قم بتوصيل ساق الكاثود من LED (ساق قصيرة من LED) بالسكة الأرضية. بين المقاوم وسلك الجمع ، قم بتوصيل سلك ذكر إلى ذكر بأي دبوس رقمي على Arduino UNO. كرر هذه الخطوة للمبالغ الثلاثة المتبقية والتنفيذ. كانت الدبابيس الرقمية التي استخدمتها هي 2 و 3 و 4 و 5 و 6.

الخطوة 6: توصيل الأسلاك الأنود المشترك RGB LED

الأسلاك الأنود المشترك RGB LED
الأسلاك الأنود المشترك RGB LED

بالنسبة لهذا المشروع ، فإن الغرض من RGB LED هذا هو تغيير الألوان كلما تم تكوين رقم عشري جديد على شاشة LCD. عندما تنظر لأول مرة إلى مصباح الأنود RGB المشترك ، ستلاحظ أن له 4 أرجل ؛ ساق ذات ضوء أحمر ، وساق كهربائية (أنود) ، وساق ذات ضوء أخضر ، وساق ذات ضوء أزرق. سيتم توصيل ساق الطاقة (الأنود) بسكة الطاقة ، باستقبال 5 فولت. قم بتوصيل الأرجل الثلاثة المتبقية بمقاومات 330 أوم. على الطرف الآخر من المقاوم ، استخدم سلك ذكر إلى ذكر لتوصيله بمسمار PWM dgital على Arduino. الدبوس الرقمي PWM هو أي دبوس رقمي به خط متعرج بجانبه. دبابيس PWM التي استخدمتها كانت 9 و 10 و 11.

الخطوة 7: توصيل شاشة LCD

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

بالنسبة لهذا المشروع ، ستعرض شاشة LCD الرقم الثنائي المحول إلى رقم عشري. عندما ننظر إلى شاشة LCD ، ستلاحظ 4 دبابيس ذكر. تلك المسامير هي VCC و GND و SDA و SCL. بالنسبة لـ VCC ، استخدم سلكًا من الذكور إلى الإناث لتوصيل دبوس VCC بسكة الطاقة على لوح التجارب. سيوفر هذا 5 فولت إلى دبوس VCC بالنسبة إلى دبوس GND ، قم بتوصيله بالسكة الأرضية باستخدام سلك ذكر إلى أنثى. باستخدام دبابيس SDA و SCL ، قم بتوصيله بدبوس تناظري بسلك ذكر إلى أنثى. لقد قمت بتوصيل دبوس SCL بالدبوس التمثيلي A5 ودبوس SDA بالدبوس التمثيلي A4.

الخطوة الثامنة: كتابة الكود

الآن بعد أن شرحت جزء البناء من هذا المشروع ، فلنبدأ الآن في الكود. أولاً ، نحتاج أولاً إلى تنزيل واستيراد المكتبات التالية ؛ مكتبة LiquidCrystal_I2C ومكتبة الأسلاك.

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

بمجرد القيام بذلك ، تحتاج إلى التصريح عن جميع المتغيرات الضرورية. في أي نوع من التعليمات البرمجية ، يجب أن تعلن عن المتغيرات الخاصة بك أولاً.

رقم int رقم 1 = 2 ؛

رقم عدد صحيح 2 = 3 ؛

رقم عدد صحيح 3 = 4 ؛

رقم int رقم 4 = 5 ؛

رقم int عدد 5 = 6 ؛

عدد int digitsum1 = 0 ؛

عدد int digitsum2 = 0 ؛

عدد int digitsum3 = 0 ؛

عدد int digitsum4 = 0 ؛

عدد int digitsum5 = 0 ؛

char array1 = "ثنائي إلى عشري"؛

char array2 = "المحول" ؛

int تيم = 500 ؛ // قيمة وقت التأخير

const int redPin = 9 ؛

const int greenPin = 10 ؛

const int bluePin = 11 ؛

#define COMMON_ANODE

LiquidCrystal_I2C lcd (0x27، 16، 2) ؛

في إعداد الفراغ () ، تعلن عن نوع الدبوس لجميع المتغيرات الخاصة بك. ستستخدم أيضًا البداية التسلسلية لأننا نستخدم analogWrite ()

الإعداد باطل()

{

Serial.begin (9600) ؛

pinMode (digit1 ، INPUT) ؛

pinMode (digit2 ، INPUT) ؛

pinMode (digit3 ، INPUT) ؛

pinMode (digit4، INPUT) ؛

pinMode (digit5، INPUT) ؛

lcd.init () ،

اضاءه خلفيه ال سى دى()؛

pinMode (redPin ، الإخراج) ؛

pinMode (greenPin ، الإخراج) ؛

pinMode (bluePin ، الإخراج) ؛

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

lcd.setCursor (15، 0) ؛ // اضبط المؤشر على العمود 15 ، السطر 0

لـ (int positionCounter1 = 0 ؛ positionCounter1 <17 ؛ positionCounter1 ++)

{

lcd.scrollDisplayLeft () ، // لتمرير محتويات الشاشة بمسافة واحدة إلى اليسار.

lcd.print (array1 [positionCounter1]) ؛ // اطبع رسالة على شاشة LCD.

تأخير (توقيت) ؛ // انتظر حتى 250 ميكروثانية

}

lcd.clear () ؛ // يمسح شاشة LCD ويضع المؤشر في الزاوية العلوية اليسرى.

lcd.setCursor (15 ، 1) ؛ // اضبط المؤشر على العمود 15 ، السطر 1

لـ (int positionCounter = 0 ؛ positionCounter <9 ؛ positionCounter ++)

{

lcd.scrollDisplayLeft () ، // لتمرير محتويات الشاشة بمسافة واحدة إلى اليسار.

lcd.print (array2 [positionCounter]) ؛ // اطبع رسالة على شاشة LCD.

تأخير (تيم) ؛ // انتظر 250 ميكروثانية

}

lcd.clear () ؛ // يمسح شاشة LCD ويضع المؤشر في الزاوية العلوية اليسرى.

}

الآن بعد أن انتهينا من إعداد الفراغ () ، دعنا ننتقل إلى الحلقة الفارغة (). في الحلقة الفارغة ، قمت بإنشاء العديد من عبارات if-else للتأكد من أنه عندما تكون بعض الأضواء مضاءة أو مطفأة ، فإنها ستعرض رقمًا عشريًا معينًا على الشاشة. لقد أرفقت مستندًا يوضح ما يوجد داخل حلقة الفراغ والعديد من الفراغات الأخرى التي قمت بإنشائها. انقر هنا لزيارة الوثيقة

الآن كل ما عليك فعله هو تشغيل الكود والاستمتاع بالمحول الثنائي الجديد إلى العشري.

موصى به: