תוכן עניינים:

כיצד להשבית את 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 שלבים
וִידֵאוֹ: Laptop Battery Debug Tool & Digital Balance Charger 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 את האטמוס שלי עם Arduino IDE תחת Mightycore. דרך לשרוף את הנתיכים עם JTAG מושבת.

שלב 1: חישוב הנתיכים של מעגל 40DIP שלך:

חישוב הנתיך של מעגל 40DIP שלך
חישוב הנתיך של מעגל 40DIP שלך
חישוב הנתיך של מעגל 40DIP שלך
חישוב הנתיך של מעגל 40DIP שלך
חישוב הנתיך של מעגל 40DIP שלך
חישוב הנתיך של מעגל 40DIP שלך

כנס לאתר האינטרנט:

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

בחר את המעגל הטוב (atmega1284p בדוגמה שלי אך באותו אופן עם 40 אטמי מגזמים אחרים) והסתכל על "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 / packages / Mightycore / Harware / avr / 2.0.0 / boards.txt.

שלב 3: שנה את Boards.txt והעמסת האתחול באמצעות Mightycore:

שנה את Boards.txt והעמסת האתחול באמצעות Mightycore
שנה את Boards.txt והעמסת האתחול באמצעות Mightycore

תסתכל על בלוק תדר השעון של atmega1284p עם Notepad ++.

שנה כל נתיך גבוה כמו "1284.menu.clock.16MHz_external.bootloader.high_fuses = 0xd6" ל- "1284.menu.clock.16MHz_external.bootloader.high_fuses = 0xd9" (0xd9 הערך הקודם שהיה עליך לזכור). שמור אותו.

אז אתה רק צריך לעקוב אחר שיטת האתחול שניתנה

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

זהו זה.

שלב 4: מסקנה:

עכשיו אתה מרוויח 4 קלט/פלט ואתה לא צריך לבצע שום מניפולציה ברישום במערכונים שלך. אתה יכול גם לחזור לאחור ולהפעיל את JTAGEN ולהעלות מחדש פעם נוספת.

תודה לכל ההדרכות המרתקות באינטרנט שנתנו לי כמה מפתחות להצליח בפרויקט הזה.

מוּמלָץ: