- הגדרת ה- Arduino IDE
- הגדרת לוח STM8S103F3 לתכנות IDE של Arduino
- נורית LED מהבהבת על STM8S103F3 באמצעות Arduino
- מיפוי פינים של Arduino עבור STM8S103F3
- קומפילציה של ספריות SPL ב- Arduino IDE
Arduino ללא ספק צמח לכלי אבות טיפוס ידידותי ומהיר, הודות לקהילת המשתמשים התומכת בו. כיום, בגלל אופי הקוד הפתוח שלה, הפלטפורמה אינה מוגבלת רק ללוחות Arduino אלא גם לתכנות לוחות פיתוח אחרים כמו NodeMCU, ESP8266, STM32, MSP430 וכו 'מ- Arduino IDE. אם אתה מעוניין לדעת כיצד, תוכל לעקוב אחר הקישורים הבאים.
- תכנות NodeMCU עם Arduino IDE
- תכנות ESP8266 עם Arduino IDE
- תכנות STM32 עם Arduino IDE
- תכנות MSP430 עם Energeia (בדומה ל- Arduino)
ללא ספק, ה- Arduino IDE נהדר למתחילים, אך עדיין, לפיתוח מקצועי, טוב לעבוד עם סביבות פיתוח ומהדרים מקומיים. כמו MPLABX למיקרו-בקרים של PIC וסטודיו קוד מלחין למיקרו-בקרים TI. השימוש בפלטפורמה המקומית מאפשר לנו לעבוד ברמת הרישום (אפילו ברמת הרכבה אם נדרש) כדי לאפשר לתוכנית להיות יעילה יותר בזיכרון. זו הסיבה שכשהתחלנו את הדרכת המיקרו-בקר STM8Sסדרה, הבחירה בפלטפורמה הייתה STVD ו- Cosmic C מהדר, שניהם חופשיים להורדה ושימוש. למרבה הצער, STVD הוא IDE ישן מאוד וזה מרגיש כמו שנות ה 90 בזמן העבודה איתו. נוסף על כך, כלי המתכנת STVP גם אינו משולב היטב ב- IDE ועליך להשתמש בו בנפרד. זה מגדיל את זמן ההידור וההעלאה והופך את הפיתוח והניפוי באגים לכאב.
חיפשתי אלטרנטיבות ואז הגיע ארדואינו IDE להצלה. כלי שנקרא Sduino על ידי מייקל ראש העיר מאפשר לנו לתכנת את מיקרו-בקרים STM8s (רובם הפופולאריים) בקלות מ- Arduino IDE ישירות וזה לוקח רק דקות להגדיר את זה ולהתחיל. מה שמעניין יותר הוא שמלבד התמיכה בתכנות בסגנון Arduino, Sduino גם מאפשר לנו להשתמש בספרייה ההיקפית הסטנדרטית (SPL), במילים אחרות, אנחנו כמעט יכולים להרכיב את אותה התוכנית ב- STVD ל- Arduino IDE. למרות ש- Sduino הוא כלי מגניב, הוא עדיין נמצא בפיתוח והוא עדיין תומך ברבות מספריות ופונקציות Arduino. עם זאת, בואו ללמוד כיצד להשתמש ב- Arduino IDE עם לוח הפיתוח STM8S103F.אם אתה חדש לגמרי בלוח זה, בדוק את תחילת העבודה עם הדרכה STM8S103F. מלבד STM8S103F, Sduino תומך גם במיקרו-בקרים STM8S אחרים כמו STM8S003, STM8S105C, STM8S105K, STM8S, STM8S208MB, ESP14 וכו '. ההליך המוסבר במדריך זה זהה לכל.
הגדרת ה- Arduino IDE
שלב 1: אם אתה חדש לגמרי בסביבת Arduino, הורד את Arduino בהתבסס על מערכת ההפעלה שלך והתקן אותו.
שלב 2: עקוב אחר קובץ -> העדפות כדי לפתוח את חלון ההעדפות ולהדביק את הקישור המופיע למטה בתיבת הטקסט לניהול לוחות URL נוספים ולחץ על אישור.
github.com/tenbaht/sduino/raw/master/package_sduino_stm8_index.json
שלב 3: עקוב אחר כלים -> לוח -> מנהל לוח לפתיחת תיבת הדו-שיח של מנהל הלוח וחיפוש "sduino". לחץ על התקן וסגור את תיבת הדו-שיח לאחר סיום ההתקנה.
שלב 4: הפעל מחדש את IDE ולאחר מכן עקוב אחר כלים -> לוח -> STM8S103F3 . אתה יכול לבחור לוחות אחרים אם יש לך לוח פיתוח אחר.
כעת ה- Arduino IDE מוכן לתכנות את לוח הפיתוח STM8S103F3. בואו נקים את הלוח, נחבר אותו למחשב ונתכנת להבהוב נורית של LED.
הגדרת לוח STM8S103F3 לתכנות IDE של Arduino
חבר את ST-Link V2 ללוח הפיתוח כמוצג להלן.
החיבורים די ישרים קדימה והחלק הכי טוב הוא שאתה לא צריך רכיבים חיצוניים. הגדרת החומרה שלי לתכנות מוצגת למטה, הרגע השתמשתי בחוטי הכותרת הנשית כדי ליצור את החיבור שלי. עם זאת, שים לב שהפינאוט של ST-Link שלך עשוי להיות שונה משלי, הקפד לעקוב אחרי הפינאוט במכשיר לפני ביצוע החיבורים.
בצע את החיבור וחבר את ההתקן למחשב שלך, התקנת מנהל ההתקן צריכה להתחיל באופן אוטומטי. אתה יכול להשתמש במנהל ההתקנים כדי לוודא אם המחשב שלך גילה את ST-LINK V2 בצורה נכונה. תבחין גם בנורת הבדיקה על הלוח מהבהבת אם זו הפעם הראשונה שמפעילה את הלוח.
נורית LED מהבהבת על STM8S103F3 באמצעות Arduino
כעת עבור מהבהב נורית פשוטה, אנו יכולים להשתמש בתוכנית ההבהוב מהקטע לדוגמה. עקוב אחר קובץ -> דוגמה -> דוגמה כללית -> יסודות -> מהבהב .
התוכנית המלאה להבהוב של ה- LED המובנה מוצגת להלן-
התקנת חלל () {// אתחל את הפין הדיגיטלי LED_BUILTIN כפלט. pinMode (LED_BUILTIN, OUTPUT); } // פונקציית הלולאה פועלת שוב ושוב לולאה בטלה לנצח () {digitalWrite (LED_BUILTIN, HIGH); // להדליק את הנורית (HIGH זה רמת המתח) עיכוב (1000); // המתן ל- DigitalWrite שני (LED_BUILTIN, LOW); // כבה את ה- LED על ידי עיכוב מתח נמוך (1000); // חכה שנייה}
כפי שאתה יכול לראות זה דומה מאוד לתוכנית המצמוץ של Arduino. להעלאת התוכנית, ודא שהלוח שלך מחובר באמצעות st-link v2 כפי שפורט לעיל ובחר את המתכנת כ- "ST-Link / V2" כמוצג להלן.
הערה: בניגוד ללוחות Arduino, אינך צריך לבחור את יציאת ה- COM המתאימה לתכנות הלוח. תוכלו להשתמש ביציאת COM רק לצורך תקשורת טורית.
לאחר שנבחרה יציאת COM, העלאת הקוד היא גם מאוד פשוטה. פשוט לחץ על כפתור ההעלאה (מוקף באדום למטה) והקוד יתאסף ויעלה ללוח שלנו באופן אוטומטי.
זהו, התוכנית מועלה ישירות ללוח ואתה צריך לראות את נורית הלוח מהבהבת. אין תוכנת העלאה חיצונית, אין כלום. קל כמו זה. אתה יכול לבדוק את הסרטון בתחתית העמוד הזה לעבודה.
מיפוי פינים של Arduino עבור STM8S103F3
אם ברצונך להמשיך מכאן, עליך לדעת כיצד לטפל בכל סיכה בלוח הפיתוח STM8S103F3. ניתן להבין את מיפוי הסיכות מתמונה זו למטה-
לדוגמא מתרשים המעגלים של לוח STM8S103F3, אנו יודעים כי נורית הלוח מחוברת ל- PB5. כדי לטפל בסיכה זו בארדואינו, עלינו להשתמש ב- 3, ומכאן שניתן לכתוב את התוכנית כ-
התקנת חלל () {// אתחל את הפין הדיגיטלי LED_BUILTIN כפלט. pinMode (3, OUTPUT); } // פונקציית הלולאה פועלת שוב ושוב לולאה בטלה לנצח () {digitalWrite (3, LOW); // להדליק את הנורית (HIGH זה רמת המתח) עיכוב (1000); // המתן ל- DigitalWrite שני (3, HIGH); // כבה את ה- LED על ידי עיכוב מתח נמוך (1000); // חכה שנייה}
קומפילציה של ספריות SPL ב- Arduino IDE
כפי שצוין קודם, אנו יכולים גם להשתמש בספריית SPL ב- Arduino IDE. אם אתה זוכר, במדריך הקודם של STM8S GPIO, כתבנו קוד כדי להבהב את נורית הלוח וגם נורית חיצונית באמצעות כפתור הלחיצה. אותו קוד עם מעט מאוד שינויים ניתן גם להרכיב על Arduino. הקוד ששונה מוצג להלן.
# הגדר Green_LED GPIOA, GPIO_PIN_3 הגדרת חלל () {GPIO_DeInit (GPIOA); // הכנת יציאה A לעבודה GPIO_DeInit (GPIOB); // הכין את יציאת B לעבודה // הצהיר על PA2 כסיכת קלט למעלה GPIO_Init (GPIOA, GPIO_PIN_2, GPIO_MODE_IN_PU_IT); // הכריז על PA3 כסיכת פלט משוך דחיפה GPIO_Init (Green_LED, GPIO_MODE_OUT_PP_LOW_SLOW); // הכריזו על PB5 כסיכה פלט למשוך דחיפה GPIO_Init (GPIOB, GPIO_PIN_5, GPIO_MODE_OUT_PP_LOW_SLOW); } loop loop () {if (GPIO_ReadInputPin (GPIOA, GPIO_PIN_2)) // אם לחצן לחצו על GPIO_WriteLow (Green_LED); // נורית LED אחרת GPIO_WriteHigh (Green_LED); // LED OFF GPIO_WriteReverse (GPIOB, GPIO_PIN_5); עיכוב (100); }
לסיום ה- Arduino IDE יחד עם Sduino היא אפשרות טובה מאוד אם אתה רוצה לקפוץ להתחיל את הפיתוח שלך עם STM8S. עם זאת, הפלטפורמה עדיין בפיתוח וספריות ארדואינו רבות עדיין לא נתמכות. ובכל זאת, אם ברצונך להתעמק ולתרום להתפתחות, זה יהיה נהדר. אך, לצורך הלמידה, אמשיך בסדרת ההדרכות עם STVD ומהדר C קוסמי.