- הודעות 32
- תודות התקבלו: 0
שעון בארדואינו
IziG wrote: דבר ראשון, הכנתי לך התחלה של שעון פשוט שמכוון על ידי הכניסות הדיגיטליות (אל תתייחס לסמיילי שהפורום החליט להוסיף).
לא הייתי בטוח שזה עדיין מעניין אותך אז לא עדכנתי את הפוסט.
int hours;
int minutes;
void setup() {
//start serial connection
Serial.begin(9600);
//configure pins 2-6 as an input and enable the internal pull-up resistor
for(int i=2; i<=12; i++){
pinMode(i, INPUT_PULLUP);
}
//read hours
bool sensorVal2 = !digitalRead(2);
bool sensorVal3 = !digitalRead(3);
bool sensorVal4 = !digitalRead(4);
bool sensorVal5 = !digitalRead(5);
bool sensorVal6 = !digitalRead(6);
//read minutes
bool sensorVal7 = !digitalRead(7);
bool sensorVal8 = !digitalRead(;
bool sensorVal9 = !digitalRead(9);
bool sensorVal10 = !digitalRead(10);
bool sensorVal11 = !digitalRead(11);
bool sensorVal12 = !digitalRead(12);
hours = sensorVal2 + sensorVal3 *2 + sensorVal4 *4 + sensorVal5 *8 + sensorVal6 *16;
minutes = sensorVal7 + sensorVal8 *2 + sensorVal9 *4 + sensorVal10 *8 + sensorVal11 *16 + sensorVal12 *32;
if (minutes > 59) minutes = 59;
if (hours > 23) hours = 23;
}
void loop() {
Serial.print(" ");
Serial.print(hours);
Serial.print(":");
Serial.print(minutes);
Serial.println();
}
זה מציג 0:0
Please התחברות או צור חשבון to join the conversation.
elhai wrote:
IziG wrote: דבר ראשון, הכנתי לך התחלה של שעון פשוט שמכוון על ידי הכניסות הדיגיטליות (אל תתייחס לסמיילי שהפורום החליט להוסיף).
לא הייתי בטוח שזה עדיין מעניין אותך אז לא עדכנתי את הפוסט.
int hours;
int minutes;
void setup() {
//start serial connection
Serial.begin(9600);
//configure pins 2-6 as an input and enable the internal pull-up resistor
for(int i=2; i<=12; i++){
pinMode(i, INPUT_PULLUP);
}
//read hours
bool sensorVal2 = !digitalRead(2);
bool sensorVal3 = !digitalRead(3);
bool sensorVal4 = !digitalRead(4);
bool sensorVal5 = !digitalRead(5);
bool sensorVal6 = !digitalRead(6);
//read minutes
bool sensorVal7 = !digitalRead(7);
bool sensorVal8 = !digitalRead(;
bool sensorVal9 = !digitalRead(9);
bool sensorVal10 = !digitalRead(10);
bool sensorVal11 = !digitalRead(11);
bool sensorVal12 = !digitalRead(12);
hours = sensorVal2 + sensorVal3 *2 + sensorVal4 *4 + sensorVal5 *8 + sensorVal6 *16;
minutes = sensorVal7 + sensorVal8 *2 + sensorVal9 *4 + sensorVal10 *8 + sensorVal11 *16 + sensorVal12 *32;
if (minutes > 59) minutes = 59;
if (hours > 23) hours = 23;
}
void loop() {
Serial.print(" ");
Serial.print(hours);
Serial.print(":");
Serial.print(minutes);
Serial.println();
}
זה מציג 0:0
זה בסדר גמור.
עכשיו תחבר ג'מפר בין ה-GND לאחת הכניסות 2 עד 6 כדי לקבוע את השעה של התוכנית.
כניסות 7 עד 12 אחראיות על הדקות.
פשוט חבר ג'מפר בין GND לאחת מהן ולחץ Reset על הארדואינו כדי לראות את השעה משתנה. התוכנית הזו לא מונה כלום, רק "מכוונת" שעה בלי רכיבים חיצוניים.
Please התחברות או צור חשבון to join the conversation.
IziG wrote: בקשר לשמירה של התוכנית על לוח ארדואינו, לא נתקלתי בבעיה כזו.
בתוכנה שאיתה אתה עורך את התוכנית ואיתה מעלה את הקובץ לארדואינו, לחץ על File ואחר כך Preferences.
סמן את ה-V ליד ה-Upload ותעלה את התוכן שמופיע ב-IDE אחרי שאתה מעלה את התוכנית. רק נוודא שאין שגיאות.
עשיתי את זה אבל אני לא מבין מה זה IDE מאיפה
Please התחברות או צור חשבון to join the conversation.
חיברתי ב6 עושה לי 16:0IziG wrote:
elhai wrote:
IziG wrote: דבר ראשון, הכנתי לך התחלה של שעון פשוט שמכוון על ידי הכניסות הדיגיטליות (אל תתייחס לסמיילי שהפורום החליט להוסיף).
לא הייתי בטוח שזה עדיין מעניין אותך אז לא עדכנתי את הפוסט.
int hours;
int minutes;
void setup() {
//start serial connection
Serial.begin(9600);
//configure pins 2-6 as an input and enable the internal pull-up resistor
for(int i=2; i<=12; i++){
pinMode(i, INPUT_PULLUP);
}
//read hours
bool sensorVal2 = !digitalRead(2);
bool sensorVal3 = !digitalRead(3);
bool sensorVal4 = !digitalRead(4);
bool sensorVal5 = !digitalRead(5);
bool sensorVal6 = !digitalRead(6);
//read minutes
bool sensorVal7 = !digitalRead(7);
bool sensorVal8 = !digitalRead(;
bool sensorVal9 = !digitalRead(9);
bool sensorVal10 = !digitalRead(10);
bool sensorVal11 = !digitalRead(11);
bool sensorVal12 = !digitalRead(12);
hours = sensorVal2 + sensorVal3 *2 + sensorVal4 *4 + sensorVal5 *8 + sensorVal6 *16;
minutes = sensorVal7 + sensorVal8 *2 + sensorVal9 *4 + sensorVal10 *8 + sensorVal11 *16 + sensorVal12 *32;
if (minutes > 59) minutes = 59;
if (hours > 23) hours = 23;
}
void loop() {
Serial.print(" ");
Serial.print(hours);
Serial.print(":");
Serial.print(minutes);
Serial.println();
}
זה מציג 0:0
זה בסדר גמור.
עכשיו תחבר ג'מפר בין ה-GND לאחת הכניסות 2 עד 6 כדי לקבוע את השעה של התוכנית.
כניסות 7 עד 12 אחראיות על הדקות.
פשוט חבר ג'מפר בין GND לאחת מהן ולחץ Reset על הארדואינו כדי לראות את השעה משתנה. התוכנית הזו לא מונה כלום, רק "מכוונת" שעה בלי רכיבים חיצוניים.
לא הבנתי את הקוד..
Please התחברות או צור חשבון to join the conversation.
בירוק יש את חישוב השעות לפי כניסות 8 עד 12.
חיברת את כניסה 6 ל-GND, וקיבלת 16 דקות. אם תחבר לדוגמה את כניסה 10, 3 ו-5 של הארדואינו ל-GND, תקבל 4:10.
אתה מחליט לאיזו שעה לכוון את הארדואינו ומוצא את הכניסות שהסכום שלהן שווה למה שאתה בוחר.
Please התחברות או צור חשבון to join the conversation.
IziG wrote: כניסות 2 עד 7 אחראיות על חישוב הדקות לפי מה שמסומן בצהוב בטבלה מתחת.
בירוק יש את חישוב השעות לפי כניסות 8 עד 12.
חיברת את כניסה 6 ל-GND, וקיבלת 16 דקות. אם תחבר לדוגמה את כניסה 10, 3 ו-5 של הארדואינו ל-GND, תקבל 4:10.
אתה מחליט לאיזו שעה לכוון את הארדואינו ומוצא את הכניסות שהסכום שלהן שווה למה שאתה בוחר.
אתה מתכוון 2 עד 7 על השעות ו 8 עד 12 על הדקות.
הבנתי בערך
אבל עכשיו אני לא מבין איך זה אמור להשתנות
נגיד והגעתי לשעה שרציתי איך אני עושה שזה ישאר ויעלה כל דקה
Please התחברות או צור חשבון to join the conversation.
שים לב שהוספתי בתוכנית זוג תנאים שעבור כל מספר דקות גבוה מ-59, נכניס למשתנה minutes את המספר 59 כמקסימום דקות.
כנ"ל לגבי המשתנה hours. עבור כל סכום מעל 23, התנאי יכניס את המספר 23 לאותו משתנה.
עכשיו אפשר להתחיל לבנות את השעון עצמו. אם אתה מחפש ברשת קוד מוכן לשעון, חשוב לזכור שהקוד לא יכול לכלול delay כדי להמתין בין שניה לשניה או דקה לדקה. אתה הרי צריך באותו זמן לבדוק את מצב ה-LDR כדי לדעת אם להדליק או לא את הלד.
Please התחברות או צור חשבון to join the conversation.
אני בן אדם שלומד תוך כדיIziG wrote: ושאלה שמסקרנת אותי, הרעיון מאחורי הפרוייקט הזה היא ללמוד ארדואינו או שאתה רוצה בסופו של דבר להשתמש בארדואינו לשימוש אמיתי.
משהו כמו בית חכם מבוסס ארדואינו?
פה אני מנסה לעשות שאיזה תמונה על מנורות לד ידלקו רק בשעות מסוימות כדי שאוכל גם לישון וגם בתנאי שיש חושך בחדר
Please התחברות או צור חשבון to join the conversation.
elhai wrote: אני בן אדם שלומד תוך כדי
פה אני מנסה לעשות שאיזה תמונה על מנורות לד ידלקו רק בשעות מסוימות כדי שאוכל גם לישון וגם בתנאי שיש חושך בחדר
יפה, אהבתי.
הייתי טיפה עסוק השבוע, אבל עבר לי רעיון כיצד לממש את מה שאתה מחפש באופן פשוט יחסית.
מקווה למצא זמן היום או מחר כדי לראות איך אני כותב את זה (מתכנת ארדואינו חובב ) ונמשיך אחרי שנשתף את מה שיצא. טיפה סבלנות.
Please התחברות או צור חשבון to join the conversation.