מיקרוביט

לוגו מיקרוביט
בקר המיקרוביט ולידו עט להמחשת הגודל. במרכז ניתן להבחין ברשת נוריות הלדשתי נוריות לד עוקבות. צילום [[GIF של הסימולטור של המיקרוביט]]
מיקרוביט (Micro Bit או Micro:bit בחלק מהמקרים) הוא בקר הניתן לתכנות המכיל מספר אמצעי קלט ופלט. הוא נהגה ומומן בחלקו על ידי ה-BBC על מנת ללמד את הילדים בבריטניה תכנות. המיקרוביט תומך קוד פתוח כך שניתן להוסיף פונקציות שונות, בעזרת הרחבות, בכל אחד ממשקי התכנות. המיקרוביט הוא בקר נפוץ ללימוד תכנות ברחבי העולם. אחד המאפיינים ההופכים את התכנות במיקרוביט לידידותי הוא הסימולטור המוצג בממשק ה-makecode[https://makecode.microbit.org/#editor] בו ניתן לראות מיד את תוצאת התכנות.

==שפות תכנות==
למיקרוביט כמה שפות תכנות אפשריות:
* פייתון על בסיס המודולה microbit או MicroPython בכל מהדר של השפה.
* תכנות חזותי באמצעות ממשק סקראצ'
* באמצעות ממשק makecode שבשותפות עם חברת מיקרוסופט ניתן לתכנת בשלושה דרכים:
** תכנות חזותי באמצעות בלוקים
** ג'אווה סקריפט
** פייתון

==גרסאות==
שלושת הצירים בהם מבחין חיישן התאוצה
מעגלי חשמל דרך רכיב נוסף]]

למיקרוביט שתי גרסאות V1 ו-V2 השונות הן במספר הרכיבים, והן ביכולות העיבוד של הבקר.

גרסה V1 מכילה את הרכיבים:

גרסה V2 מכילה בנוסף את הרכיבים:
*מיקרופון
* רמקול
* אייקון המיקרוביט בכרטיס משמש כחיישן מגע נוסף 

למיקרוביט ניתן להוסיף אמצעי קלט ופלט נוספים, ועוד רכיבים וחומרה שונים. את הרכיבים השונים ניתן לתכנת בעזרת הוספת הרחבות. למשל:

==קוד לדוגמה==
להלן כמה קטעי קוד בשלוש שפות שונות, המבצעים את אותה פעולה על המיקרוביט:

===הצגת המחרוזת Hello world!===
[[תכנות חזותי של המחרוזת: "Hello world!" במיקרוביט באמצעות ממשק makecode]]
* ג'אווה סקריפט:
<syntaxhighlight lang="javascript">
basic.showString("! Hello world")
</syntaxhighlight>
* פייתון (באמצעות ממשק makecode):
<syntaxhighlight lang="python3">
basic.show_string("! Hello world")
</syntaxhighlight>

=== הפעלת נורית לד המהבהבת בקצב של 1Hz ===
קוד חזותי של נורית לד המהבהבת בקצב של 1Hz
לפי הקוד בדוגמה מעלה]]
* ג'אווה סקריפט:
<syntaxhighlight lang="javascript">
basic.forever(function () {
 led.plot(2, 2)
 basic.pause(500)
 led.unplot(2, 2)
 basic.pause(500)
})
</syntaxhighlight>
* פייתון (באמצעות ממשק makecode):
<syntaxhighlight lang="python3">
def on_forever():
 led.plot(2, 2)
 basic.pause(500)
 led.unplot(2, 2)
 basic.pause(500)
basic.forever(on_forever)
</syntaxhighlight>

==יתרונות וחסרונות==
===יתרונות ===
*הקידוד הויזואלי מונע ברוב הפעמים שגיאות.
*שפת לימוד נפוצה במערכת החינוך.
*קיימות פלטרפורמות והרחבות רבות.
===חסרונות===
*לשם יצירת הרחבה, נדרש ידע בתכנות. כך שמשתמש חדש בתחום התכנות, מוגבל לסל הפקודות וההרחבות המוצעות בלבד.
* גודל ורזולוציית מסך הלדים מאוד קטנה, מה שמסרבל הבנת טקסטים ארוכים.
* המערכת הרשמית אינה תומכת ומציגה במסך הלדים אותיות בעברית, אך ניתן על ידי הוספת ההרחבה Hebrew להציג אותיות בעברית.

==ראו גם==
* ארדואינו
*Raspberry Pi
* תחרויות FIRST Lego League

==קישורים חיצוניים==

* 
* [https://makecode.microbit.org/ אתר makecode]
* [https://python.microbit.org/v/3 אתר תכנות בפייתון באמצעות מודולת microbit]
* מאמר [https://conference.pixel-online.net/NPSE/files/npse/ed0010/FP/1306-STEM5036-FP-NPSE10.pdf A systematic review of the use of BBC micro: bit in primary school]
*[https://www.idogendel.com/whitebyte/archives/4814 תכנות ה-BBC MICRO:BIT בשפת פייתון - באתר "הבייט הלבן"]

== הערות שוליים ==

קטגוריה:מערכות בקרה