פורסם 2012 ביוני 2513 שנים חברה, יש בעיה בעייה בLCD של הארדואינו חברתי חיישן מרחק לארדואינו וLCD אליו בשביל לראות את המרחק על הLCD מהחיישן אבל הבעיה שמופיע לי אחרי המרחק כמה קשקושים תמונה: Uploaded with ImageShack.us וזאת התוכנית: #include "Ultrasonic.h"Ultrasonic ultrasonic(8, 7);#include <LiquidCrystal.h>LiquidCrystal lcd(12, 11, 5, 4, 3, 2);void setup() { Serial.begin (9600); lcd.begin(16, 2);}void loop() { int distance = ultrasonic.Ranging(CM); if (distance >= 200 || distance <= 0) { lcd.setCursor(0, 1); lcd.print("Out of range"); Serial.println("Out of range"); } else { lcd.clear(); lcd.print(distance); lcd.println( " CM "); lcd.println(" "); Serial.print (distance); Serial.println (" CM "); } delay(500);} משהו יודע איך פותרים אותם? ???
פורסם 2012 ביוני 2513 שנים פעם הבאה שאתה מפרסם קוד תשתמש ב"הוסף קוד" ולא "הוסף ציטוט".בשורת קוד האחרונה שמדפיסה לLCD הדפסת " ", יש סיבה מיוחדת לשורת הקוד הזאת ? מה קורה אם תמחק אותה ?
פורסם 2012 ביוני 2513 שנים מחבר הורדתי את השורה וזה מתחיל לרשום לי שטויות אחרי המרחק הינה דוגמא: Uploaded with ImageShack.us
פורסם 2012 ביוני 2513 שנים מחבר יש לי עוד בעיה,עשיתי שמתי שהמרחק הוא יותר מ2 מטר זה ירשום THE DISTANCE OVER 2 METERSעכשיו מתי שהוא עובר את ה2 מטריםאז אני רואה בLCD ככהמספר כלשהו, משתנה לOVER 2 METERS, מספר אחר כלשהו, OVER 2 METERS, מספר אחר כלשהו וככה הלאהוהמספרים שמופיעים שם הם לא קשורים, הם יכולים להיות 6 28 64 35 והם מתחלפים עם הOVER 2 METERSPIN9 זה לד שמתי שהגוף עובר את ה50 סנטימטר הוא נדלק, אל תתייחסו לזה, תתייחסו למה שקשור לLCDהינה הקוד:#include "Ultrasonic.h"Ultrasonic ultrasonic(8, 7);#include <LiquidCrystal.h>LiquidCrystal lcd(12, 11, 5, 4, 3, 2);void setup() { Serial.begin (9600); lcd.begin(16, 2); pinMode(9,OUTPUT);}void loop() { int distance = ultrasonic.Ranging(CM); if (distance >= 50) { digitalWrite (9, HIGH); if(distance >= 200) { lcd.clear(); lcd.print("The distance is:"); lcd.setCursor(0, 1); lcd.print("Over 2 meters"); } else { lcd.clear(); lcd.print("The distance is:"); lcd.setCursor(0,1); lcd.print(distance); lcd.print( " CM "); lcd.print(" "); } } else if(distance < 50) { lcd.clear(); lcd.print("The distance is:"); lcd.setCursor(0,1); lcd.print(distance); lcd.print(" CM "); lcd.print(" "); digitalWrite (9, LOW); } delay(500);}
פורסם 2012 ביוני 2513 שנים אין דבר כזה printIn ב LiquidCrystalהקדמת אותי עם התשובה הזו :-) אבל אם ככה, איך הקוד עבד?Xtr3m3r, אתה מזיז את ה-Cursor לתחילת המסך אחרי שכבר כתבת משהו, ואז כותב עוד משהו שדורס את מה שהיה קודם. שים לב לסדר הנכון של הפעולות!
פורסם 2012 ביוני 2513 שנים מחבר הקדמת אותי עם התשובה הזו :-) אבל אם ככה, איך הקוד עבד?Xtr3m3r, אתה מזיז את ה-Cursor לתחילת המסך אחרי שכבר כתבת משהו, ואז כותב עוד משהו שדורס את מה שהיה קודם. שים לב לסדר הנכון של הפעולות!קודם כל תודה על התגובה,דבר שני, לא הבנתי למה אתה מתכוון שהזזתי את הCURSOR לתחילת המסךואם תוכל לתקן את הקוד זה מאוד יעזור לי
פורסם 2012 ביוני 2513 שנים רגע, סליחה, התבלבלתי עם סדר המספרים בפקודה setCursor.יכול להיות שהסיגנל מהחיישן שלך פשוט "רועש"? אם אתה מחזיק את היד קרוב אליו, המספרים האקראיים האלה שאתה מקבל נוטים להיות נמוכים יותר?(איפה מצאת בכלל את הספריה Ultrasonic?)
ארכיון
דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.