32
Lecture 3 Silicon Labs ToolStick Development Platform טסליצקי מרקwww.elecstudy.org [email protected]

Lecture 3meyda.education.gov.il/.../homer-limud/silicon/Lecture_3.pdf · 2019-11-02 · Lecture 3 Silicon Labs ToolStick Development Platform [email protected] קרמ יקצילסט

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Lecture 3meyda.education.gov.il/.../homer-limud/silicon/Lecture_3.pdf · 2019-11-02 · Lecture 3 Silicon Labs ToolStick Development Platform markalex012@gmail.com קרמ יקצילסט

Lecture 3

Silicon Labs ToolStick

Development Platform

www.elecstudy.orgטסליצקי מרק [email protected]

Page 2: Lecture 3meyda.education.gov.il/.../homer-limud/silicon/Lecture_3.pdf · 2019-11-02 · Lecture 3 Silicon Labs ToolStick Development Platform markalex012@gmail.com קרמ יקצילסט

2

תוכן הרצאה

מערכות פיתוח ותכנות של מיקרו בקר .

תיאור מערכתToolStick

ממיר בסיסי ל-ToolStick

כרטיס הרכבהToolStick MCUniversity

שימוש במערכת פיתוחToolStick

כלים לפיתוח תוכנה

הצגת אפשרויות של כרטיס הרכבהToolStick MCUniversity

www.elecstudy.orgטסליצקי מרק [email protected]

Page 3: Lecture 3meyda.education.gov.il/.../homer-limud/silicon/Lecture_3.pdf · 2019-11-02 · Lecture 3 Silicon Labs ToolStick Development Platform markalex012@gmail.com קרמ יקצילסט

3

מערכות פיתוח ותכנות של מיקרו בקר

מערכות פיתוח ותכנות של מיקרו בקר מורכבת גם מחומרה וגם

. מתוכנה ששניהם חייבים להתקיים כדי לפתח ולהריץ קוד על הבקר

בדרך כלל חומרה מכילה:

. לוח אלקטרוני עם מיקרו בקר➢

. אפשרויות צריבה של מיקרו בקר➢

.אפשרויות לדבג ולהריץ את הקוד➢

בדרך כלל תוכנה מכילה:

(Keil uVisionאו Simplicity Studio-אנו משתמשים ב)(IDE)סביבת פיתוח ➢

Assembler, compiler, linker , debugger: שלבי בניה4▪

(.תהליך צריבה)תוכנה שמורידה קוד למיקרו בקר ▪

www.elecstudy.orgטסליצקי מרק [email protected]

Page 4: Lecture 3meyda.education.gov.il/.../homer-limud/silicon/Lecture_3.pdf · 2019-11-02 · Lecture 3 Silicon Labs ToolStick Development Platform markalex012@gmail.com קרמ יקצילסט

4

. מערכות פיתוח ותכנות של מיקרו בקר

דוגמא של קיטC8051F020-DK

קיטמכילמה.

:תוכנה➢

▪Silicon Labs integrated development

environment (IDE)

▪Evaluation Keil C51 tool chain

(assembler, linker, and 4 Kb C-compiler)

. קבצים עם הגדרת אוגרים, דוגמאות של קוד מקור▪

.דפי נתונים▪

.חומרה➢

לוח הרכבה▪

ספק כוח חיצוני▪

לצורך בדיקת נתונים והרצת USBממיר ▪

Debugger.

USBכבל▪

www.elecstudy.orgטסליצקי מרק [email protected]

Page 5: Lecture 3meyda.education.gov.il/.../homer-limud/silicon/Lecture_3.pdf · 2019-11-02 · Lecture 3 Silicon Labs ToolStick Development Platform markalex012@gmail.com קרמ יקצילסט

5

ToolStickתיאור מערכת

מערכתToolStick נותנת אפשרות להפעיל ערכת פיתוח בשיתוף

. פעולה עם רכיבים שנמצאים על לוח פיתוח

מערכתToolStickמכילה כל החומרה שצריכה להיות בתוך המערכת .

➢USB debug adapter (BA—base adapter)

➢Target MCU (DC—daughter card)

פיתוח קוד על בסיסToolStick נתונה לתכנות בעזרת כלים שחברת

Silicon Labsמספקת .

➢Integrated development environment (IDE)

➢Virtual display tools

www.elecstudy.orgטסליצקי מרק [email protected]

Page 6: Lecture 3meyda.education.gov.il/.../homer-limud/silicon/Lecture_3.pdf · 2019-11-02 · Lecture 3 Silicon Labs ToolStick Development Platform markalex012@gmail.com קרמ יקצילסט

6

ToolStick-ממיר בסיסי ל

ToolStick Base Adapter

USB Debug Interface to PC

.ניתן לחבר לכל ערכה של סיליקון לאבס

ToolStick MCUniversity Daughter Card

.ערכת פיתוח C8051F020 MCU

www.elecstudy.orgטסליצקי מרק [email protected]

Page 7: Lecture 3meyda.education.gov.il/.../homer-limud/silicon/Lecture_3.pdf · 2019-11-02 · Lecture 3 Silicon Labs ToolStick Development Platform markalex012@gmail.com קרמ יקצילסט

7

.דיאגרמת בלוקים של מערכת

Debug Functions

Data Communication

PC Base Adapter Daughter Card

Silicon Labs IDE Debug Logic

ToolStick Terminal

UART

GPIO

MCU

Debug HW

UART & GPIO

External HW

USBCard

Edge

www.elecstudy.orgטסליצקי מרק [email protected]

Page 8: Lecture 3meyda.education.gov.il/.../homer-limud/silicon/Lecture_3.pdf · 2019-11-02 · Lecture 3 Silicon Labs ToolStick Development Platform markalex012@gmail.com קרמ יקצילסט

8

ToolStickתיאור מערכת

Silicon Laboratories MCU

יפ שאחראי על תהליך הרצת קוד 'מיקרו צ.ותקשורת עם מחשב

Run/Stop LEDs

. מראה האם מיקרו בקר רץ או עוצר

Socket

Connector

מתחבר דרך מחבר

סיביות 14

Power LED

.USBלד שמראה חיבור דרך

www.elecstudy.orgטסליצקי מרק [email protected]

Page 9: Lecture 3meyda.education.gov.il/.../homer-limud/silicon/Lecture_3.pdf · 2019-11-02 · Lecture 3 Silicon Labs ToolStick Development Platform markalex012@gmail.com קרמ יקצילסט

9

ToolStickפונקציות בסיסיות של

כרטיס מאפשר דו שייח בין מחשב לבין מיקרו בקר.

לחיצת יד"סינכרונית עם תהליך -כרטיס מאפשר תקשורת א "

(handshaking )אפשרי .

.מערכת דרייברים צרובה על ההתקן ואין צורך להתחל תוכנה על המחשב➢

. תוכנה לא יכולה לרוץ במקביל לתהליך דבג➢

2פינים עם פונקציות מרובעות .

. יכולים לעבוד לכתיבה או קריאה ישירות ממחשבGPIOפורטים ➢

.אחראים על תהליך לחיצת יד(RTS , CTS)פינים 2ישנם ➢

www.elecstudy.orgטסליצקי מרק [email protected]

Page 10: Lecture 3meyda.education.gov.il/.../homer-limud/silicon/Lecture_3.pdf · 2019-11-02 · Lecture 3 Silicon Labs ToolStick Development Platform markalex012@gmail.com קרמ יקצילסט

10

.מבנה של כרטיס הרכבה

פלט\פינים קלט

P0[7..2], P1, P2

נגד משתנה

V3.3עד V0-מתח כניסה מ

מיקרו בקר

C8051F020

הפעלה LED

מפסק

איפוס

פינים

אנלוגיים

מפסקי לחיצה

P5[3..0]

לדים

P5[7..4]

DIP מפסקים

P4

גביש

22.1184 MHz

משטח להרכבת רכיבים

www.elecstudy.orgטסליצקי מרק [email protected]

Page 11: Lecture 3meyda.education.gov.il/.../homer-limud/silicon/Lecture_3.pdf · 2019-11-02 · Lecture 3 Silicon Labs ToolStick Development Platform markalex012@gmail.com קרמ יקצילסט

11

ToolStickאחזקת

זאת הדרך לאחזקת רכיב

www.elecstudy.orgטסליצקי מרק [email protected]

Page 12: Lecture 3meyda.education.gov.il/.../homer-limud/silicon/Lecture_3.pdf · 2019-11-02 · Lecture 3 Silicon Labs ToolStick Development Platform markalex012@gmail.com קרמ יקצילסט

12

ToolStickחיבור של

ניתן לחבר ישירות ניתן לחבר דרך כבל מעריך

www.elecstudy.orgטסליצקי מרק [email protected]

Page 13: Lecture 3meyda.education.gov.il/.../homer-limud/silicon/Lecture_3.pdf · 2019-11-02 · Lecture 3 Silicon Labs ToolStick Development Platform markalex012@gmail.com קרמ יקצילסט

13

.כלי תוכנה לפיתוח

Silicon Laboratories

IDE (integrated

development

environment)

מתחבר לערכת פיתוח ➢

.דרך רכיב דבגר

מאפשר תכנות והרצה ➢

של קוד בכל סוגי בקרים

של משפחת סיליקון

.לאבס

עובד יחד עם קומפילרים➢

▪Keil, SDCC, IAR,

etc.

Silicon Labs IDE

צילום מסך

www.elecstudy.orgטסליצקי מרק [email protected]

Page 14: Lecture 3meyda.education.gov.il/.../homer-limud/silicon/Lecture_3.pdf · 2019-11-02 · Lecture 3 Silicon Labs ToolStick Development Platform markalex012@gmail.com קרמ יקצילסט

14

Silicon Labs IDEhttps://www.softpedia.com/get/Programming/Coding-languages-Compilers/Silicon-Laboratories-IDE.shtml

www.elecstudy.orgטסליצקי מרק [email protected]

Page 15: Lecture 3meyda.education.gov.il/.../homer-limud/silicon/Lecture_3.pdf · 2019-11-02 · Lecture 3 Silicon Labs ToolStick Development Platform markalex012@gmail.com קרמ יקצילסט

15

:מאפשר כלים ממוחשבים כמו

כלים וירטואליים

ToolStickטרמינל ➢

(בארדוינוכמו )

➢LCDוירטואלי

סקופ וירטואלי➢

www.elecstudy.orgטסליצקי מרק [email protected]

Page 16: Lecture 3meyda.education.gov.il/.../homer-limud/silicon/Lecture_3.pdf · 2019-11-02 · Lecture 3 Silicon Labs ToolStick Development Platform markalex012@gmail.com קרמ יקצילסט

16

.צעדים של הגדרות של תוכנה בסיסית

מבטלים את טיימר : 1צעדwatchdog.

פלט לצורך הפעלת )מגדירים את צורת העבודה של פורטים : 2צעד

(. לד

מפעילים את הלד שמחובר לפורט ספציפי: 3צעד.

נכנסים ללולאה אין סופית: 4צעד .

www.elecstudy.orgטסליצקי מרק [email protected]

Page 17: Lecture 3meyda.education.gov.il/.../homer-limud/silicon/Lecture_3.pdf · 2019-11-02 · Lecture 3 Silicon Labs ToolStick Development Platform markalex012@gmail.com קרמ יקצילסט

17

.הפעלת קודים ודוגמאות מאתר של סיליקון לאבס

מורידים קיט מהקישור

http://www.silabs.com/MCUniver

sity

מתקינים אתIDEלספרייה

c:\Silabs\MCU

מכניסים התקן לפורטUSB ומשלימים

.את התהליך

www.elecstudy.orgטסליצקי מרק [email protected]

Page 18: Lecture 3meyda.education.gov.il/.../homer-limud/silicon/Lecture_3.pdf · 2019-11-02 · Lecture 3 Silicon Labs ToolStick Development Platform markalex012@gmail.com קרמ יקצילסט

18

.פתיחת פרויקט לדוגמא

הפעלתIDEלאחר התקנה.

פותחים פרויקט מוכן מתפריטProject

עוברים לספרייה

C:\SiLabs\MCU\ToolStick\Univers

ityDC\Firmware\SimpleDemo\

פותחים

“UniDC_SimpleDemo.wsp”

לאבססיליקוןIDE מכיל תמיכה למספר

.תוכנות קומפילציה

Project -> Tool Chain Integration

www.elecstudy.orgטסליצקי מרק [email protected]

Page 19: Lecture 3meyda.education.gov.il/.../homer-limud/silicon/Lecture_3.pdf · 2019-11-02 · Lecture 3 Silicon Labs ToolStick Development Platform markalex012@gmail.com קרמ יקצילסט

19

.בניית פרויקט והרצתו

מתוך תפריטProject מפעילים

.Buildפונקציה

בניית פרויקט מייצרת קובץ

.שאפשר לצרוב לתוך הרכיב

יחד עם תוכנה מקורית באה

בעתיד )בגרסת דמו KEILתוכנת

נראה כיצד אפשר לקבל רישיון

הגבלות של תוכנת (. לגרסה מלאה

אין , K2גודל הקוד עד : דמו הן

, FLOATאפשרות להכניס ספריית

. אלא רק מספרים שלמים

www.elecstudy.orgטסליצקי מרק [email protected]

Page 20: Lecture 3meyda.education.gov.il/.../homer-limud/silicon/Lecture_3.pdf · 2019-11-02 · Lecture 3 Silicon Labs ToolStick Development Platform markalex012@gmail.com קרמ יקצילסט

20

.הגדרות של התחברות

צריכים להגדיר את אפשרויות

”Connection Options“התחברות

.Optionsבתפריט אפשרויות

צריכים לחכות כמה שניות עד שמחשב

.יראה את ההתקן

בחרUSB debug adapter

תבחרו התקן כמו שרואים במסך מצד ➢

. שמאל

בחר“JTAG” כדי להגדיר אופציה

.להרצה קוד

www.elecstudy.orgטסליצקי מרק [email protected]

Page 21: Lecture 3meyda.education.gov.il/.../homer-limud/silicon/Lecture_3.pdf · 2019-11-02 · Lecture 3 Silicon Labs ToolStick Development Platform markalex012@gmail.com קרמ יקצילסט

21

.צריבת תוכנה

תלחץ כפתור להתחברות(Connect)

. IDE-כדי לחבר לוח פיתוח ל

לאחר תהליך התחברות לוחצים כפתור

Download כדי לצרוב קובץHEX

.לתוך הרכיב

www.elecstudy.orgטסליצקי מרק [email protected]

Page 22: Lecture 3meyda.education.gov.il/.../homer-limud/silicon/Lecture_3.pdf · 2019-11-02 · Lecture 3 Silicon Labs ToolStick Development Platform markalex012@gmail.com קרמ יקצילסט

22

.הפעלה ועצירה של מיקרו בקר

לוחצים על כפתור ירוק(GO ) כדי

להתחיל תהליך הרצה על הלוח

. הרכבה

לד ירוק מתחיל להבהב על כרטיס

. הרכבה

ניתן לעצור אותו , כאשר רכיב רץ

. בלחיצת כפתור אדום

לד יעצור באותו מצב שמיקרו בקר

. עוצר

www.elecstudy.orgטסליצקי מרק [email protected]

Page 23: Lecture 3meyda.education.gov.il/.../homer-limud/silicon/Lecture_3.pdf · 2019-11-02 · Lecture 3 Silicon Labs ToolStick Development Platform markalex012@gmail.com קרמ יקצילסט

23

.DEBUGפתיחת חלון לתהליך

תעצרו את הבקר בלחיצה על כפתורStop.

פותחים חלון של פורטים:View → Debug Windows → SFR’s → Ports

www.elecstudy.orgטסליצקי מרק [email protected]

Page 24: Lecture 3meyda.education.gov.il/.../homer-limud/silicon/Lecture_3.pdf · 2019-11-02 · Lecture 3 Silicon Labs ToolStick Development Platform markalex012@gmail.com קרמ יקצילסט

24

.בדיקת מצב פורטים

חלוןADC Debug Window מראה

כאשר הרצה לא , SFRמצב האוגרים

. פועלת

הם , אדוםערכים שמסומנים בצבע

. הערכים שישתנו מעצירה הקודמת

בחלון זה אפשר לשנות ערכי אוגרים

. ללא צורך בקומפילציה מחדש

שינה את הערך 5כאן רואים שפורט

.F1וערך החדש הוא

www.elecstudy.orgטסליצקי מרק [email protected]

Page 25: Lecture 3meyda.education.gov.il/.../homer-limud/silicon/Lecture_3.pdf · 2019-11-02 · Lecture 3 Silicon Labs ToolStick Development Platform markalex012@gmail.com קרמ יקצילסט

25

שינוי

ניתן להגדיר ולשנות פורטים בזמן

”.אמת

בחלוןPorts Debug תשנו ערך של

. 0x0F-ל5פורט

ריענון"תלחצו( "Refresh ) כדי לתת

.5ערך חדש לפורט

. יש גישה ישירה לאוגרים בזמן אמתIDE-ל

www.elecstudy.orgטסליצקי מרק [email protected]

Page 26: Lecture 3meyda.education.gov.il/.../homer-limud/silicon/Lecture_3.pdf · 2019-11-02 · Lecture 3 Silicon Labs ToolStick Development Platform markalex012@gmail.com קרמ יקצילסט

26

Watchשימוש בחלון

תעצרו את ההרצה בעזרת כפתורStop .

בחלון של קוד לחיצה על כפתור ימין של עכבר על

ותבחרו countלדוגמא )המשתנה

“Add count to Watch → Default”

בצורה הזאת משתנה יהיה מאוסף לחלוןwatch

וערך שלו יהיה מחודש כל פעם שאנו נעצור את

. הרצת הבקר

זה מאפשר לראות כל נתון חלון

:באזורי זיכרון שונים

RAM ,XRAM ,CODE והכל

.בחלון אחד

www.elecstudy.orgטסליצקי מרק [email protected]

Page 27: Lecture 3meyda.education.gov.il/.../homer-limud/silicon/Lecture_3.pdf · 2019-11-02 · Lecture 3 Silicon Labs ToolStick Development Platform markalex012@gmail.com קרמ יקצילסט

27

Watchשימוש בחלון

תריצו ותעצרו את הבקר בעזרת

.”Go” ,“Stop“כפתורים

שימו לב שמיקרו בקר מקדם ערך של

כל פעם שאנו עוצרים countמשתנה

.את מיקרו בקר

שימו לב שערך של משתנה ניתן לשינוי

אבל , Watch Windowישירות מחלון

.בתנאי שתוכנה לא רצה

www.elecstudy.orgטסליצקי מרק [email protected]

Page 28: Lecture 3meyda.education.gov.il/.../homer-limud/silicon/Lecture_3.pdf · 2019-11-02 · Lecture 3 Silicon Labs ToolStick Development Platform markalex012@gmail.com קרמ יקצילסט

28

Breakpoint. הכנסת נקודות עצירה

עצור את הבקר בעזרת כפתורStop

תלחץ על כפתור ימין של עכבר

במקום בקוד ששם אתה רוצה לעצור

:את הקוד ותבחר

“Insert/Remove Breakpoint”

נקודת עצירה חומרתית מבוססת

. בתהליך הרצה ברכיב הזה ספציפי

נקודה אדומה מסמנת מקום של

. נקודת עצירה

www.elecstudy.orgטסליצקי מרק [email protected]

Page 29: Lecture 3meyda.education.gov.il/.../homer-limud/silicon/Lecture_3.pdf · 2019-11-02 · Lecture 3 Silicon Labs ToolStick Development Platform markalex012@gmail.com קרמ יקצילסט

29

.עבודה עם נקודות עצירה

תלחצו על , ברגע שהגדנו נקודת עצירה

כדי להמשיך ביצוע ”Go“כפתור

. תוכנית

רכיב יעצור ברגע שקוד יגיע לנקודת

. העצירה

תלחצו“Go” מספר פעמים כדי לראות

. התקדמות ושינוי משתניםנקודות עצירה עוזרות למפתח לעבור מהר

. לנקודת היעד בלי לעצור כל פעם בדרך

לא מבזבזים זמן וביצועיים של מיקרו

ישר עוברים לקטע קוד שרוצים . בקר

לבדוק ושם מריצים את הקוד צעד אחרי

(.Step-by-step) צעד

www.elecstudy.orgטסליצקי מרק [email protected]

Page 30: Lecture 3meyda.education.gov.il/.../homer-limud/silicon/Lecture_3.pdf · 2019-11-02 · Lecture 3 Silicon Labs ToolStick Development Platform markalex012@gmail.com קרמ יקצילסט

30

.הרצה צעד אחרי צעד

בעזרתIDE ניתן להריץ פקודות בשפת

כל לחיצה (. assemblyאסמבלי )סף

מפעילה Single-Stepעל הכפתור

. פקודה אחד של שפת סף

תלחץ כפתורDisassembly Button

.Disassemblyכדי לפתוח חלון

ברגע שהתקן נעצר תלחצו על כפתור

Single-Step כדי להפעיל פקודה

. אחת בשפת סף

www.elecstudy.orgטסליצקי מרק [email protected]

Page 31: Lecture 3meyda.education.gov.il/.../homer-limud/silicon/Lecture_3.pdf · 2019-11-02 · Lecture 3 Silicon Labs ToolStick Development Platform markalex012@gmail.com קרמ יקצילסט

31

מקורות נוספים

מדריכים למשתמש.

➢ToolStickUniDC User’s Guide

➢AN333: ToolStick Virtual Tools User’s Guide

➢Located at these default locations:

▪C:\SiLabs\MCU\ToolStick\UniversityDC\Documentation\

▪C:\SiLabs\MCU\ToolStick\Documentation\

דוגמאות נוספות.

➢UniDC_FeaturesDemo

➢UniDC_VirtualTools_Demo

➢Located at this default location:

▪C:\SiLabs\MCU\ToolStick\UniversityDC\Firmware

www.elecstudy.orgטסליצקי מרק [email protected]

Page 32: Lecture 3meyda.education.gov.il/.../homer-limud/silicon/Lecture_3.pdf · 2019-11-02 · Lecture 3 Silicon Labs ToolStick Development Platform markalex012@gmail.com קרמ יקצילסט

www.silabs.com/MCU

www.elecstudy.orgטסליצקי מרק [email protected]