- חומרים נדרשים
- תרשים מעגל
- העלאת מעמיס אתחול מייפל ללוח הפיתוח STM32
- הכנת ה- Arduino IDE והתקנת מנהלי ההתקנים
- תכנות STM32 (גלולה כחולה) ישירות דרך יציאת USB
מועצת פיתוח STM32 דיור מייקרו STM32F103C8 הוא מקבל בזכות פופולארי יותר ויותר אדריכלות M3 Cortex ARM שלה, יש לו מהירות מבצעית גבוהה ואפשרויות היקפיות יותר. כמו כן, ניתן לתכנת בקלות לוח זה באמצעות ה- IDE של ארדואינו, והוא הפך לבחירה עדיפה עבור חובבים ומהנדסים רבים עבור טיפוס מהיר של אב טיפוס.
במדריך הקודם למדנו את יסודות מועצת הפיתוח STM32 ותכנתנו אותו גם להבהוב עם נורית LED. אבל היה איתו חסרון אחד ענק. על מנת לתכנת את הלוח השתמשנו במודול מתכנת FTDI ונאלצנו גם להחליף את מגשר האתחול בין לבין מיקום אחד תוך כדי העלאה ובדיקת קוד, זו בהחלט משימה מפחידה. כמו כן יציאת ה- USB המיני בלוח הפיתוח נותרה ללא שימוש לחלוטין. הסיבה לכך היא שכאשר נרכש לוח הפיתוח STM32 הוא אינו מגיע עם מעמיס אתחול מוכן של Arduino ומכאן שהלוח לא יתגלה על ידי המחשב שלך כאשר הוא מחובר דרך ה- USB.
יש לקוות כי קיים מטעין אתחול ניסיוני שפותח על ידי LeafLabs עבור לוחות מייפל. ניתן להבהיר מטעין אתחול זה ל- STM32 פעם אחת ולאחר מכן אנו יכולים להשתמש ישירות ביציאת ה- USB של לוח STM32 כדי להעלות תוכניות בדיוק כמו כל לוחות Arduino אחרים. עם זאת מטעין אתחול זה עדיין נמצא בשלב התפתחותי בזמן תיעוד הדרכה זו ואינו מומלץ ליישומים קריטיים. לפני הליכים עם מדריך זה וודא שקראת את ההדרכה הקודמת כדי להבין את יסודות הלוח הזה כולל פרטים על המפרט והסיכות.
חומרים נדרשים
- STM32 - (BluePill) לוח פיתוח (STM32F103C8)
- מתכנת FTDI
- קרש לחם
- חוטי חיבור
- מחשב נייד עם אינטרנט
תרשים מעגל
כדי לתכנת את לוח הגלולה הכחולה STM32 ישירות דרך יציאת USB עלינו להבהיר תחילה את מטעין האתחול של מייפל ל- MCU. לשם כך עלינו להשתמש בלוח FTDI סידורי. לוח זה מחובר לסיכת Rx ו- Tx של STM32 כמוצג להלן.
סיכת ה- Vcc של לוח FTDI מחוברת לסיכה STM32 5V שמפעילה את הלוח. האדמה מחוברת לקרקע STM32. סיכת Rx ו- Tx של לוח FTDI מחוברת לסיכה A9 ו- A10 של STM32 בהתאמה. כאשר ה- A9 הוא סיכת ה- Tx של STM32 MCU וה- A10 הוא ה- Rx.
וודא כי סיכת המגשר אתחול 0 בלוח מוגדרת ל -1 (מצב תכנות) בזמן העלאת מטעין האתחול. לאחר שהבהב מטען האתחול ניתן להחליף סיכה זו למצב ההתחלתי (מצב הפעלה).
העלאת מעמיס אתחול מייפל ללוח הפיתוח STM32
לאחר שביצענו את החיבור הנ"ל חבר את לוח FTDI למחשב שלך ובצע את השלבים להבהרת מטעין האתחול ל- STM32.
שלב 1: עלינו להוריד את הקבצים הבינאריים של קובץ תוכנית מטעין האתחול (קובץ bin) מהדף github. ישנן גרסאות רבות של קובץ bin, עבור לוח הגלולה הכחול השתמש בקישור github זה ולחץ על כפתור ההורדה כדי להוריד את קובץ הפח.
שלב 2: בשלב הבא עלינו להוריד ולהתקין את תוכנת מטעין ה- STM להבהב את קובץ הפח שהורדת ל- STM32. לחץ על קישור זה כדי להיכנס לאתר ST וגלול לתחתית ולחץ על קבל תוכנה
שלב 3: כדי להוריד את התוכנה עליך להזין את כתובת הדואר האלקטרוני שלך וקישור ההורדה יישלח לדואר האלקטרוני שלך. לאחר מכן עקוב אחר הקישור חזרה לאתר ולחץ על קבל תוכנה שוב וההורדה תתחיל. כן זה קצת מתסכל אבל ככה צריך לעשות את זה. אל תשכח לבדוק את תיקיית הספאם שלך לגבי הדואר האלקטרוני, לפעמים לוקח כמה דקות עד שהדואר האלקטרוני מגיע.
שלב 4: לאחר הורדת התקנת התוכנה, וודא כי לוח STM32 שלך מחובר למחשב שלך באמצעות לוח FTDI ואז הפעל את התוכנה. התוכנה תאתר אוטומטית את יציאת ה- COM אם לא תשתמש במנהל ההתקנים ותוודא שאתה בוחר את מספר יציאת ה- COM הנכון. במקרה שלי זה COM4. השאר את שאר ההגדרה כפי שהיא כפי שמוצג להלן.
שלב 5: לחץ פעמיים על כפתור הבא והתוכנה תאתר שוב באופן אוטומטי את פרטי הלוח ותוצג כפי שמוצג להלן. הלוח בו אנו משתמשים הוא STM32F1 עם זיכרון פלאש 128K.
שלב 6: בשלב הבא, בחר הורד למכשיר ודפדף למיקום בו הורדנו את קובץ הפח שלנו בשלב 1 ובחר בו. לחץ על הבא.
שלב 7: התוכנה תוריד כמה קבצים נדרשים כמוצג להלן ואז תתחיל בתהליך ההבהוב.
שלב 8: לאחר השלמת ההבהוב, נקבל את המסך שלהלן. לחץ על סגור וצא מהיישום. הבזקנו את לוח STM32 עם מטעין האתחול של Arduino בהצלחה. כעת עלינו להכין את ה- Arduino IDE ולהתקין את מנהלי ההתקנים לפני שנוכל לתכנת את לוח STM32.
הכנת ה- Arduino IDE והתקנת מנהלי ההתקנים
בצע את השלבים הבאים כדי להוריד ולהכין את ה- IDE של Arduino לשימוש עם לוח הפיתוח STM 32.
שלב 1: - אם עדיין לא התקנתם את ה- Arduino IDE, הורידו והתקינו אותו מקישור זה. הקפד לבחור את מערכת ההפעלה הנכונה שלך.
שלב 2: - לאחר התקנת ה- Arduino IDE פתחו והורידו את החבילות הנדרשות ללוח STM32. ניתן לעשות זאת על ידי בחירת קובץ -> העדפות .
שלב 3: - לחיצה על העדפות תפתח את תיבת הדו-שיח המוצגת למטה. בתיבת הטקסט הנוספת של ה- Boards Manager, הדבק את הקישור שלהלן
dan.drown.org/stm32duino/package_STM32duino_index.json
ולחץ על אישור.
שלב 4: - עכשיו עבור לכלי -> לוחות -> מנהל דירקטוריון . פעולה זו תפתח את תיבת הדו-שיח של מנהל לוחות, תחפש "STM32F1" ותתקין את החבילה שמופיעה.
שלב 5: לאחר התקנת החבילה, נווט אל C: \ Program Files (x86) Arduino \ hardware \ Arduino_STM32-master \ drivers \ win שם תמצא install_drivers.bat ו- install_STM_COM_drivers.bat .
שלב 6: לחץ על שני קבצי ה- bat והתקן את מנהלי ההתקנים. תקבל מסך DOS כפי שמוצג להלן.
כעת ה- Arduino IDE מוכן לתכנות לוח הפיתוח STM32 (גלולה כחולה) וגם מנהלי ההתקנים מותקנים.
תכנות STM32 (גלולה כחולה) ישירות דרך יציאת USB
הסר את לוח FTDI ואת כל החיבורים הקיימים ממך STM32. פשוט השתמש ביציאת המיקרו-USB בלוח STM32 כדי לחבר אותו למחשב כפי שמוצג להלן. וודא שהסיכה 0 של המגשר ממוקמת לאחור על 0 (מצב הפעלה). להלן איננו צריכים להחליף את המגשר כדי להעלות ולהפעיל את התוכניות.
המחשב שלך אמור להיות מסוגל לגלות את הלוח כעת. המתן זמן מה אם אתה רואה התקנים נוספים של מנהלי התקנים. לאחר מכן היכנס למנהל ההתקנים ובדוק אם לוח STM32 שלך מתגלה בקטע COM ויציאה כמוצג להלן. שלי מחובר ל- COM8 בשם מייפל מיני.
עבור אל כלים וגלול מטה כדי למצוא את הסדרה STM32F103C הגנרית כפי שמוצג להלן. לאחר מכן וודא כי הגרסה היא מסוג פלאש 64k , מהירות המעבד היא 72MHz ושנה את שיטת ההעלאה ל- STM32duino Bootloader . בחר גם את יציאת ה- COM הנכונה בהתאם ליציאת מנהל ההתקנים שלך.
לאחר ביצוע כל השינויים, בדוק את הפינה הימנית התחתונה של IDE של ארדואינו, וכדאי שתבחין בהגדרה הבאה. לוח STM32 שלי מחובר ל- COM8 אך שלך עשוי להיות שונה
כעת ה- Arduino IDE מוכן לתכנת את לוחות פיתוח הגלולות הכחולות STM 32. תן לנו להעלות את תוכנית ה- Blink Sample מה- Arduino IDE ללוח הגלולה הכחולה STM32 כדי לוודא שהכל עובד כמו שצריך. את תוכנית הדוגמה ניתן למצוא בכתובת
בתוכנית הדוגמא שנפתחת עלינו לבצע שינוי קטן. כברירת מחדל התוכנית תיכתב עבור PB1 אך על הלוח שלנו נורית הלוח מחוברת ל- PC13 אז החלף את כל PB1 ב- PC13 ואנחנו טובים להמשיך. תכנית לדוגמה השלמה אשר שונה גם ניתן למצוא בתחתית הדף הזה.
הקוד בתוך פונקציית הלולאה לבדו מוצג למטה, שם נוכל להבחין כי סיכת PC13 נשמרת HIGH (מופעלת) למשך 1000 אלפיות השנייה ואז מכבה אותה LOW (כבוי) לעוד 1000 אלפיות השנייה וזה נעשה לזמן אינסופי מכיוון שהוא נמצא פונקצית לולאה . לפיכך נראה כי הנורית מהבהבת במרווח של 1000 אלפיות השנייה.
digitalWrite (PC13, HIGH); // להדליק את הנורית (HIGH זה רמת המתח) עיכוב (1000); // המתן ל- DigitalWrite שני (PC13, LOW); // כבה את הנורית על ידי עיכוב מתח נמוך (1000); // חכה שנייה
לחץ על כפתור ההעלאה ב- Arduino IDE והתוכנה שלך צריכה להיאסף ולהעלות. אם הכל עבד כצפוי, אתה אמור לראות את הדברים הבאים על קונסולת ה- Arduino IDE שלך.
אם התוכנית הועלתה בהצלחה, אתה אמור לראות את הנורית הירוקה מהבהבת במרווח של שנייה אחת כפי שמוצג בסרטון להלן. אתה יכול גם להתעסק בתוכנית כדי להגדיל או להקטין את העיכוב. עכשיו אתה יכול להתחיל להשתמש בלוח הפיתוח STM32 (Blue Pill) כמו כל לוחות Arduino אחרים, כלומר אתה כבר לא צריך לשנות את מיקום המגשרים או להשתמש בחומרה חיצונית כדי להעלות ולבדוק תוכניות.
מקווה שהבנתם את המדריך ומצאו את זה שימושי להתחיל עם לוח STM32. אם יש לך בעיה השאיר אותם בסעיף ההערות, ספר לי גם אילו פרויקטים עלינו לנסות עם לוח STM32 זה בעתיד.