عند دراسة وإصلاح أجهزة الكمبيوتر الأقدم مني ، كان من الضروري فلاش ذاكرة القراءة فقط. اختبارات ذاكرة الوصول العشوائي والأجهزة الطرفية لإجراء. لم يكن لدي مبرمج عادي في ذلك الوقت.
بالطبع ، من الممكن تجميع المنطق الخاص بمنفذ LPT ، لكن تم تجاهل هذا الخيار ، حيث أنه من الضروري استخدامه لتضمين رجل عجوز آخر. في أجهزة الكمبيوتر الحديثة ، لا تزال هذه الواجهة موجودة (على الرغم من عدم وجود موصل كامل ، ولكن في المشط) ، كما أن شراء بطاقة في فتحة PCI لا يمثل مشكلة أيضًا ، ولكن توجد بالفعل صعوبات في البرنامج. تمت كتابته منذ وقت طويل عندما تم العمل مع منافذ الإدخال / الإخراج في أنظمة التشغيل بشكل مختلف. وفقا لذلك ، في الإصدارات الحديثة من برنامج ويندوز لن تعمل.
من الجدير بالذكر على الفور أنني أعرف عن وجود TL866. وحتى أثناء عملية التطوير ، قام بشرائها لنفسه ، لكنه لا يستطيع فلاش الرقائق التي تتطلب جهد برمجة عاليًا. أقصى 18 فولت (TL866 + أو 21 للإصدار السابق).
قادني googling سريع إلى هذا المستودع . بعد أن قمت بتجميع مبرمج ، تمكنت من تفريغ اثنين من رقائق الاهتمام. لكن مع تحول كل شيء إلى البرامج الثابتة ، أصبح البرنامج أكثر تعقيدًا ... البرنامج ببساطة لا يعرف كيف ... بالطبع ، يمكنك خداعه عن طريق الكشف عن الشريحة الخطأ ، ولكن هذا لا يعمل في جميع الحالات ، ومن الواضح أنه ليس طريقة لدينا
لقد شعرت بخيبة أمل شديدة من واجهة المستخدم ، والتي ، بدلاً من الإصدار الكلاسيكي مع الحق في تحديد المنفذ للمستخدم ، مرت بجميع الواجهات التسلسلية المتاحة. وفقا لذلك ، جميع الأجهزة إعادة التشغيل. قد يكون ذلك مهينًا ، على الأرجح ، عندما يكون لديك طابعة ثلاثية الأبعاد لمدة 10 ساعات تطبع جزءًا من محرك أقراص فلاش USB ، وهنا يعد هذا الإعداد ...
عالم OpenSource جميل حيث يمكنك أن تأخذ المشروع وتضيفه إلى مهمتك. في هذه الحالة ، لا توجد أكواد مصدر للواجهة الرسومية. على الأقل لم أجدها ، على الرغم من أنني أستطيع الكتابة إلى المطور. أصبحت مثيرة للاهتمام وكان هناك سبب صغير لدراسة كيو تي. وبالتالي فإن البرنامج سيكون عبر منصة.
نأخذ الأساس للمخطط من المشروع السابق ونعدّل الجهاز إلى الوظيفة المطلوبة. قررت التضحية بدعم EEPROM في البرنامج. قد لا يكون هذا حلاً جيدًا ، لكن الرقائق القابلة للمسح كهربائيًا لم تعد بحاجة إلى مثل هذا الجهد العالي. عند الانتهاء من وضع اللمسات الأخيرة ، اعتمد على أكثر الدوائر الصغيرة كثافة (27C512 لـ DIP28) وأزال كل الالتباس فيما يتعلق بأرجل العنوان. سيتم تعيين العنوان بالكامل حصريًا باستخدام سجلات التحويل (74HC595). هذا يحرر الأرجل الإضافية من متحكم نفسه ، والتي ستكون ضرورية للسيطرة على امدادات الجهد البرمجة. ويمكن الحصول على جميع الإشارات اللازمة (PRG) عن طريق تعديل العنوان قبل تحميله في السجلات.
بقي مبدأ تطبيق برمجة الجهد نفسه. يتغير فقط في مجال حماية دبابيس متحكم وسجلات التحول. لقد استبدلت المقاومات (1 KOhm) مع الثنائيات بسحب يصل إلى السجل. 0. هذا خيار أقل عدوانية. رغم ذلك ، في الإنصاف ، والمقاومات العمل.
بعد دراسة الوثائق الخاصة بكل شرائح الاهتمام ، قررت أن ثلاث نقاط لتغذية Vpp مطلوبة:
- المرحلية 27C16 21 قدمًا (مقبس DIP28 بحجم 23 قدمًا)
- 27C32 و 27 C512 لكل إشارة #OE (تمكين الإخراج)
- 27C64 ، 27C128 ، 27C256 على 1 الساق من الدوائر الصغيرة
تختلف الدوائر الدقيقة 27C16 و 27C32 عن الدوائر الأخرى في العلبة ، لذلك تحتاج إلى توفير الطاقة إلى المحطة السادسة والعشرين من المقبس. هذه هي المحطة عنوان A13 للأخوة أكثر رحابة. يجب أن يكون التيار من إخراج سجل الإزاحة كافيًا للعمل ، ولكن في وقت تحميل البيانات ، تدخل مخرجاته في الحالة Z. يُسمح بوضع مماثل ، لكن التضمين في القراءة أو الكتابة لخلية واحدة لا يكاد يكون هو القاعدة. لذلك ، يتم تثبيت الترانزستور إضافية تحت سيطرة السلطة. وكانت هناك حاجة إلى واحدة أخرى من أجل 27C16 ، والتي ، وقت القراءة ، تحتاج إلى توفير 5 فولت لمدخلات Vpp. يمكنك ، بالطبع ، ضبط جهد البرمجة على 5 فولت أثناء القراءة ، ولكن التبديل بين 25 و 5 فولت غير مريح.
إذا كان هناك الساقين الحرة ADC ، فلماذا لا قياس الجهد البرمجة؟ المجلس مطلقة تحت اردوينو نانو. هناك اثنين من المدخلات الإضافية على ذلك ، والتي لا يمكن استخدامها إلا ل ADC. هذا هو في الواقع سمة من سمات العديد من ميكروكنترولر AVR في السكن جبل السطح. على الصينية اردوينو UNO ، غالبا ما يكون هناك مدخلات A6 و A7. بالنظر إلى أن الجهد يمكن أن يصل إلى 30 فولت (يبدو أن RF5 المحلية ، 25 فولت أكثر من كل شيء) ، فإننا نحسب الفاصل من ما هو متاح. دقة 0.5 فولت كافية لهذه المهمة. هذه الوظيفة مضمونة ، وليس الفولتميتر.
كان من الممكن ، بالطبع ، الحصول على الخلط والعمل كوحدة تحكم WID (تنظيم عرض النبض) ، ولكن لم تكن هناك أرجل حرة. لذلك ، يوجد على لوحة الدوائر المطبوعة مقعد لمحول DC-DC Step Up على رقاقة MT3608 ، والتي تتوفر لبنس واحد على علي.
وفقًا للمخطط ، هذا كل شيء.

خوارزمية العمل مع هذه الدوائر الصغيرة بسيطة للغاية. يمكنك قراءتها في فيديو قصير.
تتوفر المخططات والبرامج في المستودع على GitHub: https://github.com/walhi/arduino_eprom27_programmer . أثناء التجميع ، يمكنك تغيير قيم المقاومات بأمان. صحيح ، مع الفاصل ، تحتاج إلى إصلاح رمز الرسم قليلاً.