באיזה שפת תכנות משתמשים עבור תכנות של הלוח הזה? - עמוד 3 - אלקטרוניקה ומודינג - HWzone פורומים
עבור לתוכן
  • צור חשבון

באיזה שפת תכנות משתמשים עבור תכנות של הלוח הזה?


card

Recommended Posts

  • תגובות 46
  • נוצר
  • תגובה אחרונה

אגב עוד דבר שממש חסר לי ב-++C של , הוא איבנטים.

זה מאד נוח שאתה יכול לכתוב קלאס קטן, שיש לו כמה איבנטים שהגדרת,

ואז הוא מקפיץ אותם כשקרה משהו.

לאיזה events אתה מצפה בדיוק?! זה כולה ג'וק עם כמה רגלי מתכת...

יש לך פסיקות (interrupts) לשינויי מתח על פינים, ויש פסיקות לטיימרים.

קישור לתוכן
שתף באתרים אחרים

זה אפשרי, אבל קצת מסורבל מכיוון של-AVR הפשוטים אין SOFTWARE INTERRUPTS. אני חושב שאם תחפש בגוגל סביר שתמצא משהו שיעזור לך עם איוונטים.

אם אתה באמת באמת באמת לא יכול בלי הדברים האלה אז תמיד אפשר לעבור לפתח על ה-NETDUINO. הוא עושה שימוש במיקרו בקר עם תדר שעון של 48 מגה הרץ, הרבה יותר אבל משיג ביצועים גרועים בהרבה. יש מחיר לזה.

קישור לתוכן
שתף באתרים אחרים

כאמור,

הבעיה שלי עם ה-Netduino היא לא הביצועים,

אלא הנגישות מבחינת מחיר.

כשמיקרו-בקר עולה 4.5$,

אין לך בעיה לפזר יחידות שלו בכל מקום שצריך.

כשהוא עולה 30$, אז זה כבר נהייה בעייתי..

חבל שאין עוד חברות שמייצרות מיקרו-בקרים עם .NET CF חוץ מהיחידה הנ"ל - Secret Labs.

קישור לתוכן
שתף באתרים אחרים

אני כבר לא מחזיק את עצמי שלא להגיב... :kopfpatsch:

ב-4.5$ הבקר גם לא מכין קפה ולא יודע להציג לך הולוגרמות...

אתה רוצה לתכנת ב-C#? עזוב את המיקרובקרים ותחזור למחשב שלך.

פעם קראתי איזו בדיחה על הגדרת מתכנתים:

מתכנת מתחיל הוא זה שכותב את מה שהוא צריך...

מתכנת טוב הוא זה שמעתיק את מה שהוא צריך ממישהו שכבר עשה את זה...

ומתכנת מעולה גם יודע איפה למצוא מאיפה להעתיק...

רוצה להיות מתכנת? תתחיל לכתוב את מה שאתה צריך או תעתיק מאיפה שהוא.

בינתיים אתה רק מחפש סיבות למה הבקרים לא טובים לך.

קישור לתוכן
שתף באתרים אחרים

אז תכתוב ספריית איוונטים. יש אין ספור כאלו ב-C++ שאתה יכול להסתמך עליהם.

האמת לא חשבתי שזה יהיה אפשרי בכלל..

אחפש על זה בגוגל, נראה מה יצא..

תודה

קישור לתוכן
שתף באתרים אחרים

האמת לא חשבתי שזה יהיה אפשרי בכלל..

אחפש על זה בגוגל, נראה מה יצא..

תודה

חפש מידע בנושא Design Patterns ,ספציפית על Observer.

ואני בהחלט מסכים איתך, אין שום סיבה שלא תהיה סביבת Object Oriented אמיתית במחיר סביר. זה הכל הרי פונקציה של הקומפיילר, הרי לא חייב להיות Framework מתחת.

משער שזה נובע מכך שאין דרישה ממשית לכך בשוק היות וזו נישה עם תפיסה יחסית מיושנת.

קישור לתוכן
שתף באתרים אחרים

אחרי מחשבה של כמה ימים בנושא,

המסקנה היא שהלוח עם הפיתוח הכי נוח בו, הוא בעצם Raspberry Pi.

אומנם זה לא מיקרו-בקר, אלא כבר מיקרו-מחשב,

ועדיין, המחיר המאד משתלם שלו - 35$,

+החומרה העשירה, כולל יציאה למסך, חיבורי , חיבור Ethernet, יציאת Sound אפילו, ועוד,

(וכל אלה בנוסף ל-GPIO)

והיכולת להריץ שם Executables מכל שפה שנוח לכם להשתמש בה בעצם, כולל NET. אפילו, בעזרת mono,

כל אלה, הופכים אותו למנצח.

ביום שישפרו את השפה שניתן לכתוב בה עבור עצמו, זה יהיה שיפור עצום.

שפה קצת יותר מלוטשת מאשר ++C של לפני 30-40 שנה.

אז בסדר, בלי Framework, אבל לפחות שלא נבזבז זמן על למצוא למה זה לא מתקמפל..

החלוקה שאני רואה, נכון להיום(אפריל 2013), היא כזו:

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

אבל אם אתם צריכים משהו שמתחבר לאינטרנט, או שמתחבר להתקן כלשהו, או שייתחבר למסך טוב,

יצא לכם ברוב המקרים יותר נוח, והרבה יותר משתלם, ללכת על .

למעשה,

מספיק שאתם שוקלים לקנות Shield כלשהו, שרובם נמכרים ב-20$ ויותר

(אני מדבר על השילדים הרציניים, כגון Wi-Fi, , Host, או חיבור לאנרדואיד ADK)

במקרה כזה, חבל על הכסף, ויותר חבל על הזמן פיתוח שלכם - לכו על .

גם תחסכו המון כסף, וגם תוכלו לכתוב בכל שפה שתרצו. לפי מה שנוח לכם :)

במיוחד בשפות חדשות יותר, כגון #C, ג'אווה, Python, וכו'.

קישור לתוכן
שתף באתרים אחרים

אחרי מחשבה של כמה ימים בנושא,

המסקנה היא שהלוח עם הפיתוח הכי נוח בו, הוא בעצם Raspberry Pi.

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

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

קישור לתוכן
שתף באתרים אחרים

אתה מפספס את הייעוד של מיקרובקרים שזה ה Real Time.

מכשירי אנדרואיד ומחשבים מבוססי כמו ה RPI הם לא מערכות זמן אמת.

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

כנ"ל לגבי יישומי בקרה, מתכננים מערכות בקרה לפי תדר מסויים וצריך שהוא יהיה קבוע. מחשב שמריץ לינוקס לא יכול לתת לך את הדיוק הזה.

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

יש בקרי לדים שדורשים קבלת סיגנל בתזמון של ננו-שניות, עם אין לך סיכוי לקבל דיוק כזה. גם עם צריך לעבוד קשה כדי לקבל קוד יעיל שיכול להריץ עוד דברים תוך כדי ובפועל כותבים באסמבלר כדי לייעל דברים. שפות כמו .NET פשוט לא מתאימות בעליל לדברים כאלו.

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

קישור לתוכן
שתף באתרים אחרים

הי wombat

אבל זה בדיוק העניין..

מי שמשתמש במיקרו-בקרים בעבודה שלו,

כנראה שצריך באמת מיקרו-בקרים.

אבל אנשים שמשתמשים בזה בתור תחביב, ברוב הפרוקטים שלהם לא צריכים את ה-real-time,

ומה שהם כן צריכים את זה השליטה והבקרה..

כמו שאתה אומר, הכל תלוי מה אתה צריך..

קישור לתוכן
שתף באתרים אחרים

הי wombat

אבל זה בדיוק העניין..

מי שמשתמש במיקרו-בקרים בעבודה שלו,

כנראה שצריך באמת מיקרו-בקרים.

אבל אנשים שמשתמשים בזה בתור תחביב, ברוב הפרוקטים שלהם לא צריכים את ה-real-time,

ומה שהם כן צריכים את זה השליטה והבקרה..

כמו שאתה אומר, הכל תלוי מה אתה צריך..

מה אתה צריך? שמישהו יכתוב לך JVM על פלטפורמה עם 8 ק"ב ו-16 מגה-הרץועוד בזול כדי שתוכל להוציא להוציא 1 לוגי על רגל עם 50 שורות קוד במקום 60?

קישור לתוכן
שתף באתרים אחרים

ארכיון

דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.


×
  • צור חדש...