[Powered by Google Translate] כריסטופר ברתולומיאו: אז יש לך כנראה כבר שומע הרבה על Arduino, ואת כל הדרכים זה יכול להיות מבריקים לתכנת באמצעות C לקבל קלט מהתקנים היקפיים כמו כפתורים, חיישנים וכפתורים. או להציג ולשלוט בתפוקה באמצעות רכיבים פיסיים כמו אורות, רמקולים, מנועים ומנועים. אבל מה הוא Arduino, באמת? Arduino הוא סוג של מייקרו, ו מייקרו יכול להיחשב כמאוד scaled למטה מחשב המכיל רכיבים כגון מעבד, כמויות קטנות של זיכרון לאחסון פשוט תוכניות וסיכות קלט / פלט שונים המייצרות זרם חשמלי כתוצאה מ הוראות בתכנית שלך. הפינים בArduino נמצאים כאן לממשק עם מרכיבים פיסיים כגון נוריות, רמקולים, חיישנים, מנועים, והרבה מעבר לכך. זה R3 Arduino אונו שאנחנו משתמשים בו לאורך הקורס. בסרטון הזה, אני הולך על רק חלק העיקרי רכיבים של המערכת הזאת. עם זאת, אם אתה מעוניין במידע נוסף, שאני ממליץ אתה קורא, בקר בקישור לArduino אונו המלאות של מפרט. כוח ללוח ניתן לקבל מ-USB, החיצוני AC לספקי כוח DC, או על ידי חברי סוללה. לתרגילי וידאו אלה, יהיו לנו באמצעות USB לכוח. אם אתה מעוניין בדרכים אחרות כדי לספק הכח ל Arduino לוח או רוצים לדעת יותר על את פיני הכח, עיין בסעיף הכח של המפרט קישור מצורף. בשלב בא, יש שני חלקים עיקריים על פיני Arduino שאנחנו ישתמש כדי לספק מתח לרכיבים שלנו - סיכות וסיכות דיגיטליות כניסה אנלוגיות. לפני שנמשיך הלאה, בואו להבין שני המושגים הללו. פינים של כניסה אנלוגיים הם עבור רכיבים כגון ידיות, אשר ליצור אותות אנלוגיים. ידית יכולה לספק כמויות שונות של התנגדות ל מתח בין שני פינים שזה קשור אליו. קח, למשל, עמעם אור. כמו הכפתור הוא מעווה בכיוון אחד, האור יהיה הפך בהיר בגלל נחלש ההתנגדות. זה מספק זרם חשמלי חזק כדי רכיב, שתוצאה באור בהיר יותר. עכשיו את הסיכות הדיגיטליות הן מעט שונות שב הם מייצרים אות דיגיטלית שתלויה כמות המתח על פני את הסיכות. אותות דיגיטליים עבור Arduino הם או בשעת 5 וולט, או מעוגן כלומר כבוי, או אפס וולט. קח למשל את מתג אור. מתג אור יש שני ערכים - לסירוגין. כשתדליק את האור באמצעות המתג, אתה מתן כוח מלא לאור. ובכן, על הנושא של דיגיטלי ואנלוגי, אני בטוח שמתם לב עד עכשיו ראשי תיבות PWM תחת דיגיטלי סעיף להצמיד. זה עומד על אפנון רוחב פולס. PWM מתמרן מתח לאורך הזמן לייצר השפעות אפנון שדומים לאלו מהפינים האנלוגיים. לדוגמה, על ידי הפיכת אור ולכבות במהירות ל אורכים שונים של זמן, זה יכול לשלוט באור של בהירות. אז אתה בטח שואל את עצמך, אם כל מה שאתה צריך לעשות זה לספק קצת מתח לרכיב מסוים כדי שזה יעבוד, מדוע אפילו יש מייקרו? ובכן, בואו נעיף מבט ברמה גבוהה במייקרו כי אנו עלולים ליצור אינטראקציה עם יומי - השעון המעורר. השעון המעורר יש הרבה כניסות, לחצנים לדוגמה, אשר משמש לאינטראקציה עם תכנית השעון המעורר. כמו כן, יש יציאות שהן מעגלים פולט אור הנקראים 7 מציג קטע שמראה את השעה. כל זה נשלט על ידי תכנית הכלול ב הזיכרון של המיקרו. עכשיו, בואו נסתכל על תרחיש ולראות אם אנחנו יכולים לשכפל את השעון המעורר עם Arduino זה. אתה מוכן ללכת לישון, אבל אתה צריך להגדיר אותך אזעקה להתעורר. אנו יודעים כי על ידי שימוש בכמה כפתורים אנו יכולים להגדיר כמה , זמן משתנה, שמעניק התכנית מצב זה חייב לעמוד. כגון, כאשר זמן זה נכון, התכנית צריכה לשלוח אות לסיכה אחרת שמחוברת לרמקול. וכאשר האות הזה מתקבל על ידי הרמקול, זה צריך לשחק קול נורא. הבה נשתמש מעגל פשוט לתת לך קצת רקע למה אני מדבר על. אז עכשיו שהאזעקה שלך מוגדרת, המצב שלך מאוחסן כעת בזיכרון של התכנית. ורק אחרי 9 שניות של שינה, אתה שומע נורא אזעקה נשמעה משם. אני הולך קדימה ותוספת האזעקה שלנו כאן. עכשיו, אנחנו לא רוצים לקום מהר כל כך, ולכן אנחנו מרגישים נודניק כפתור. אנחנו מרשים לעצירת התלמיד הישן, או לקטוע זה נורא צליל אזעקה, רק על ידי להכות על כפתור זה. אבל מה באמת קורה כאשר התכנית של מייקרו מקבל אות מהכפתור הנודניק? ובכן, כאשר הכפתור הנודניק נלחץ, אות היא קבל על סיכה שונה. באופן כללי, כאשר התכנית תקבל קלט מזה להצמיד אותו מגיב על ידי קורא כמה פונקציה לעכב, או לישון, האות שנשלחה לסיכת הדובר שלנו. עיכוב או לישון זה לקצת זמן קבוע שבי בדרך כלל הם כתשע דקות, או במונחי Arduino, 540.000 אלפיות שניים. אם השעון המעורר לא כיבה לפני נודניק טיימר כלה, מצבו של התכנית לשלוח עוד לאותת לסיכה של הרמקול, וכך הופך האזעקה שוב. עכשיו, מה עושה Arduino המיוחד לcs50 הוא סביבת פיתוח משתמשת בשפת C, נותנת לך הכח ליישם את הידע שנצבר בישיר יותר ידות על דרך. למרות שלא נגעו בסיכות המיוחדות האחרות מעורב עם Arduino, אני ממליץ לך לבקר מפרט ולקרוא על היכולות שלהם עוד יותר. בסרטון אחר, נבחן Arduino סביבת פיתוח על cs50 המכשיר ולכותבנו יישום מייקרו הראשון. השם שלי הוא כריסטופר רתולומיאו, זה cs50.