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

كيفية تعطيل JTAG قبل تمهيد Atmegas 40DIP باستخدام Arduino IDE Mightycore: 4 خطوات
كيفية تعطيل JTAG قبل تمهيد Atmegas 40DIP باستخدام Arduino IDE Mightycore: 4 خطوات

فيديو: كيفية تعطيل JTAG قبل تمهيد Atmegas 40DIP باستخدام Arduino IDE Mightycore: 4 خطوات

فيديو: كيفية تعطيل JTAG قبل تمهيد Atmegas 40DIP باستخدام Arduino IDE Mightycore: 4 خطوات
فيديو: MicroController 5‬ ‫‬ ‫‬ ‫‬ 2024, ديسمبر
Anonim
كيفية تعطيل JTAG قبل تمهيد Atmegas 40DIP باستخدام Arduino IDE Mightycore
كيفية تعطيل JTAG قبل تمهيد Atmegas 40DIP باستخدام Arduino IDE Mightycore

حصلت مؤخرًا على استخدام atmegas 40 DIP للتحكم في الأنظمة الصناعية لأن هذا النوع من وحدات التحكم الدقيقة يوفر العديد من عمليات الإدخال / الإخراج التناظرية أو الرقمية ، لذلك لا تحتاج إلى أي موسعات.

يتضمن atmegas32 / 644p / 1284p طريقة لتنزيل الرسم التخطيطي الذي تقوم بإنشائه والذي يسمى "JTAG" (راجع

en.wikipedia.org/wiki/JTAG لمزيد من التوضيحات). إذا كنت تستخدم Arduino IDE أو LDmicro (IEC 61-131) ، يتم تنزيل الرسومات بواسطة منفذ SPI ولا تتوفر دبابيس JTAG (4 دبابيس: PC2 (D18) PC3 (D19) PC4 (D20) PC5 (D21) لأي شيء.. لذلك عليك تعطيل JTAG في برنامجك.

مع arduino IDE ، عليك فقط إضافة 3 أسطر من التعليمات البرمجية في قسم الإعداد مثل هذا:

uint8_t tmp = 1 << JTD ؛

MCUCR = tmp ؛

MCUCR = tmp ؛

طريقة خط MCUCR مرتين.

مع LDmicro لم أستطع فعل أي شيء.

لتجنب هذه المشاكل ، قمت بتحميل التمهيد بعد معالجة MCUCR للتلاعب في atmegas الخاص بي باستخدام Arduino IDE ضمن Mightycore. طريقة لحرق الصمامات مع تعطيل JTAG.

الخطوة 1: حساب المصهر لدائرة 40DIP الخاصة بك:

حساب المصهر لدائرة 40DIP الخاصة بك
حساب المصهر لدائرة 40DIP الخاصة بك
حساب المصهر لدائرة 40DIP الخاصة بك
حساب المصهر لدائرة 40DIP الخاصة بك
حساب المصهر لدائرة 40DIP الخاصة بك
حساب المصهر لدائرة 40DIP الخاصة بك

انتقل إلى موقع الويب:

eleccelerator.com/fusecalc/fusecalc.php؟chi…

اختر الدائرة الجيدة (atmega1284p في المثال الخاص بي ولكن بنفس الطريقة مع 40 DIP atmegas الأخرى) وانظر إلى "U hfuse: w: 0x99: m" وقم بإلغاء تحديد JTAGEN بحيث تعطي "U hfuse: w: 0xD9: m". ضع في اعتبارك قيمة 0xD9.

الخطوة 2: البحث عن ملف Boards.txt في دليل Mightycore:

البحث عن ملف Boards.txt في دليل Mightycore
البحث عن ملف Boards.txt في دليل Mightycore
البحث عن ملف Boards.txt في دليل Mightycore
البحث عن ملف Boards.txt في دليل Mightycore

على جهاز الكمبيوتر الخاص بك ابحث في دليل Mightycore. بالنسبة لي في C: / user / myself / AppData / Local / Arduino15 \packs / Mightycore / Harware / avr / 2.0.0 / board.txt.

الخطوة 3: تعديل Boards.txt و Bootload باستخدام Mightycore:

قم بتعديل Boards.txt و Bootload مع Mightycore
قم بتعديل Boards.txt و Bootload مع Mightycore

ألق نظرة على كتلة تردد الساعة لـ atmega1284p مع Notepad ++.

قم بتعديل كل فتيل عالي مثل “1284.menu.clock.16MHz_external.bootloader.high_fuses = 0xd6” إلى “1284.menu.clock.16MHz_external.bootloader.high_fuses = 0xd9” (0xd9 هي القيمة السابقة التي كان عليك تذكرها). احفظها.

ثم عليك فقط اتباع طريقة bootloading الواردة في

www.instructables.com/id/Arduino-18x-Clone …

هذا كل شيء.

الخطوة الرابعة: الخاتمة:

أنت الآن تكسب 4 I / O وليس عليك القيام بأي تلاعب في التسجيل في الرسومات الخاصة بك. يمكنك أيضًا الرجوع وتمكين JTAGEN وإعادة التحميل مرة أخرى.

شكرًا لجميع البرامج التعليمية على الويب والتي أعطتني بعض المفاتيح للنجاح في هذا المشروع.

موصى به: