leluoch

هل ال C المناسبة لل embeded system ؟

13 ردود في هذا الموضوع

مرحبا بكم وشكرا لكم على هذا العالم المليئ بالمبدعين والافكار الرائعة...

اريد الدخول الى البرمجة من اوسع ابوابها ,, ما استهدفه هو التحكم الكامل من خلال المايكرو كمبيوتر (intel x86 , ARM) والبناء من الصفر ,, سواء لينكس او ويندوز ولكنني افضل لينكس ويونكس ,, ما الافضل ؟؟

واتمنى ان تكون لدي القدرات للتحكم من خلال Bluetooth , WiFI , GSM , etc , sensors و الربط بالذكاء الاصطناعي الاوتوماتيكي , تماما كما في السيارات , على سبيل المثال:

التحكم بمنزلي من خلال هاتفي الاندرويد ... مثال اخر : التحكم بروبوت من خلال ال wif gsm bluetooth عن طريق زرع المايكرو كمبيوتر بداخله .....

سؤالي ماهي اللغة المناسبة للبداية وما المفروض تعلمه , ارجو رسم الطريق الصحيح امامي وشكرا

تم تعديل بواسطه leluoch
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

ال c مناسبة جدا فى برمجة ال embedded system وهى اللغة المنتشرة غالبا كلغة عاليا المستوى فمن الأرجح ان تجد c compiler لمعظم الماركات المشهورة لكن من السعب ان تجد مثلا كمباير للبيسيك

1

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

إذا كنت تسأل عن برمجة الـ Microcontroller نفسه

فافضل شيء هي لغة التجميع Assembly للحصول على أعلى كفاءة ممكنة

فإن لم يكن فليس هناك فرق بين أي لغة و أخرى، العبرة

باللغة التي تؤدي لك غرضك و تستطيع التعامل معها بكفاءة

و السبب أن الترجمة تختلف من شركة لأخرى حتى و إن كانت

اللغة واحدة، الترجمة تخلف و حجم الذاكرة الذي قد يشغله برنامج

مكتوب بالسي مثلاً باستخدام مترجمين لشركتين مختلفتين قد يختلف،

ستجد أيضاً أن المترجمين قد يتيحان خواص و مفاهيم برمجية مختلفة و متباينة بالرغم من أن اللغة

المستخدمة واحدة .. رأي الشخصي في مجال برمجة الـ Microcontroller

أن تقترب أكثر من بنية المتحكم نفسه و تفهمها و تفهم كيفية عمل كل وحدة يحتوي

عليها لكي تقوم باستخدامها، بعدها سيمكنك الوصل لما تريده بأي لغة أياً كانت.

أما إن كنت تقصد البرمجة على ويندوز مثلاً أو لينوكس للربط مع نظام مدمج مبني بالـ Microcontroller

فأعتقد أنه نعم السي تعتبر أقوى اللغات للتعامع مع عتاد الجهاز لكي تصل إلى نظامك المدمج.

و إن كان بالإمكان استخدام لغات أخرى لتأدية الغرض بكفاءة عالية مثل C# و Java و يمكن أيضاً VB.Net

تم تعديل بواسطه COMFORT
1

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

شكرا لكم . اعتذر عن التأخر في الرد بسبب الاوضاع الحالية في سوريا ,,,

نعم انا اريد تحكم كامل وحتى بالمايكروكونترولا وكما نعلم ان بيئة ARM هي بالاصل Microcontroller .. الاضافة الى التحكم بها عن بعد وربطها ب اي منفذ والتحكم بها عن طريق النظام المدمج مثال القدرة على التحكم بمثل هذه اللوحات :

http://www.armkits.com/product/devkit8500d.asp

ارجوا دعمي ببعض الروابط وشكرا لكم

تم تعديل بواسطه leluoch
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

نصحية لو جة الله

استخدم لغات برمجة عالية المستوي مثل جافا وسي# او سي++ فى برمجة النظم المدمجة حتى تحقق الانتاجية

بمرور الوقت فان الخبرة وعامل الكفاءة سوف تحتم عليك استخدام لفة السي ثم الاسمبلي فى برمجة النظم المدمجة

وفقني الله واياك لخدمة بلادنا

1

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

عندما تدمن اللغات الموجه للكائنات مثل جافا وسي شارب يكون من الصعب عليك التعامل مع لغه مثل السي، ولكن الحق يقال ان لغة سي هي اللغه الامثل والافضل اذا كنت تريد التطوير لمثل هذه الانظمة ،

خصوصا برمجة ميكروكنترولرات مثل PIC اما بالنسبة لميكرو كنترولرات مثل اتميل Atmel فإن عليك استخدام لغه اشبه بالاسمبلي

اذا كنت تريد التطوير بالسي شارب او لغات عالية المستوى فعليك باستخدام Arduino, NetDuino, Gadgeter

تحياتي

1

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

حسب بحثي الطويل , ساختار لغة السي , لانها تتعامل بكل بساطة وسهولة مع Arduino - Waspmote وبعد الخبرة سانتقل الى لغة اخرى كال جافا واتعلم الربط ب Maltab

هنالك العديد من الاسئلة التي تدور في ذهني ولكن كل ما اريده هو فهم مبدا العمل بشكل مفصل وبسيط , و اجد انني اصل الى هذه المرحلة ,,

اتمنى يوجد قسم مخصص للاردينو في هذا المنتدى . لتطبيق بعض المشاريع البسيطة التي تساعدنا للارتقاء نحو الافضل

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

نصحية لو جة الله

استخدم لغات برمجة عالية المستوي مثل جافا وسي# او سي++ فى برمجة النظم المدمجة حتى تحقق الانتاجية

بمرور الوقت فان الخبرة وعامل الكفاءة سوف تحتم عليك استخدام لفة السي ثم الاسمبلي فى برمجة النظم المدمجة

وفقني الله واياك لخدمة بلادنا

يا ترى إلى أي حد يعتبر عامل الكفاءة مهم في هذه التطبيقات ؟

المتحكم الدقيق يقضي معظم وقته ينتظر شيئ ما يحدث عوضا عن انشغاله بمعالجة كمية كبيرة من التعليمات . صح ؟

1

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

NI LabVIEW Interface for Arduino Toolkit

http://sine.ni.com/nips/cds/view/p/lang/en/nid/209835

Getting Started With the LabVIEW Interface for Arduino

http://vishots.com/getting-started-with-the-labview-interface-for-arduino/

أستحصال المعطيات باستخدام NI LabVIEW Interface for Arduino Toolkit

http://www.dbaasco.com/vb/showthread.php?t=6399

أرجو أن يكون هذا الدعم مناسباً

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

السلام عليكم و رحمة الله و بركاته

عملت على النظم المدمجة، و البرمجة فيها ممتعة نظرا لضرورة الحرص على جودة الكود و حسن سيره.

البرمجة كانت بلغة السي (ANSI C) و كان من الضروري مراقبة الذاكرة المحجوزة لأن البرنامج يعمل في حلقة لا متناهية و بمرور الوقت يمكن أن يكون تراكم الذاكرة المحجوزة سببا في فشل البرنامج.

البرمجة كان على نظام اللينوكس و كان النظام التشغيل الذي يتم تنصيب البرنامج فيه هو LynxOS

لمراقبة الذاكرة إستخدمة الأداة Valgrind

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

شكرا على المراجع

لاحظت ان الاسمبلي مهمة جدا لتحيلل وفهم عمل الدارة الالكترونية المتكاملة ,, هل يجب ان ابدء بها ؟؟ وثم انتقل الى ال c ؟ هل ساستفيد من هذه الخطوة ؟

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

شكرا على المراجع

لاحظت ان الاسمبلي مهمة جدا لتحيلل وفهم عمل الدارة الالكترونية المتكاملة ,, هل يجب ان ابدء بها ؟؟ وثم انتقل الى ال c ؟ هل ساستفيد من هذه الخطوة ؟

ليست الفكرة بالتعلم وإنما في الحفاظ على العلم وهذا عن تجربة شخصية من خلال متحكمات PIC منذ حوالي عشر سنوات لم تكن اللغات عالية المستوى منتشرة الى هذا الحد على الأقل في البلاد العربية

يفيد استخدام الأسمبلي الى استغلال موارد المتحكم بشكل جيد ولكن هذا الأستغلال أراه غير مجدي إذا كان على حساب الزمن مع تطور إمكانيات المتحكمات بشكل كبير جداً

ومع ذلك هناك Compilers تدعم استخدام الأسمبلي ضمن لغاتها الخاصة

ممكن ان تتعلمها ولكن ستنساها بعد فترة قصيرة جداً وبالتالي ستعود للمرجع الخاص بالمتحكم لكي تدخل بعض التعليمات وهذا نادر

الخلاصة اقتحم عالم C أو أي لغة أخرى

علماً أن Text languages أصبحت بمثابة اسمبلي مقارنة بـــ graphical programming languages بالنسبة لتوفير الزمن وبالتالي التطوير وبالتالي المنافسة (رأي شخصي )

تم تعديل بواسطه tell me
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

ليست الفكرة بالتعلم وإنما في الحفاظ على العلم وهذا عن تجربة شخصية من خلال متحكمات PIC منذ حوالي عشر سنوات لم تكن اللغات عالية المستوى منتشرة الى هذا الحد على الأقل في البلاد العربية

يفيد استخدام الأسمبلي الى استغلال موارد المتحكم بشكل جيد ولكن هذا الأستغلال أراه غير مجدي إذا كان على حساب الزمن مع تطور إمكانيات المتحكمات بشكل كبير جداً

ومع ذلك هناك Compilers تدعم استخدام الأسمبلي ضمن لغاتها الخاصة

ممكن ان تتعلمها ولكن ستنساها بعد فترة قصيرة جداً وبالتالي ستعود للمرجع الخاص بالمتحكم لكي تدخل بعض التعليمات وهذا نادر

الخلاصة اقتحم عالم C أو أي لغة أخرى

علماً أن Text languages أصبحت بمثابة اسمبلي مقارنة بـــ graphical programming languages بالنسبة لتوفير الزمن وبالتالي التطوير وبالتالي المنافسة (رأي شخصي )

اتفق مع كلامك , فقط ساطلع على الاسمبلي وثم سابحر في عالم C ,

شكرا لكم جميعا

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

  • يستعرض القسم حالياً   0 members

    لا يوجد أعضاء مسجلين يشاهدون هذه الصفحة .