جدول المحتويات:
فيديو: كمبيوتر جيب صغير ورخيص الثمن يمكن برمجته في أي مكان: 5 خطوات
2025 مؤلف: John Day | [email protected]. آخر تعديل: 2025-01-13 06:56
يمكنك تحويل CardKB إلى كمبيوتر جيب
كمبيوتر جيب كامل لـ CardKB باستخدام شاشة ArduinoBaisc و CardKB و I2C OLED. نظرًا لأن BASIC تستخدم ArduinoBasic (https://github.com/robinhedwards/ArduinoBASIC) ، فهي تدعم جميع الوظائف العادية تقريبًا مثل متغيرات التعويم والسلسلة والمصفوفات متعددة الأبعاد و FOR-NEXT و GOSUB-RETURN وما إلى ذلك. حفظ وتحميل من EEPROM مدعوم. يستخدم برنامج ومتغيرات BASIC حوالي 1 كيلو من ذاكرة الوصول العشوائي ، لذلك فهي تكاد تكون مكافئة لجهاز الكمبيوتر الأول (Sinclair ZX81). يتم استخدام 1 كيلو بايت أخرى من ذاكرة الوصول العشوائي للوحة المفاتيح ومخزن الشاشة ، وهناك مساحة صغيرة لمكدس وحدة المعالجة المركزية. نظرًا لأن اردوينو يحتوي على 1k EEPROM ، إذا كان البرنامج مناسبًا للبيئة الأساسية ، فسيكون مناسبًا في EEPROM.
اللوازم
1) CardKB (https://en.aliexpress.com/item/32963872643.html)
2) I2C OLED (على سبيل المثال SSD1306 128x32 أو 128x64)
3) اللوح الصغير
4) صندوق البطارية
5) EEPROM (على سبيل المثال 24LC256) (خيار)
الخطوة 1: المتطلبات الأساسية
- استخدم CardKB Mini Keyboard. يرجى الرجوع إلى https://en.aliexpress.com/item/32963872643.html للحصول على التفاصيل.
- شاشة OLED تعتمد على SSD1306 متصلة باستخدام I2C. يعمل الإصدار 128 × 32 على تغيير بعض التعريفات بشكل جيد. يستخدم ArduinoBasic SPI OLED ، لكن أجهزة كمبيوتر الجيب التي تستخدم CardKB تستخدم I2C OLED.
- (اختياري) استخدم ذاكرة EEPROM خارجية (مثل 24LC256) لحفظ ملفات متعددة.
التجميع سهل للغاية. يمكن توصيل CardKB و OLED و EEPROM بواسطة I2C باستخدام لوحة توصيل صغيرة. أضع صورة لمعلومات كابل CardKB
الخطوة 2: البرمجة والتجميع
- قم بتنزيل البرنامج من هنا.
- ضع SSD1306ASCII ضمن مجلد / Arduino / libraries.
- مكتبة Adafruit NeoPixel مطلوبة.
-
حدد "ATmega328p (3.3 فولت ، 8 ميجا هرتز)" عند التحويل البرمجي. إذا لم يتم تحديده ، فسيظل مصباح NeoPixel LED مضاءً باللون الأبيض.
- حدد "تصدير ثنائي مترجمة" لإنشاء ملف كتابة.
الخطوة 3: اكتب البرنامج
اكتب ثنائيًا تم تجميعه باستخدام أدوات مثل avrdude أو avrdude-GUI و USB ISP.
لقد أنشأت أداة تكتب إلى CardKB. يجب عليك استخدام دبابيس العبور بدلاً من الأدوات.
لا تعيد كتابة بت فتيل CardKB
الخطوة 4: الرجاء تصحيح SSD1306ASCII_I2C.h على النحو التالي
#define OLED_WIDTH 128
# تعريف OLED_HEIGHT 32 # تعريف OLED_COLMAX 21 # تعريف OLED_ROWMAX 4
128×64>
#define OLED_WIDTH 128
# تعريف OLED_HEIGHT 64 # تعريف OLED_COLMAX 21 # تعريف OLED_ROWMAX 8
الخطوة 5: الإنهاء
استمتع:-)