جدول المحتويات:
- الخطوة 1: الشجاعة
- الخطوة 2: تجميع ثنائي الفينيل متعدد الكلور
- الخطوة 3: حان الوقت للحصول على البرمجة
- الخطوة 4: حول البرنامج نفسه
- الخطوة 5: تخصيص إبداعك
فيديو: بطاقة العمل / وحدة التحكم في الألعاب: ATtiny85 وشاشة OLED: 5 خطوات (بالصور)
2024 مؤلف: John Day | [email protected]. آخر تعديل: 2024-01-30 07:40
مرحبا جميعا
سأوضح لك اليوم كيف يمكنك بناء بطاقة عملك / وحدة التحكم في الألعاب / كل ما يمكنك تخيله يتميز بشاشة I2C OLED بإضاءة خلفية ومعالج ATtiny85 دقيق. في هذا Instructable ، سأخبرك كيف يعمل ثنائي الفينيل متعدد الكلور الذي صممته بالفعل ، وكيف يمكنك بنائه ، وما يمكنك فعله بهذه الوظيفة. إذا كان لديك بالفعل شاشة I2C متصلة بـ ATtiny85 ، فيمكن أن يظل هذا Instructable مفيدًا إذا كنت تحاول عرض الصور أو تريد إنشاء قوائم ولعبة والمزيد.
ربما تتساءل ما هو هذا الشيء في الواقع. إنها مجرد لوحة دائرة مطبوعة بسيطة بها بطارية وشاشة وأزرار ومفتاح تشغيل / إيقاف ووحدة معالجة. فكر في الأمر على أنه Gameboy صغير ، يمكنك بسهولة البرمجة للقيام بمجموعة متنوعة من الأشياء. فصاعدا!
الخطوة 1: الشجاعة
إذا لم تكن قد قمت بذلك بالفعل ، فإنني أوصي بشدة أن تقوم بإنشاء حساب على circuits.io. سيسمح لك ذلك بتخصيص تصميمي ليناسب احتياجاتك.
في هذه الخطوة ، سأشرح كيف يمكنك بالفعل وضع يديك على إحدى لوحات الدوائر المطبوعة (PCBs). لقد صنعت PCB الخاص بي في circuits.io ، وهي أداة رائعة عبر الإنترنت يمكنك استخدامها لإنشاء مخططات الدوائر وثنائي الفينيل متعدد الكلور. يمكنك عرض التصميم هنا:
إذا كنت مهتمًا بالحصول على PCB ، فيمكنك طلب ما تريد من OSH Park باستخدام هذا الرابط:
يستغرق الأمر بعض الوقت للحصول على المجالس (1-3 أسابيع) ، لكن ثق بي. انه يستحق ذلك! ستحتاج إلى الأجزاء التالية لإنشاء بطاقتك متعددة الوظائف:
- ATtiny85 في حزمة SOIC-8. هذا هو عقل مشروعنا الذي يتحكم في كل شيء.
- شاشة OLED I2C 128x64 pixel:
- 2 مقاومات 22 كيلو أوم. هذه مقاومات سحب للأزرار.
- حامل CR2032 المثبت على السطح:
- بطارية خلية العملة المعدنية CR2032. هذه البطارية الصغيرة يمكنها تشغيل الدائرة لبعض الوقت.
- 3-دبوس انزلاق التبديل. هذا هو مفتاح الطاقة!
- رؤوس الإناث. يمكنك استخدام هذه لبرمجة ATtiny85 أثناء وجوده في الدائرة!
- أزرار 6 مم:
- لوحة دوائر مطبوعة (يمكنك طلبها باستخدام الرابط أعلاه
أدوات:
- لحام الحديد (برأس جيد)
- جندى
- كليبرز الرصاص
لبرمجة ATtiny85:
- 6 ذكر إلى ذكر أسلاك العبور
- مكثف واحد 10 ميكرو فاراد
- Arduino Uno أو أي متحكم آخر قائم على ATmega
الخطوة 2: تجميع ثنائي الفينيل متعدد الكلور
هذا حقا سهل جدا كل ما عليك القيام به هو لحام جميع المكونات في أماكنها الخاصة ، كما هو موضح على السبورة. تأتي بعض شاشات OLED هذه بأحجام مختلفة ، لذلك إذا كانت شاشتك كبيرة جدًا بالنسبة للوحة ، فيمكنك تعليقها من الأعلى كما في الصورة أعلاه ، والانحناء فوق الرؤوس الموجودة على الجانب الآخر ولحامها في الفتحات حيث كان من المفترض أن يذهبوا. انظر إلى الصورة الثانية إذا كنت مرتبكًا.
بعض النصائح المفيدة:
- يجب توجيه النقطة الصغيرة الموجودة على ATtiny بحيث تكون قريبة من مفتاح الشريحة ، وإلا فستحصل على الدبابيس بترتيب خاطئ.
- اتجاه حامل البطارية مهم. يجب أن تكون نهاية الحامل المزود بعلامة زائد محفورة على اللوحة السفلية (موجهة نحو المقاوم).
- لا يهم توجيه المفاتيح والأزرار والرؤوس والمقاومات
إذا كان لديك أي أسئلة ، يرجى مراسلتي عبر البريد الإلكتروني على info [at] coniferapps.com
الخطوة 3: حان الوقت للحصول على البرمجة
حصلت على مجموعة ATtiny / screen الخاصة بي تعمل باستخدام التعليمات التالية: https://www.instructables.com/id/ATTiny85-connects-to-I2C-OLED-display-Great-Things/. في الواقع ، حتى أنني أستخدم المكتبة التي عدلها AndyB2 في رسوماتي الخاصة.
الطريقة التي سنقوم بها ببرمجة ATtiny هي من خلال Arduino Uno. يوضح لك Instructable التالي كيفية القيام بذلك: https://www.instructables.com/id/Program-an-ATtiny-with-Arduino/. إذا لم تكن قد لاحظت بالفعل ، فإن جميع المسامير المطلوبة مكسورة بشكل مفيد على PCB مع أرقام الدبوس الموصوفة في الخلف.
إذا كنت تريد البدء بمثال أساسي ، فقم بتحميل المخطط المرتبط أعلاه ببطاقتك. تأكد من نقل مفتاح الطاقة إلى اليمين قبل القيام بذلك. أنت لا تريد أن تحصل على البطارية و Uno على حد سواء لتزويد الجهد في نفس الوقت! في هذا المجلد مجموعة من الملفات. سأتحدث عن هذا أكثر في الخطوة التالية ، لكن معظم ملفات الرأس الموجودة هناك تمثيلات سداسية عشرية للصور النقطية أحادية اللون. ملفات.bmp هي تلك الصور التي ذكرتها للتو - كما ترون ، فهي بالأبيض والأسود وبدقة 128 × 64 بكسل. لم يتم تحميلها إلى وحدة التحكم الدقيقة ، لكنني اعتقدت أنني سأقوم بتضمينها للرجوع إليها.
الخطوة 4: حول البرنامج نفسه
يعد الرسم التخطيطي الذي قمت بتحميله في الخطوة السابقة مثالًا أساسيًا جدًا لكيفية تنفيذ قائمة ما. أثناء النقر فوق كل من الزرين الأيمن والأيسر ، يقوم بتبديل عداد في البرنامج. ثم يتم استدعاء الوظيفة التي تقوم ATtiny بفحص حالة هذا العداد ، وبناءً على رقم العداد ، يقوم ATtiny برسم صورة لخيار القائمة المحدد حاليًا على الشاشة. كل خلية من خلايا القائمة المحددة المختلفة هي صورتها الخاصة. إذا تم الضغط على الزر العلوي ، يتحقق ATtiny مرة أخرى من حالة العداد لتحديد شاشة التفاصيل التي سيتم عرضها. أثناء عرض شاشات التفاصيل هذه ، يقوم ATtiny بالتحقق باستمرار لمعرفة ما إذا تم الضغط على أي زر. بمجرد اكتشاف الضغط على الزر ، يتم استدعاء الوظيفة التي ترسم القوائم مرة أخرى ويتم رسم الحالة الحالية للقائمة على الشاشة ، مما يعيدنا إلى القائمة. يبدو الأمر شاقًا إلى حد ما إذا كنت جديدًا في البرمجة ، لكنني أعدك بمجرد إلقاء نظرة على الكود ، سيكون الأمر أكثر منطقية.
كل من شاشات التفاصيل هي أيضًا صورتها الخاصة.
إذا لم تكن قد لاحظت ، فإن خيار المفاجأة لا يفعل شيئًا. سنصل إلى هذا في الخطوة التالية:).
الخطوة 5: تخصيص إبداعك
الآن بعد أن رأيت ما فعلته ، حان الوقت لتخصيص البطاقة بمعلوماتك الخاصة. تحتوي تلك المكتبة التي قمت بتضمينها على وظيفة لرسم النص على الشاشة ، لكنني أوصي بشدة بالذهاب إلى حل قائم على الصور بشكل صارم ، لأنه يميل إلى الظهور بشكل أفضل. كنت في الأصل سأقوم بإضافة صور إلى جزء البرنامج من هذه التعليمات ، لكنها طويلة بما يكفي لتبرير التعليمات الخاصة بها. يمكنك مشاهدته هنا:
الآن بعد أن عرفت كيفية إضافة الصور ، هناك مجموعة من الأشياء التي يمكنك جعل البطاقة تفعلها. يمكنك استخدام القوائم وشاشة التعليمات الخاصة بي ، وإضافة معلومات الاتصال الخاصة بك فقط. يمكنك حتى عمل لعبة صغيرة لخيار "المفاجأة". سيكون من السهل إلى حد ما تحريك كائن صغير جدًا بحجم 10x10 حول الشاشة باستخدام الأزرار والتحقق مما إذا كان يتصادم مع كائن آخر. يمكنك عمل استنساخ طائر فلابي باستخدام نفس المفهوم! إذا قمت بعمل شيء ما ، يرجى نشر صورة / فيديو / ملف منه في التعليقات!
مجرد نقطة صغيرة أخرى نسيت أن أذكرها. بقدر ما يذهب التخزين ، لا يحتوي ATtiny85 على الكثير منه. بالنسبة للبرامج ، يبلغ حجمها حوالي 8 كيلوبايت. رسم تخطيطي الحالي الذي يحتوي على 5 صور ومكتبة عرض OLED يشغل حوالي 7 من تلك التي يبلغ حجمها 8 كيلوبايت. أي لعبة تقوم بإنشائها يجب أن تتناسب مع هذا الهامش الصغير نسبيًا ، لذلك سيكون تحديًا ممتعًا:).
شكرًا على الاستماع إليّ ، وإذا كان لديك أي أسئلة ، فلا تتردد في مراسلتي عبر البريد الإلكتروني على info [at] coniferapps.com (استبدل [at] بـ @). الرجاء التصويت لي في مسابقة Autodesk Circuits! نأمل أن يكون لديك قريبًا بطاقة / لعبة عملك الخاصة للتباهي!
موصى به:
بطاقة العمل التي تعمل باللمس: 8 خطوات (بالصور)
بطاقة أعمال الشاشات التي تعمل باللمس: أنا مهندس ميكانيكي عن طريق الدرجة ، لكنني طورت أيضًا مهارات في الهندسة الكهربائية والبرمجة من سنوات من المشاريع التي تتضمن الدوائر والميكروكونترولر. بما أن أصحاب العمل يتوقعون أن لدي مهارات في الهندسة الميكانيكية
كيف تصنع وحدة التحكم في الألعاب الخاصة بك: 6 خطوات (بالصور)
كيف تصنع وحدة التحكم في الألعاب الخاصة بك: هل أردت يومًا أن تصنع وحدة التحكم في ألعاب الفيديو الخاصة بك؟ وحدة تحكم رخيصة وصغيرة وقوية وحتى تناسب جيبك تمامًا؟ لذلك في هذا المشروع ، سأوضح لكم يا رفاق كيفية صنع وحدة تحكم في الألعاب باستخدام Raspberry Pi ، ولكن ما هو Raspberry
Flappy Bird على ATtiny85 وشاشة OLED SSD1306: 6 خطوات (بالصور)
Flappy Bird على ATtiny85 و OLED Display SSD1306: مرحبًا بالجميع ، سأريكم اليوم نسخة أساسية من لعبة Flappy Bird التي قمت بإنشائها ، وكيف يمكنك المضي قدمًا في صنع لعبة مماثلة. سأقوم بشكل أساسي بتشغيل الكود الخاص بي معك وأشرح كيف يعمل في كل خطوة على الطريق. هذه اللعبة مبنية على ru
مبرمج بطاقة العمل PIC: 6 خطوات (بالصور)
مبرمج الموافقة المسبقة عن علم لبطاقة العمل: كان هذا دخولي لمسابقة دائرة حجم بطاقة العمل Hack A Day. لقد ضغطت الملفات ووضعتها على موقع الويب الخاص بي. أنا أنشره هنا لأن جميع الإدخالات الأخرى تبدو على مدونة لسهولة الوصول إليها. نأمل أن يؤدي هذا إلى
Geek - حامل بطاقة الائتمان / بطاقة العمل من محرك القرص الصلب القديم للكمبيوتر المحمول: 7 خطوات
Geek - حامل بطاقة ائتمان / بطاقة عمل من محرك القرص الصلب القديم للكمبيوتر المحمول: حامل بطاقة ائتمان / عمل مهووس. خطرت لي هذه الفكرة المجنونة عندما مات محرك الأقراص الثابتة للكمبيوتر المحمول وأصبح عديم الفائدة بشكل أساسي. لقد قمت بتضمين الصور المكتملة هنا