facebook pixel מדריך: לומדים את הבסיס - דוגמאות - www.4project.co.il
Main logo www.4project.co.il
כל הרכיבים לפרוייקט שלכם
עגלת קניות

העגלה ריקה

לקוחות נכבדים, אלה שעות הפעילות של המחסן במהלך פסח 2024:
ערב חג וחג ראשון (22-23/04) - המחסן סגור
חול המועד (24-25/04) - המחסן יפעל בין 8:00 עד 15:00
ערב חג וחג שני (28-29/04) - המחסן סגור
נחזור לפעילות רגילה ביום שלישי 30/04
חג שמח!

לומדים את הבסיס - דוגמאות


2023-06-26 16:22:50
ראו את הדוגמאות בהמשך העמוד כדי לקבל סקירה על תכונות העיקריות של Arduino וספריות המרחיבות את סביבת הפיתוח.
בעמוד לומדים את הבסיס - יסודות תמצאו תאור מעמיק של מושגי יסוד של החומרה ותוכנה של הארדואינו.
עמוד לומדים את הבסיס - פורצים פנימה יסביר לכם איך אפשר להרחיב ולשנות את החומרה והתוכנה של הארדואינו.
ועמוד קישורים יספק תיעוד נוסף בנושא.

שימו לב:
הדוגמאות נכתבו לסביבת פיתוח גרסה 1.0 ומעלה.
חלק מהדברים יכולים לא לעבוד בגרסאות קודמות. מומלץ להוריד את הגרסה האחרונה של סביבת הפיתוח.

תכונות בסיסיות

תוכניות פשוטות המציגות את הפקודות הבסיסיות של Arduino.
תוכניות אלה מותקנות יחד עם סביבת הפיתוח של ארדואינו. כדי לפתוח אותם, לחצו על כפתור Open בסרגל הכלים של הסביבה ובחרו את הדוגמה ברשימה שנפתחת. תוכלו גם להגיע לדוגמאות דרך תפריט File > Examples.
TODO קישורים
1. הבסיס
  • BareMinimum - הקוד המינימלי הדרוש לכתיבת תוכנית ארדואינו (sketch)
  • Blink - הדלקה וכיבוי של מנורת לד
  • DigitalReadSerial - קריאת מצב של מפסק והדפסת מצבו ל-Serial Monitor של סביבת הפיתוח
  • AnalogReadSerial - קריאת מצב של נגד משתנה והדפסת מצבו ל-Serial Monitor של סביבת הפיתוח
  • Fade - שימוש ביציאה אנלוגית כדי לעמעם מנורת לד
  • ReadAnalogVoltage - קריאה מכניסה אנלוגית והדפסת רמת המתח שהתקבל ל-Serial Monitor של סביבת הפיתוח
2. קווים דיגיטליים
  • Blink Without Delay - הדלקה וכיבוי של לד ללא שימוש בפונקצית ()delay
  • Button - שימוש בכפתור כדי לשלוט על מנורת לד
  • Button State Change - ספירת כמות הלחיצות על כפתור
  • Input Pullup Serial - מדגים שימוש בהגדרת INPUT_PULLUP עם פונקציה ()pinMode
  • Tone - נגינת מנגנה בעזרת זמזם
  • Pitch follower - נגינה של צליל על זמזם בהתאם לכניסה אנלוגית
  • Simple Keyboard - מקלדת מוזיקלית בעלת 3 לחצנים בעזרת חיישני לחץ וזמזם
  • Tone4 - נגינה מתואמת על מספר רמקולים בעזרת פקודת ()tone
3. קווים אנלוגיים
  • AnalogInOutSerial - קריאת קו אנלוגי, תרגום התוצאה ושימוש בנתון שהתקבל לשליטה על עוצמת מנורת לד
  • Analog Input - שימוש בנגד משתנה כדי לשלוט על מהירות הבהוב של מנורת לד
  • AnalogWriteMega - עמעום של 12 מנורות לד אחד אחרי השניה בעזרת כרטיס Arduino Mega
  • Calibration - הגדירו גבולות מינימום והמקסימום לתוצאות מצופות מחיישנים אנלוגיים
  • Fading - שימוש ביציאה אנלוגית (קו PWM) כדי לעמעם מנורת לד
  • Smoothing - החלקה של מספר קריאות מקו אנלוגי
4. תקשורת
דוגמאות אלה כוללות קוד המאפשר ל-Arduino לתקשר עם תוכניות Processing הרצות במחשב. למידע נוסף על Processing ולהורדת התוכנה, בדקו את processing.org.
בנוסף, יש גם תוספים ל-Max/MSP המאפשרות תקשורת עם תוכניות ארדואינו. לפרטים נוספים עם Max/MSB בדקו את Cycling 74.

  • ReadASCIIString - ניתוח של מחרוזת של מספרים שלמים המופרדים ע"י פסיקים כדי לעמעם מנורת לד
  • ASCII Table - הצגת יכולות מתקדמות של שימוש בפונקצית פלט לתקשורת טורית של Arduino
  • Dimmer - הזזה של עכבר כדי לשנות את עוצמת הארה של מנורת לד
  • Graph - שליחת נתונים למחשב והצגה גרפית שלהם ב-Processing
  • Physical Pixel - הדלקה וכיבוי של מנורת לד בהתאם לנתונים הנשלחים ל-Arduino מ-Processing או Max/MSP
  • Virtual Color Mixer - שליחת מספר משתנים מ-Arduino למחשב וקריאתם ע"י Processing או Max/MSP
  • Serial Call Response - שליחת מספר משתנים בשיטת call-and-response
  • Serial Call Response ASCII - שליחת מספר משתנים בשיטת call-and-response וקידוד של הנתונים ל-ASCII לפני השליחה
  • SerialEvent - הדגמה של שימוש ב-()SerialEvent
  • Serial input (Switch (case) Statement) - נקיטת פעולות שונות בהתאם לתווים הנקלטים מתקשורת טורית
  • MIDI - שליחת תווי MIDI בתקשורת טורית
  • MultiSerialMega - שימוש בשני קווי תקשורת טורית הקיימים בכרטיס Arduino Mega
5. בקרה על זרימת הפעולות
  • If Statement (התניות) - שימוש ב-IF כדי לשנות את הפלט על סמך שינויים בקלט
  • For Loop - שליטה על מספר לדים בעזרת לולאת FOR
  • Array - גרסה נוספת לדוגמת ה-For Loop המדגימה שימוש במערכים
  • While Loop - שימוש בלולאת WHILE כדי לכייל חיישן כל עוד הכפתור לחוץ
  • Switch Case - מדגים איך לבחור בין מספר ערכים. שווה ערך לשימוש במספר פקודות IF. דוגמה זו מראה חלוקה של קריאה מחיישן ל-4 טווחים ונקיטת פעולות שונות בהתאם לטווח הנבחר
  • Switch Case 2 - דוגמה נוספת ל-Switch/Case המראה נקיטת פעולות שונות בהתאם לתווים הנקלטים מתקשורת טורית
6. חיישנים
  • ADXL3xx - קריאת נתונים מחיישני תאוצה ADXL3xx
  • Knock - זיהוי נקישה בעזרת חיישן פייזו
  • Memsic2125 - קריאת נתונים מחיישן תאוצה Memsic2125
  • Ping - זיהוי עצמים בעזרת חיישן מרחק על קולי
7. תצוגה
דוגמאות לשליטה בסיסית על תצוגה
  • LED Bar Graph - בניה של פס לדים
  • Row Column Scanning - שליטה על מטריצת לדים 8x8
8. מחרוזות טקסט
  • StringAdditionOperator - חיבור של מחרוזות בדרכים שונות
  • StringAppendOperator - הוספת נתונים למחרוזות
  • StringCaseChanges - שינוי בין אותיות גדולות לאותיות קטנות במחרוזת
  • StringCharacters - קריאה וקביעת ערך של תו מסוים במחרוזת
  • StringComparisonOperators - השוואת מחרוזות לפי סדר אלף בית
  • StringConstructors - אתחול של אובייקט מחרוזת
  • StringIndexOf - חיפוש הופעה ראשונה או אחרונה של תו במחרוזת
  • StringLength & StringLengthTrim - קיצוץ ובדיקת אורך המחרוזת
  • StringReplace - החלפה של תווים מסוימים במחרוזת
  • StringStartsWithEndsWith - בדיקה האם המחרוזת מתחילה או מסתיימת בתו או תת-מחרוזת אחרת
  • StringSubstring - חיפוש ביטויים במחרוזת
9. USB (מתאים רק לדגמי Leonardo, Micro ו-Due)
דוגמאות Mouse ו-Keyboard מיוחדים לדגמי Leonardo, Micro ו-Due. הן מציגות שימוש בספריות היחודיות לדגמים אלה.
  • KeyboardAndMouseControl - הצגת שימוש בספריות Mouse ו-Keyboard בתוכנית אחת
  • KeyboardMessage - שליחת מחרוזת טקסט כשנלחץ כפתור
  • KeyboardLogout - התנתקות מחשבון משתמש נוכחי ע"י שליחת פקודות מקלדת
  • KeyboardSerial - קריאת תו מתקשורת טורית ושליחת לחיצות מקשים במקלדת
  • KeyboardReprogram - פותח חלון חדש בסביבת פיתוח Arduino ומתכנת את כרטיס ה-Leonardo עם תוכנית Blink
  • ButtonMouseControl - שליטה על תזוזת הסמן ולחיצה על 5 כפתורים
  • JoystickMouseControl - שליטה על סמן המחשב בעזרת ג'ויסטיק לאחר לחיצת כפתור

ספריות

דוגמאות לספריות הכלולות בסביבת פיתוח Arduino.
ספרית Bridge (לכרטיסי Yun בלבד)
  • Bridge - גישה לקווים של הכרטיס מדפדפן אינטרנט
  • Console ASCII Table - מדגים הדפסה של נתונים בצורות שונות בחלון בקרה (console)
  • Console Pixel - שליטה על מנורת לד מחלון בקרה (console)
  • Console Read - ניתוח נתונים שהתקבלו מחלון בקרה (console) והדפסתם בחזרה
  • Datalogger - שמירה של נתונים מחיישן על כרטיס זכרון SD
  • File Write Script - מדגים יצירה של תסריט פקודות (Script) בלינוקס והרצה שלו בעזרת מחלקת Process
  • HTTP Client - בניה של תוכנית פשוטה שמורידה עמוד אינטרנט ומדפיסה אותו ל-Serial monitor
  • Process - מדגים שימוש במחלקת Process להרצת תוכניות לינוקס
  • Shell Commands - מדגים שימוש במחלקת Process להרצת פקודות לינוקס
  • Temperature Web Panel - הצגה של נתוני חיישן בעמוד אינטרנט לאחר בקשה מדפדפן
  • TimeCheck - קריאת זמן משרת זמן ברשת והדפסה שלו ל-Serial console
  • WiFiStatus - הרצה של תסריט פקודות (Script) שמדווח על עוצמת קליטה של רשת ה-WiFi
  • Xively Client - שליחת נתונים ממספר חיישנים ל-Xively בעזרת מחרוזות
  • Yun Serial Terminal - גישה לחלון בקרה של לינוקס (console) דרך serial monitor של Arduino
  • MailboxReadMessage - שליחת הודעות טקסט למעבד של Arduino דרך דפדפן אינטרנט בעזרת REST API
דוגמאות מאתר Temboo
באתר Temboo יש מחלקה מיוחדת לספריית Temboo וגם דוגמאות לספריות המגיעות עם סביבת פיתוח Arduino.

דוגמאות מאתר Spacebrew
באתר Spacebrew יש מספר דוגמאות המותאמות לסביבת העבודה שלהם וחלקם משתמשים ב-Arduino Yun.

טיפים וטריקים בלינוקס
TODO קישורים
  • Pacakage Manager - הסבר על התקנת תוכנות נוספות על ה-Yun
  • Expanding Yún disk space - הסבר על הרחבת זכרון ב-Yun בעזרת כרטיס זכרון SD
ספרית EEPROM
  • EEPROM Clear - מחיקת בתים (Bytes) ב-EEPROM
  • EEPROM Read - קריאת מידע מ-EEPROM ושליחתו למחשב
  • EEPROM Write - שמירת נתונים מכניסה אנלוגית ב-EEPROM
ספרית Esplora
דוגמאות לכרטיס Esplora למתחילים
  • EsploraBlink - הבהוב במנורת לד RGB שעל הכרטיס Esplora
  • EsploraAccelerometer - קריאת נתונים מחיישן התאוצה
  • EsploraJoystickMouse שימוש בג'ויסטיק על כרטיס Esplora כדי להזיז סמן העכבר במחשב
  • EsploraLedShow - שימוש בג'ויסטיק ונגד משתנה כדי לייצר מופע אורות של מנורת לד
  • EsploraLedShow2 - שימוש במיקרופון, נגד משתנה וחיישן אור כדי לשנות את הצבע של הלד המותקן בכרטיס
  • EsploraLightCalibrator - קריאת נתונים מחיישן התאוצה
  • EsploraMusic - יצירת מוזיקה עם כרטיס Esplora
  • EsploraSoundSensor - קריאת נתונים מהמיקרופון של כרטיס Esplora
  • EsploraTemperatureSensor - קריאת נתונים מחיישן הטמפרטורה ותרגום שלהם לפרנהייט (F) או צלסיום (C)
דוגמאות לכרטיס Esplora למתקדמים
  • EsploraKart - שימוש בכרטיס Esplora כבקר למשחק SuperTuxKart
  • EsploraTable - הדפסת נתונים מחיישנים של כרטיס Esplora בצורת טבלה
  • EsploraRemote - חיבור של Esplora ל-Processing ושליטה בפלט
  • EsploraPong - שחקו בפינג-פונג עם כרטיס Esplora בסביבת Processing
ספרית Ethernet
  • ChatServer - הקימו שרת צ'טים פשוט
  • WebClient - בצעו בקשת HTTP
  • WebClientRepeating - בצעו בקשות HTTP חוזרות
  • WebServer - הקימו דף HTML פשוט שמציג נתונים מחיישנים אנלוגיים
  • XivelyClient - חיבור ל-xively.com, שרת אגירת נתונים חינמי
  • XivelyClientString - שליחת נתונים ל-xively.com
  • BarometricPressureWebServer - הצגת נתונים של חיישן לחץ ברומטרי בעמוד אינטרנט
  • UDPSendReceiveString - קבלה ושליחת מחרוזות טקסט בעזרת פרוטוקול UDP
  • UdpNtpClient - קריאת זמן משרת NTP ע"י שימוש בפרוטוקול UDP
  • DnsWebClient - תקשורת אינטרנט עם שרתי DNS ו-DHCP
  • DhcpChatServer - שרת צ'טים פשוט העושה שימוש ב-DHCP
  • DhcpAddressPrinter - קבלת כתובת IP משרת DHCP והדפסה שלה
  • TelnetClient - תוכנת Telnet פשוטה
ספרית Firmata
  • מדריך לשימוש בספריית Firmata הסטנדרטית
ספרית GSM
דוגמאות לספריית GSM
  • Make Voice Call - ביצוע שיחות טלפון מ-Serial monitor
  • Receive Voice Call - בדיקה של מצב המודם כשמקבלים שיחת טלפון
  • Send SMS - שימוש ב-Serial monitor לשליחת הודעות SMS למספרים שונים
  • Receive SMS - קבלת הודעות SMS והדפסתם ל-Serial monitor
  • Web Client - הורדת תוכן של עמוד אינטרנט כרטיס ה-Arduino דרך חיבור GPRS
  • Web Server - בניה של שרת WEB אלחוטי דרך חיבור GPRS
  • Xively Client - תקשורת עם שרת Xively המספק שירותי שמירת נתונים מחיישנים
  • Xively Client String - תקשורת עם שרת Xively המספק שירותי שמירת נתונים מחיישנים
כלים ל-GSM
  • Test Modem - קריאת מספר ה-IMEI של המודם
  • Test GPRS - בדיקת תקינות חיבור GPRS לכרטיס ה-SIM שלכם
  • GSM Scan Networks - חיפוש של רשתות זמינות
  • Pin Management - ניהול מספר ה-PIN של כרטיס ה-SIM שלכם
  • Band Management - ניהול תדרי הרשת אליה מתחבר מגן ה-GSM
  • Test Web Server - בניית שרת WEB בעזרת מגן ה-GSM
ספרית LiquidCrystal
  • Hello World - מציג "!hello world" ומספר השניות מאתחול הכרטיס
  • Blink - שליטה על סמן בצורת קוביה
  • Cursor - שליטה על סמן בצורת קו תחתון
  • Display - לרוקן את התצוגה במהירות ללא איבוד של המידע המוצג עליו
  • TextDirection - שליטה על כיוון הצגת הטקסט ביחס לסמן
  • Scroll - גלילת הטקסט שמאלה וימינה
  • Serial input - קבלת נתונים דרך תקשורת טורית והצגתם
  • SetCursor - שליטה על מיקום הסמן
  • Autoscroll - הזזה של הטקסט שמאלה וימינה לאחר הוספת תווים
ספרית Robot
  • Logo - תודיעו לרובוט שלכם לאן לנסוע בעזרת הכפתורים שעל הכרטיס
  • Line Following - ציירו מסלול מרוצים ותנו לרובוט שלכם לרוץ עליו
  • Disco Bot - הפכו את הרובוט שלכם לתיבת נגינה 8bit שרוקד לפי הקצב
  • Compass - תכננו צייד אוצרות עם המצפן הדיגיטלי
  • Inputs - למדו לשלוט על הנגד הסיבובי והכפתורים
  • Wheel Calibration - כיילו את הגלגלים כדי לשפר את היכולות
  • Runaway Robot - שימוש בחיישן מרחק על קולי עם הרובוט
  • Remote control - שימוש בשלט רחוק ישן של הטלוויזיה כדי לשלוט על הרובוט ממרחק
  • Picture browser - הצגת תמונות שלכם על המסך של הרובוט
  • Rescue - למדו את הרובוט לחפש פנינים נסתרות במבוך
  • Hello User - תוכנית הראשונית איתה מגיע הרובוט, שנו אותה כדי לייצר משהו יחודי לכם
  • Calibrate Compass - כיילו את מודול המצפן כדי שיסתובב בצורה רציפה (לדגמים ישנים המשתמשים ברכיב HMC6352 של חברת Honeywell)
ספרית SPI
  • BarometricPressureSensor - קריאה של לחץ ברומטרי וטמפרטורה מהחיישן בעזרת פרוטוקול SPI
  • SPIDigitalPot - שליטה על נגד משתנה דיגיטלי AD5206 בעזרת פרוטוקול SPI
ספרית Servo
  • Knob - שליטה על הציר של מנוע סרוו ע"י סיבוב נגד משתנה
  • Sweep - סיבוב ציר של מנוע סרוו הלוך ושוב
ספרית SoftwareSerial
  • Software Serial Example - הסבר על שימוש בספריית SoftwareSerial, כי לפעמים ערוץ תקשורת טורית אחד לא מספיק
  • Two Port Receive - עבודה עם מספר ערוצי תקשורת בעזרת SoftwareSerial
ספרית Stepper
  • Motor Knob - שליטה על מנוע צעד ע"י סיבוב של נגד משתנה
ספרית TFT
Esplora
  • Esplora TFT Bitmap Logo - קריאת קובץ תמונה מכרטיס זכרון microSD והצגתו במקומות אקראים
  • Esplora TFT Color Picker - השתמשו בג'ויסטיק ונגד משתנה לשינוי צבע של מסך TFT
  • Esplora TFT Etch a Sketch - ציור על מסך של Esplora ע"י הג'ויסטיק
  • Esplora TFT Graph - תצוגה גרפית של ערכים מחיישן האור על מסך TFT
  • Esplora TFT Horizon - ציור של קו אופק מדומה על בסיס נתוני הטיה מחיישן התאוצה
  • Esplora TFT Pong - מימוש בסיסי של משחק הפינג-פונג
  • Esplora TFT Temperature - בדיקת טמפרטורה מהחיישן המובנה והצגת הערכים על המסך
Arduino
  • TFT Bitmap Logo - קריאת קובץ תמונה מכרטיס זכרון microSD והצגתו במקומות אקראים
  • TFT Display Text - קריאת ערכים מחיישן והצגתם על המסך
  • TFT Pong - מימוש Arduino של משחק הפינג-פונג
  • Etch a Sketch - ציור על המסך ע"י שני נגדים משתנים
  • Color Picker - שינוי של צבע המסך ע"י ערכים מ-3 חיישנים
  • Graph - תצוגה גרפית של ערכי נגדים משתנים על המסך
ספרית Wire
  • SFRRanger_reader - קריאה מחיישן מרחק על קולי Devantech SRFxx בעזרת תקשורת I2C
  • digital_potentiometer - שליטה על נגד משתנה דיגיטלי AD5171 בעזרת ספריית Wire
  • master reader/slave sender - חברו 2 (או יותר) כרטיסי Arduino כדי לשטף מידע במבנה בו ה-Master מקבל את המידע וה-Slave שולח
  • master writer/slave reader - חברו 2 (או יותר) כרטיסי Arduino כדי לשטף מידע במבנה בו ה-Master שולח את המידע וה-Slave מקבל
ספרית WiFi
  • ConnectNoEncryption - חיבור לרשת פתוחה (ללא הצפנה)
  • ConnectWithWEP - חיבור לרשת המוצפנת עם WEP
  • ConnectWithWPA - חיבור לרשת המוצפנת עם WPA2
  • ScanNetworks - הצגה של כל רשתות WiFi בסביבה
  • WiFiChatServer - הקימו שרת צ'טים פשוט
  • WiFiXivelyClient - חיבור ל-xively.com, שרת אגירת נתונים חינמי
  • WiFiXivelyClientString - שליחת מחרוזות טקסט ל-xively.com
  • WiFiWebClient - חיבור לשרת WEB מרוחק
  • WiFiWebClientRepeating - ביצוע בקשות HTTP חוזרות
  • WiFiWebServer - הקימו שרת WEB בעזרת מגן WiFi

כרטיס Arduino כצורב ISP

תוכנית ה-ArduinoISP (קישור TODO) הופכת את כרטיס הארדואינו שלכם לצורב המאפשר  צריבה מחודשת של בקרי Atmega.
הדבר שימושי כשאתם צריכים לצרוב מחדש את תוכנית האתחול (bootloader) על כרטיס Arduino, כשאתם עוברים מכרטיס Arduino לשבב Atmega עם מטריצה (TODO קישור) או כשאתם בונים מעגל תואם ארדואינו משלכם (TODO קישור).

מידע נוסף

לרשימה ענקית של דוגמאות המתוחזקות ע"י קהילת Arduino בדקו את עמוד "interfacing with hardware" ב-playground wiki.

כתיבת דוגמאות

קראו הסבר לסגנון כתיבה (TODO קישור) העוזר לכתיבת דוגמאות ברורות למתחילים.


עמוד זה הוא תרגום של Examples לפי רישיון Creative Commons Attribution-ShareAlike 3.0.
בעמוד נוספו קישורים למוצרים הרלוונטיים באתר.