|
تعلمو تعلمو

آخر الأخبار

8/randompost
جاري التحميل ...
8/randompost

كل مايخص مجال الأنظمة المدمجة Embedded systems

شاع مجال الامبيديد سيستم بين مهندسي هندسة الاتصالات Communication engineering وهندسة نظم التحكم والحاسبات Systems & computer engineering بسبب متعته نظرياً والراتب المحترم للمتخرج الحديث Fresh graduate  حيث في الشركات المتقدمة يبدأ الراتب من 10 الاف جنيه مصري لحديث العمل بها وتعلو عن ذلك حسب كل شركة ، أهلاً بكم في المقال الشامل حول هذا المجال والذي سننقل فيه ماقاله المهندسون حول هذا المجال ، أهلاً بكم في موقع تعلمو



سيضم هذا الموضوع الفقرات التالية (بالضغط علي أي فقرة ستتجه إليها مباشرة ) :




ماهي الأنظمة المدمجة Embedded systems؟
بشكل مختصر : هو نظام يؤدي مهمة معينة يعني عبارة عن ان انت معاك متحكم controller ، المهم المتحكم دا بتكتب كود برمجي عشان يتنفذ عليه ويخليه يؤدي وظيفة معينة (بتنقل الكود من الكمبيوتر للمتحكم عن طريق حاجة اسمها Burner ) ، يعني مثلاً انت بتكتب كود لميكروكنترولر هيتحط جوا موبايل ، فالكود بيقول للميكروكنترولر ان اول مرة المستخدم يفتح الموبايل في حياته خليه يعمل كلمة سر ، وبعد كده متعمللهوش الخطوة دي وخليه اما يفتح الموبايل يظهرله انه يدخل كلمة السر السابقة علي طول.

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

يعني نقدر نقول كمبيوتر صغير متنفذ عليه كود سوفت وير بحيث يخليه يؤدي مهمة معينة او عدد من المهمات المعينة ، بس فيه فرق بين الكمبيوتر العادي والنظام المدمج ان الكمبيوتر بيمكن المستخدم يعمل اي حاجة انما النظام المدمج هو حاجة متبرمجة انها تقوم بمهمة محددة او عدد من المهمات المحددة ، بس خللي بالك النظام اللي انت بتعمله دا اسمه نظام مدمج(Embedded) ، لانه عادة مبيكنش مرئي قدامك لانك بعد مابتبرمج عليه الكود بتحطه جوا منتج ، زي مثلاً النظام اللي في الغسالة او التكييف وهكذا.


يتحدث المهندس اسلام شريف المهندس بشركة ejad عن ماهية الإمبيديد سيستم  :-
المجال نفسه اسمه embedded systems engineering او هندسة النظم المدمجة.
يعنى ايه نظم مدمجة ؟
هي ببساطة :
1) معالج بيتفذ عليه برنامج محدد(كود سوفت وير انت بتكتبه بيخلي المعالج يؤدي وظيفة معينة)، المعالج ده بيكون micro controller او micro processor
2) النظام دى بيؤدى دور محدد ثابت ما بيتغيرش
3) بتدمج النظام دا جوا نظم تانية اكبر عادة النظم الاكبر دى بتكون تجميع نظم ميكانيكية و دوائر كهربية.


امثلة:
1- فى العربيات: العربيات من المجالات اللى بتعتمد على النظم المدمجة بكثافة دلوقتى تقريبا العربية ال high end بيكون فيها فوق ال100 processor و +40% من مكونات العربية بقيت كود دلوقتى من اول نظام ال ABS للفرامل او تحديد بيبان العربية مفتوحة او الناس لابسة حزام الامان ولا لا مثلا لحد اما نوصل لself driving cars ( حطوا هنا * علشان مش pure embedded) حتى حاجات بسيطة زى الsteering wheel lock اللى لما بتلف الدريكسيون بيقفل على مكانه.

2- فى صناعة الاتصالات على ما اظن ناس هتتكلم عليها بالتفصيل بس ال base stations بيكون فيها شغل embedded كتير جدا بس انا مش احسن حد يتكلم عليه علشان مش فاهمه.

3- فى النظم الطبية زى قياس ضربات القلب او مستوى السكر لحد اما نوصل لنظم الاعاشة الصناعية و هكذا.
دى امثلة للنظم المدمجة فى المجالات اللى الشركات فى مصر شغالة فيها تعالوا نتكلم عن الموضوع بالتفصيل شوية


الموضوع بيكون مقسوم جزئين
1- embedded hardware development: انك باختصار بتصمم الدايرة الكهربية بتاعت النظام المدمج زى قيم المقاومات او المكثفات او حساب الضوضاء على المكونات بتاعتك و ده تقريبا مش موجود فى مصر او نادر جدا على الاقل.
2- embedded software development: و ده انك بتصمم البرنامج وتكتب الكود اللى بيتنفذ على الهاردوير اللى اتعمل فوق ، كل الشركات فى مصر شغالة فى الشق ده على حسب علمى.
البرامج هنا بتكون معقدة بشكل كبير علشان بتتعامل على ليفيل الهاردوير مباشرة فا مافيش اى نوع من انواع الabstraction ما بينك و ما بين الهاردوير دى ناحية الناحية التانية ان فعلا البرامج نفسها بقيت بتزيد فى التعقيد بتاعها. مثلا زمان كان المطلوب شغل تحكم فى مواتير و كومبريسورز و اضائة مثلا دلوقتى بنتكلم فى computer vision و electrical engine مثلا فى مجال العربيات.

الكتابة هنا بتكون C و نادرا بتكون C++ و فى محاولات ان الناس تستخدم الjava بس فاشلة حتى الان على حسب علمى. ميزة ال C هنا هيا انها بتديك امكانية انك تتحكم فى الهاردوير بتاعك بشكل ممتاز بالذات فى الحتة بتاعت ال memory management.
فا ال C جزء اساسى من شغلك لا غنى عنه. تتعلم C منين لو مش عارفه:

لو بتحب الكتب الكتاب ده ممتاز على حسب تجربتى حمله من هنا

لو بتحب الفيديوهات
ده شكله كويس و ان كنت ما جربتوش بنفسى الصراحة ( الرابط من هنا )
لو عايز تاخد كورس فى مكانين مشهورين
جايز يكون فى اماكن تانية بس انا مش عارف غير دول ، وان كنت انا بفضل ان الواحد يعلم نفسه بنفسه علشان ده من اهم الحاجات اللى كده كده لازم الواحد يكون بيعرف يعملها فى شغله او حياته بصفة عامة.
حاجة تانية مهمة برضه هيا الcomputer architecture ازاى البروسيسور بينفذ البرنامج اللى عليه و ايه مكونات البروسيور نفسه و هكذا و دول كورسات الكلية بتاعت تانية و تالتة كانت مناسبة بشكل كبير فى ماتيريال تانية بس كا بداية مش مهمة اوى فا كورسات الكلية كفاية فى المرحلة دى فا حاول تركز فيها و تستوعبها كويس.
نسبيا الSW Engineering مهم بس مالوش ماتيريال كويسة انا اعرفها و المادة اللى فى الكلية كانت محبطة بالنسبالى فا انا مش هاقدر اقول مصدر مفيد هنا للموضوع ده.
اهم من الكلام اللى فوق ده كله انك تشتغل بايدك عن تجربة مش هتفهم الحاجة ولا هتبدا تحس بالمفاهيم اللى بتتعلمها غير لما تجرب تعمل حاجة بايدك فعلا (و تفشل فيها عادة يعنى  فا تبدا تجمع المفاهيم دى بتاثر ازاى و هكذا)
فى مشاريع كتير موجودة على النت ممكن تحاول تعملها زى دول مثلا
http://www.electronicshub.org/top-pic-microcontroller-proj…/
كنصيحة اخيرة ابعد عن arduino على الاقل فى الاول arduino platform ممتازة و فيها كمية مشاريع و support مش طبيعى فا الحاجات بتحطها مع بعض بتلاقيها بتشتغل
دى نظريا هيا حاجة كويسة بس فى المقابل انت مش هتكون فاهم هيا شغالة ازاى
اكتر من حد بيجى لما تيجى تساله عملت مشاريع ايه يقول مشاريع ممتازة و كبيرة جدا بس لما تيجى تساله على التفاصيل الحاجتين دول بيكلموا بعض ازاى فعلا او ايه الفرق بين ده و ده مش هيعرف يجاوبك علشان ما احتجش يدخل فى التفاصيل دى فا نصيحتى ما تبداش بيه خالص ممكن فى الاخر لما تبدا تفهم الدنيا و تلم الليلة تبدا تشتغل بيه علشان تقلل الوقت اللى محتاجه فى مشروعك مقلا.
ده هوا رايى انا الشخصى فى ناس بتقول عكسه زى Belal Shehab
و ده رايه
"انا مختلف شوية في حتة الاردوينو دي
اه طبعا الاردوينو دا حاجه بتاعت اطفال ومالهاش علاقة بالشغل
بس عن تجربة لما تتعمل اردوينو الاول وبعدين تبدأ تنقل ل avr or pic (أنواع من الميكروكنترولرز) مثلا الموضوع بيكون اسهل بكتير .. لانه عالاقل بئا عنده شوية concepts زي ال gpio, communication protocols, analog vs digital .. etc
وبردو لما تتعلم حاجه زي avr or pic وبعدين تبدأ تنقل على architecture معقد اكتر زي ال arm ( ودا اللي موجود في الشغل الحقيقي ) بيكون افضل بكتير من انك تبدأ بيه"


أشياء مهمة يجب فعلها لدارسي الأنظمة المدمجة

1- الإشتراك في جروبات الإمبيديد سيستم علي فيس بوك
قم بالإشتراك في جروبات الأنظمة المدمجة علي الفيس بوك لتتعرف علي جو الأسئلة، وعندما تكون في فراغ علي فيس بوك ربما تحقق استفادة ، لا يخفي عليك أنه عليك أنه لمعرفة الجروبات التي تخدم المجال، تقم بالبحث في الفيس بوك عن Embedded system ، ثم قم باختيار Groups كما بالصورة وقم بالانضمام للجروبات ، ستري أن أغلب هذه الجروبات تخدم الدبلومات المجانية والمدفوعة لدراسة المجال ، لكن الفائدة منها تظهر في المناقشات وايضا يمكنك الحصول علي افكار لمواضيع من خلال محتوي الدبلومات

جروبات الامبيديد سيستم

هل الدبلومات المجانية فعالة ؟
في البداية تلك الدبلومات لا يمكن الحكم عليها بشكل عام لأنها تختلف باختلاف من يدرس فيها، فبعض المدرسين محتواهم جيد والبعض الآخر الاستماع له مضيعة للوقت ، لذلك يجب عليك السؤال عن أي مدرب في هذا المجال قبل التجربة معه.

2- التعرف علي المتطلبات الرئيسية لشركات الإمبيديد في بلدك والتزود بها
اختص هذا الموضوع بفقرة عن شركات الإمبيديد في مصر ، يمكنك الرجوع إليها ، ثم البحث عن أسامي تلك الشركات علي فيس بوك للدخول لصفحاتها، وأيضا كتابة اسم الشركة علي جوجل وفيس بوك مع كلمة للتوظيف مثل البحث عن (Mentor graphic is hiring in egypt)
فمن خلال النتائج ستتعرف علي المطالب الئيسية للشركة والمتكررة منها لمهندس الإمبيديد في بلدك

فستري في بنود التوظيف لبعض الشركات Python is plus ، مما يعني أن دراستك للغة بايثون ستكون مميزة لك وزيادة في فرص القبول عن غيرك ممن يتفق معاك في جميع البنود الأخري 

ومن البنود التي تشترك في أغلب الشركات عند الإعلان عن وظيفة 
(Good written and verbal communication skills) أي توفر مهارات تواصل شفهية وكتابية 

لكن بخصوص تلك النقطة يجب عليك ملاحظة ان بعض شركات الإمبيديد في مصر ربما تعمل في مجال اخر أيضا ، لذا يجب التأكد أن الوظيفة التي تتصفحها لتلك الشركة هي خاصة بمهندسي الأنظمة المدمجة.

3- التزود بمهارة إيجاد الشروحات عند دراسة المجال
نفترض أنك تابعت أحد الشروحات الموثوقة من مهندسي المجال ، أو أنك في دراسة لدبلومة تشرح المجال ، وعند دراسة درس معين شعرت بعدم الفهم لهذا الدرس ، هنا تبدأ علي يوتيوب بكتابة إسم الدرس بالإنجليزية والعربية وأنصحك بالمحتوي الأجنبي ، وفي حال لم تستطع فهم الشرح الأجنبي يمكنك تشغيل English subtitle في يوتيوب ، لتتعلم ماتريد ومنها تتعلم اللغة المفيدة جداً في المجال.

يذكر أن علامة subtitle تظهر علي شكل حرفي cc عند تصفح الفيديو من الكمبيوتر ، أما من الهاتف فعند تشغيل فيديو اليوتيوب تظهر ثلاث نقاط فوق بعضها ، بالضغط عليها ستري خيارات منها Captions ، ستضغط عليه ثم تختار English

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

4- إتقان اللغة الإنجليزية ودراسة الأسئلة الشائعة من الHr في المقابلة Interview
يجب أن لايخفي عليك عزيزي القارئ أن الجانب التقني ومعرفتك بمجالك يشكل نسبة صغيرة لقبولك بالنسبة لقدرتك علي تحدث اللغة الإنجليزية بطلاقة وكذلك القدرة علي التجاوب وعدم الخوف أثناء الإنترفيو ، فالخوف لن يكون ضار إلا لك ، هو يحاول أن يربكك ليري ردة فعلك ، قم بالبحث علي جوجل عن أسئلة IQ وأيضاً أسئلة Hr وأيضاً عن الأسئلة الشائعة في الإنترفيو وحاول أن تتزود بها

5- البحث عن أسئلة الإنترفيو الخاصة بالمجال قبل الذهاب للمقابلة
فمثلاً بكتابتك علي جوجل Embedded system interview questions ، وتغيير الكلمات أثناء البحث لتؤدي نفس المعني لتحصل علي اطمئنان وثقة نسبية قبل حضور المقابلة

قم بدعم إدارة الموقع من خلال الإشتراك علي يوتيوب


ماهو RTOS وعلاقته بالإمبيديد
RTOS اختصار لReal time operating system ، يعني نظام تشغيل هحتاجه عشان يقوم بمهام انا عايزها،ولا يخفي قيمة نظام التشغيل في الكمبيوتر في ادارة المهام ، وكذلك يستخدم في الأنظمة المدمجة فنفترض انك تحتاج لنظام هاتف يستقبل المكاملة ثم يحولها إلي صوت ، كذلك يرسل صوتك ويحوله إلي إشارة، وذلك في نفس الوقت ، نعم نظام التشغيل هو مايقوم بالتحكم في هذه المهام لتنفذ بدون تأخير  ، إذاً فالنظام المدمج هو عبارة عن هاردوير مع سوفت وير مع نظام تشغيل يدير تنفيذ المهام بدون تأخير، فتزداد أهمية نظام التشغيل عند الاحتياج لتنفيذ مهام في وقت دقيق بدون تأخير او توقف.


ماهو الإمبيديد سي Embedded c وأهميته
يستخدم في المايكروكنترولر Micro controller كقواعد لترتيب الاكواد المكتوبة بلغة الc وجعلها تستهلك مساحة أقل وو ، فبالطبع لدراسة الامبيديد c تحتاج لتعلم لغة c بشكل جيد أولاً.

ماهي لغة الاسيمبلي وهل هي ضرورية في الأنظمة المدمجة
لغة الاسيمبلي هي لغة منخفضة المستوي تتعامل بشكل مباشر مع الهاردوير ، فمنذ زمن كانت برمجة الكمبيوتر بلغة الآلة وهي اصفار ووحايد ، تدل لغة الالة علي تعليمات معينة من خلال ترتيب الاصفار والوحايد داخل البايت او الاكثر من بايت ، إلي أن جاءت لغة الAssembly التي تستخدم كلمات تدل علي العملية التي تقوم بها مثل ADD,MOV ، وذلك بدلاً من الاصفار والوحايد ثم عن طريق Assembler يتم تحويل هذه اللغة للغة الآلة ، لكن لغة مثل لغة الC للغة الآلة ، في الملخص : تتحول الاكواد المكتوبة بها للغة اسيمبلي ثم تتحول اسيمبلي علي طريق Assembler للغة الآلة

لازم تبقا عارف ان كل بروسيسر بيكون ليه لغة اسيمبلي خاصة بيه (لاحظت حاجة ؟)
لاحظ هنا فائدة عظيمة للكتابة بلغة زي لغة الc وليس بلغة Assembly مباشرة لانك اما بتكتب كود الc بتدوس compile عن طريق الكومبايلر الخاص بنوع بروسيسر معين ، عشان يقوم الكومبايلر يحول لغة الc للغة اسيمبلي مناسبة للبروسيسر ثم من الاسيمبلي للغة الآلة ، طب لو عايز تكتب كود لبروسيسر من نوع تاني وانت بتكتب اسيمبلي هتكتب كود مختلف خالص ، لكن في الc بتكتب نفس الكود وبس بتعمل الcompilation علي النوع التاني من البروسيسر

مش بتحتاج اسيمبلي في الإمبيديد إلا لو بتعمل تطبيق محتاج سرعة تنفيذ الكود عالية فيه وحرجة زي تطبيقات الصواريخ ، علي الجانب الاخر on the other hand فيه وظائف بيأديها البروسيسر ملهاش اوامر في لغة الc ، بتحتاج لاوامر اسيمبلي مباشرة

لكن الحالتين اللي فاتو نادرين جداً والشغل في الشركات بيكون بلغة الc وليس الاسيمبلي ، لكنك محتاج يكون عندك فكرة عن لغة الاسيمبلي بخصوص الانظمة المدمجة.

الفرق بين مجال الأنظمة المدمجة والديجتال ديزاين نقلاً عن المهندس مصطفي عيسوي :

توضيحا لنقطة كتير من الناس بتفهمها غلط .. خلي بالك ان تخصص ال embedded systems حاجة وال digital design حاجة تانية خالص.. لازم تحدد انت عاوز تكمل في ايه وتركز فيه واي حاجة تانية تبقي معلومات عامة او تتعلمها بعدين لما تتقن اللي انت مقرر انه يبقي تخصصك الاصلي.


ببساطة ال embedded systems هو مجال انت فيه بيبقى عندك مشكلة انت عاوز تعمل ليها system يعمل عليها control باستخدام مكونات جاهزة وموجودة وما عليك إلا انك تختار المكونات دي بالامكانيات المطلوبة لحل المشكلة وبتجمعها في system متكامل يحل المشكلة دي .. مثال على كدة: كل أنواع الروبوت .. الروبوت بيبقى عبارة عن شوية actuators بتحرك الروبوت و sensors بتفهم البيئة المحيطة بالروبوت سواء كاميرات او ultrasonic sensors كمثال .. بالإضافة لكدة بيبقى فيه microcontroller بيتم اختياره بالامكانيات المناسبة بينظم عمل ال system ده وبياخد قرايات ال sensors وبيتحكم في ال actuators بالطريقة المناسبة اللي تخلي الروبوت يشتغل زي ما هو مطلوب منه.
أما ال digital design فده هو انك تعمل design لدواير إلكترونية digital يعني كل مكوناتها في النهاية عبارة عن logic gates .. مثال على كدة: انك تعمل تصميم ال microcontroller نفسه اللي مهندس ال embedded systems هيستخدمه في الروبوت اللي فوق ده  .. و فيه طبعا دواير digital كتير تانية ليها تطبيقات كتير غير ال microcontrollers .. ماعلينا .. نخش في المهم 

سوق عمل الامبيديد نقلاً عن المهندس اسلام شريف 
البوست التانى بيتكلم عن سوق شغل الايمبيديد فى مصر على حسب علمى فى 3 مجالات للشغل هنا
1) Automotive
2) Communications
3) VLSI (الاسم مش دقيق اوى)
ايه هو Automotive:
ببساطة انت بتعمل نظم هتستخدم فى صناعة العربيات فشغلك كله فى العادى بيكون مع عملاء بره مصر (اوروبا وتحديداً المانيا فى النقطة دى)
العربية بيكون فيها embedded systems كتير اوى كل واحد منها بيتسمى فى السوق ECU او Electronic control unit فا هتلاقى ECU للتكييف و ECU للengine control و هكذا.

فى standard اسمه AUTOSAR ده هدفه ان هوا يقسم البرنامج بتاعك ل layers علشان يقلل تكاليف الR&D و يسمح بانك تستخدم حاجات جاهزة مباشرة بدل ما تقعد تعمل كل حاجة من الاول فا هتلاقى communication stack و nvm stack و wdg stack و هكذا
فى شركات متخصصة ان هيا تعمل AUTOSAR stacks بس و تبيعه للشركات اللى بتعمل نظم للشركات المصنعة
فى اربع شركات فى المجال ده فى مصر و كلهم محتاجين مهندسين باعداد كبيرة بس مش لاقين.
هارتبهم على حسب حجمهم من حيث عدد المهندسين فيهم فى الوقت الحالى

1) Valeo:
هيا شركة فرنسية اصلا شغالة فى الهاردوير و السوفت وير يعنى تيجى شركة زى renault مثلا تقولها ان هيا عايزة تكيف للعربية الجديدة بتاعتها ف valeo تصمم النظم الميكانيكية و الكهربية و تعمل النظم المدمجة بتاعتها.


السايت هنا فى مصر شغال سوفت وير بس فى تيمز كتير هناك منهم شغال testing و منهم شغال development و تيم شغال safety analysis و tooling بس انا مش عارف الstructure هناك بالضبط فا مش هاتكلم عليه

شغل الtesting زى ما هوا واضح من اسمه انك بيجيلك الECU و requirements و انت دورك انك تتاكد ان الECU بالبرنامج اللى عليها بيحققوا الrequirements دى.
الdevelopment بيجيلك requirements و دورك انك تكتب كود بيحقق ال requirements دى.
الsafety analysis دى موضوع تانى مختلف شوية انك هدفك تتاكد ان ال ECU و البرنامج اللى عليها
بmeet standard requirements علشان تاخد rating معين الشركات المصنعة بتشترط على ECUs معينة ان لازم الsafety rating بتاعها ما يقلش عن كذا.


ايه اهمية حاجة ى كده ؟ كا مثال بسيط الsteering wheel lock اللى اتكلمنا عليه قبل كده انك بعد اما تبطل العربية و تلف الدريكسيون تلاقيه عمل لوك فى مكانه. تخيل انك سايق فعلا و الدريكسيون عمل لوك فى مكانه فا علشان كده ECU زى دى لازم تاخد safety rating معين ما ينفع تقل عنه و قيس على كده كل حاجة ECU الفرامل الenginer control المساحات و هكذا
ال tooling هوا مش ايمبيديد خالص هوا ببساطة انك بتعمل desktop software علشان التيمز التانية تستخدمه انترنال.

2) Mentor graphics
هيا شركة امريكية اصلا بس siemens اشترتها مؤخرا على حسب علمى
هيا شغالة فى كذا مجال بس ال embedded division بتاعها شغال software بس
هما بيعملوا AUTOSAR stacks المفروض انك تستخدمها و انت بتعمل ECU فعلا يعنى
هما مش بيشتغلوا مع صناع العربيات مباشرة و انما بيشتغلوا مع الsuppliers بتوعهم شركة زى BMW مثلا تكلم valeo ان هيا عايزة ECU body control Autosar ف valeo تروح تشترى من mentor autosar stack و ان كان السيناريو ده مش واقعى بس يمشى كامثال يعنى 
الشغل هناك development و testing و porting على حد علمى
الporting انك بتاخد كود شغال على تارجت ARM مثلا ويبقى هدفك انك تخليه يشتغل على تارجت تانى زي power pc مثلا ده بيستدعى شوية تغيرات فى الكود و هكذا

3) Avelabs
هيا شركة ناشئة مصرية بدات فى 2012 ما عنديش علم بشغلهم بالضبط فا ممكن تقروا من على الويب سايت بتاعهم

4) eJad
هيا شركة ناشئة مصرية بدات فى 2014 و دى اللى انا شغال فيها و ممكن تقروا عنها من هنا
احنا من ضمن الحاجات اللى شغالين عليها حاجة مش مشروحة فوق و هيا DSP applications
ال dsp او ال digital signal processor هوا بيفرق عن البروسور العادى فى شوية اختلافات هيطول شرحها فا مش هاتكلم عليها بس هوا ببساطة بيستخدم فى الapplications اللى بتحتاج تعمل حسابات و تشتغل على ارقام عشرية كتير.

دى شركات ال Automotive بالنسبة للكومينيكيشين وبرضه هما محتاجين مهندسين كتير
الشركات دى انا معنديش خبرة كافية انى اتكلم عليها "بس الكوستمرز بتوعها بيتركزوا عادة فى امريكا" فهكتفى بذكر اسمائها و لو حد عنده معلومات عنها ممكن نضيفها لاحقا ان شاء الله (هما من غير ترتيب)

1- AXXCELERA
2- ATI SYSTEMS

- مجال ال VLSI ده على حسب علمى الفرص فيه مش كتير اوى علشان العدد اللى الشركات محتاجاه ما بيكونش كبير اوى يعنى
ببساطة شركات ال VLSI هيا شركات شغلها الاساسى هوا VLSI زى
1- Si-ware
2- SWIFTORNIX
دور الايمبيديد فين بقا ؟ هما بعد اما يعملوا الchip فعلا بيحتاجوا حد يكتب كود كا application note علشان لما يجوا يبيعوا ال chip الكود ده بيبقا كا sample لازاى استخدم ال chip دى و كده
دى معلوماتى عن الموضوع حقيقة لو حد حابب يضيف حاجة او يصلحلى معلومة غلط يكتب فى كومن او يقولى و انا هاعدلها ان شاء الله


---------------- نهاية الفقرة ------------
لاحظ أن العمل في المجال يعتمد علي التكويد تقريباً ، لكن وقت التعلم للمجال وللانترفيو يكون التعلم هاردوير وسوفت وير.

شركات الأنظمة المدمجة في مصر
نقتطف لكم ماقاله المهندس أحمد عبد المنعم حول ذلك :

بالنسبه للشركات فى مصر فده لينك فيه بتاع 17 شركه بتفاصيلهم



ودى pdf فيها تقريبا 57 شركه ايمبدد فى مصر بالايميلات بتاعتهم و ارقام تليفوناتهم



نقتطف لكم ماقاله المهندس أحمد عبد الغفار
بعض وليس كل شركات الامبيدد فى مصر :

Conative-labs - Maadi, Cairo
Simplex - Cairo
Si-Vision - Sheraton, Cairo
PaySky - New Cairo, Cairo
TTC Technologies - Heliopolis, Cairo
TIGRISNET - Nasr City, Al Manteqah Al Oula
PaySky - New Cairo City
Valeo - Cairo
Avelabs - Maadi, Cairo
Eseed - Cairo
ATI Systems - Cairo
Mogassam - Cairo
Elkrem, Inc. - Cairo
I2M - Cairo
Fawry Banking & Payment Technology Services - Giza
Mentor Graphics - Cairo
Garment IO - Giza, Al Omraneyah
Misr International Systems - Giza, Al Omraneyah

التقديم في شركة فاليو Valeo ، بقلم المهندس كريم أسامة

ازيكم يا شباب
بوست دا عن التقديم و امتحانات Valeo و اللي شوفته في ال Interviews
الحمدلله انا اتقبلت في PTS team في Valeo و اتقبلت في شركة Thirdwayv بردو في نفس الاسبوع الحمدلله 😁

اول حاجة : 
موضوع المدة ملهاش كتالوج 🤣 انا قدمت يوم ٢٢ اكتوبر خلصت بعتولي الامتحان بعدها باربع ايام اول ما خلصت الامتحان روحت عملت الانترفيوهات كلها في يوم واحد و يوم ١٥-١١ كان مبعوتلي ميل بالoffer ... في حالات تانية ممكن تطول عن ٣ شهور ، الفكرة يعني : لازم تبقي مستعد و مذاكر المعظم وانت بتقدم علي موقعهم متعتمدش أن لسه قدامك شهور.

تاني حاجة الأسئلة نفسها :
الامتحان الاونلاين مش سهل و مش مستحيل ... لو انت ذاكرت خلاص هتعدي خصوصا أن في الاخر انت يا اما عديت يا اما لا .. مش لازم تقفله و كان في اكتر من سؤال مش عارفه و عادي
الانترفيو سواء الاول أو التاني

كان الأسئلة ٩٠٪ منها عدت عليا قبل كدا خلال الدبلومة لأنها كانت علي مشروع الدبلومة و ال ١٠٪ الباقية هو متعمد يسالني في حاجة جديدة علشان يشوف Problem Solving skills ازاي "طبعا النسب و الأسئلة بتختلف علي حسب اللي بيسالك ، وال HR أسئلته الطبيعية بردو

اخر و اهم حاجة بقي :
 الكورس بعد توفيق ربنا ...كان السبب انني اتقبل في شركتين دبلومة طارق 💚
السؤال دا اتقالي في كل انترفيو ادخله "هو في كورس بيقول المعلومات دي؟"
الدبلومة كانت مغطية كل المواضيع اللي ممكن اتسأل فيها و من غير مبالغة، أسئلة انترفيو ١ و ٢ فاليو اللي قعدت ٣ ساعات كانت بتسال في ٣٠٪ بس من الدبلومة .. اساسيات و كدا
و اول حاجة ال HR قالتها ... مبروك انت عديت Technical و لو تعرف حد صاحبك نفس المستوى Technically هاتلنا ال CV بتاعته و بعد كدا بدأت الانترفيو
و من الحاجات اللي طمنت الواحد قبل الانترفيوهات دي ، كنت بخش عالنت و اجيب اسئلة انترفيو امبديد في شركة Bosch "رقم واحد علي مستوي العالم" و يلاقي أن الأسئلة معظمها عدت عليا قبل كدا
و كنت بلاقي مواقع جايبة اشهر ١٠٠ سؤال في C, Embedded Systems و اقراهم الاقي ٨٠ منهم عارفهم مثلا ...الحاجات دي كانت بتريح الواحد و تطمنه قبل ما يخش الانترفيو.


الخلاصة:
الدبلومة كويسة جدا انك تبدأ شغل في اي شركة ... هتلاقي كل حاجة في الMaterials و لو حاجة وقفت قدامك طارق نفسه بيكون موجود يساعدك لو سالته حتي لو بعد الدبلومة
كل المطلوب منك ،تذاكر اول باول و تعمل المشاريع باديك انت بس شد حيلك و اعمل اللي عليك و التوفيق دا من عند ربنا ... ظروف الكلية أو أنك شغال او في حاجة تانية مع الكورس ... دا بيبقي مجرد عذر ...انا كنت باخد الكورس في جيشي و لسه هخلص جيش كمان اسبوع .. يعني ايا كانت ظروفك هتعرف تذاكر الكورس و تشتغل بايدك و تتابع معاه خصوصا أن كل حاجة بتتقال في الدبلومة انت بتروح مش محتاج غير انك تشتغل بايدك بقي
جزاك الله خيرا يا Mohamed Tarek
و اتمني التوفيق للجميع و يكون البوست دا وضح الحاجات اللي كانت مجهولة بالنسبة ليا قبل ما أقدم و كنت محتاج اللي يوضحهالي 




مسارات تعلم موصي بها (من خمس مهندسين)

1- نقلاً عن المهندس محمد طارق 
My Recommendation steps to study Embedded Systems Programming
1. Basic Concepts of Embedded Systems
a) Introduction to Embedded Systems (My Slides)
صصصClick here
b) First Steps to Embedded Systems Book

2. C Programming Language
a) VTC Course

b) C How To Program Book and other tutorials

c) Useful Websites

3. Start Dealing with 8-bits micro-controllers like AVR
a) A breif introduction to AVR Microcontrollers prepared by me:
b) AVR Microcontrollers Course by VSLI Egypt 

c) Full AVR Microcontrollers Course newbiehack
d) Useful Websites

e) Mazidi textbook:

4. Real Time Operating System(RTOS)
First two chapters in this book:


My Full Embedded Diploma Contents

2- الحاجات اللي محتاج تتعلمها عشان تبقى مهندس embedded systems نقلاً عن المهندس مصطفي عيسوي:
1- اتقان البرمجة بال C زي مابتعرف تكتب اسمك.. ده يتضمن معرفة كل ال datatypes وبتستخدم ازاي وال size بتاعها في ال memory وازاي لو عندك variable من نوع معين تحوله لنوع تاني (تعمل له typecasting) من غير ماتحصل مشاكل أو تطلعلك data مش مفهومة أو بايظة .. أما ال pointers دي بالذات لازم تبقي بتعرف تلعب بيها لعب.. ولازم تعرف ال structures وال unions وتعرف تستخدمهم كويس.. لازم كمان تفهم كويس ال data qualifiers ومعانيها واستخداماتها (زي volatile و static و const... الخ) .. من الاخر لازم تبقي تنين مجنح في ال C .. ومقياس ده انك توصل لدرجة انك تبقى مدرك تماما ومتخيل البرنامج اللي انت كاتبه بال C ده ال compiler هايفهمه ازاي وهايتنفذ ازاي على ال processor .. يعني دماغك تبقى هي نفسها compiler في نفسها 


2- لازم تعرف الحاجات المهمة فيما يسمي بعلم ال data structures & algorithms .. علم ال data structures & algorithms هو علم بيدرس احسن techniques وصل لها الناس في البرمجة في حل مشكلات مشهورة و متكررة عشان الكود بتاعك يبقي efficient .. مثلا لو عندك array كبير وبتدور فيه علي data معينة ازاي تعمل ده في اقل وقت واقل استهلاك لل memory size .. وازاي مثلا تعمل Queue أو List ترتب فيه شوية data عندك بطريقة تسهل حل المشكلة .. فيه حاجات اساسية في العلم ده مهم جدا تبقي عارفها زي مثلا ال search algorithms وال sorting algorithms وال trees وال Queues وال Linked lists وال stacks علي سبيل المثال لا الحصر. لازم طبعا تبقى فاهم برمجة كويس عشان تبتدي تتعلم الكورس ده.

3- لازم تبقي عارف كويس ال digital communication protocols اللي بتستخدم للتواصل بين اجزاء اي embedded system (بين اتنين microcontrollers مثلا).. البروتوكولات دي زي ال serial او مايسمي UART (و هتلاقيه بيستخدم في standards كتير زي RS232 وال RS485 وال RS422 ومهم برضه تعرف الفروقات بينهم) ، كمان مهم تعرف ال SPI وال I2C وياريت نبذة مختصرة عن ال CAN وال TCP

4- لازم تبقي عندك خلفية electronics محترمة.. مش بقول تبقي تنين بس فيه اساسيات لازم تبقي عارفها زي استخدام ال BJT وال MOSFET وتركيبة ال motor driver circuit واستخدامها.. ولازم تعرف تفهم ال datasheet بتاع أي electronic component وتعرف تطلع ال ratings بتاعته وتاخد بالك منها زي مثلا بيسحب current أد ايه و بيشتغل بفولت كام وهكذا .. كمان تبقي عارف ال crystal ايه لازمتها في دايرة ال microcontroller الخ

5- لازم تبقي فاهم computer architecture و microcontrollers ودول مادتين هاتاخدهم في الكلية .. بمعني تبقي فاهم ال microcontroller ايه هي اجزاءه ووظايف كل جزء (زي ال ADC وال DAC وال timers وال counters وال watchdog) وازاي البرنامج اللي انت كاتبه بيتحول ل instructions الميكروكنترولر يفهمها وازاي بتتنفذ جواه وازاي تقرا وتفهم طريقة التعامل مع الميكروكنترولر من قراية ال datasheet بتاعه.. كمان لازم تفهم بعض ال concepts زي ال interrupts وال PWM signals.. المادتين دول انت بتاخدهم في الكلية بس انا شايف انهم مش كفاية وانك محتاج تقرا وتتعلم اكتر من كدة بكتير فيهم وبالتالي أفضل حاجة أنك و انت بتدرسهم تحاول تدوس فيهم زيادة و تقرا topics فيهم إضافية و من مصادر مختلفة.

6- بداية من النقطة دي الحاجات اللي تعملها عشان توصل لمرحلة الاتقان بقي.. من الاخر عشان تبقي تنين يعني .. الشغل بايدك ثم الشغل بايدك ثم الشغل بايدك.. لازم تقرا عن انواع ال microcontrollers المختلفة وياريت تشتغل بايدك فيهم.. لازم تجرب تشتغل شوية علي

PIC microcontroller وتجرب تشتغل علي AVR microcontroller وتجرب تشتغل علي ARM... الخ. لازم تعرف انواعهم وامكانيات كل واحد فيهم والفروقات بينهم.. ولازم تبقي عارف ال compilers بتاعتهم وال IDE بتاع ال microcontrollers دي وتبقي جربت تشتغل عليهم بايدك

7- مهم برضه تبقي عارف انواع ال actuators اللي انت اصلا بتعمل كل ده عشان تتحكم فيها ، مثلا لازم تفهم الفرق بين ال servo motor وال stepper motor.. لازم تفهم استخدامات ال relay.. ودواير ال motor drivers.

8- حاجة كمان ظريفة انك تبقي عارف ال sensors اللي موجودة في السوق واستخداماتها وازاي ببتوصل بدايرة الميكروكنترولر بتاعتك.. ده ممكن تعمله بانك تفتح موقع Ram electronics وتفتح ال category بتاع ال sensors في الموقع وتفتح السينسورز اللي فيه واحد واحد وتقرا عنهم.. الموقع كمان بيبقي حاططلك لينكات لتوضيح كيفية استخدامهم وال datasheets بتاعتهم.

وبس كدة .. ده كل اللي في دماغي حاليا :D  لو افتكرت معلومة تاني هضيفها وبالتوفيق إن شاء الله

3- ماتريال Material المهندس كرولس شنوده 


4- نقلاً عن المهندس أحمد عبد المنعم

اولا ال embedded system هو عباره عن computer system مبرمج ل certain function بتم خلال complete mechanical or electrical system.. و نقدر نقسمه ل microcomputer و معاه مجموعه actuators و sensors .. وال ES بقي موجود فى كل حاجه حوالينا من اول ريموت التلفزيون لغايه العربيات و الاقمار الصناعيه و الطيارات و اى حاجه smart بتقابلك.



لو هنتكلم عن الاساسيات المطلوبه علشان تقدر تدخل فى المجال ده:
C programming
Microcontroller
و بعد كده تزود شويه فى مفاهيم البرمجه و oop (مع C++ مثلا )
و كذلك ال operating systems concepts و تركز على ال RTOS و يا سلام لو embedded linux
و بالنسبه لمجال ال automotive ففى حاجات زى ال AutoSar وبعض Communication protocols زى CAN و LIN و Ethernet بتكون مهم بردو
--------------------------------------------
(هنتكلم عن اهم جزئيه فى هذا المجال الا وهي البرمجه) و المؤكد انها ستكون ال c ، ليه بنختار ال c لانها اللغه اللى بتقدر تتعامل مع ال hardware و برمجه ال microcontrollers عموما و طبعا فى طرق تانيه و لكن يبقى الافضل و الاقوى هى ال c من ناحيه التعلم لانك بتشتغل على اقل level فبتفهم كل شئ بالتفصيل. و بتسهل كثير تعلم اى لغه تانيه من بعده و كمان قويه علشان تعلمك programming thinking عموما


مصادر لتعلم لغة C: 
- من وجهه نظرى بفضل الكتب عن الكورسات وافضل فى البدايه كتاب c how to program لانه حديث و اسلوب شرحه سهل و فيه اكواد كثير بتقدر تقارن بيها و تراجع خطاك و ده لينك تقدر تحمله منه
للدخول للرابط اضغط هنا

- و الكتاب ده اتكلم عن كل تفصيله فى ال c بصوره كويسه جدا و كنت شغال منه فى دبلومه الايمبدد اللى اديتها و هتلاقى حلول كل ال exercises وال examples اللى فى الكتاب محلوله فى ال drive بتاع الدبلومه اللى هتلاقيه فى اخر البوست ده
للدخول للرابط اضغط هنا

- و ده كتاب تقدر تقراه كمرحله متقدمه بيتكلم عن كل الالغاز و التفاصيل اللى ممكن تحتاجها فى interview ثقيل كده حتى اسمه Deep C Secrets
حمل من هنا

و دى channel جميله فى شرح ال algorithms زى ال sorting algorithms و شارحه pointers بردو بطريقه كويسه
ادخل القناة من هنا

من المواقع الكويسه للحل عندك دول
Lynda
codility
tutorialspoint
programiz

(تانى اهم جزئيه هى ال microcontroller) من وجهه نظرى ان افضل حاجه فى تعلمه هو ال AVR

-  نوعه كويس و محترم و تقدر توصل لقدر كبير من الفهم و الاتقان فى المجال ده من خلاله و من افضل الكتب فى تعلمه هو كتاب مزيدى العظيم و تقدر تلاقيه من خلال اللينك ده:
ادخل الرابط من هنا

- الكتاب ده اول 7 شباتر منه بيشرح assembly مش c فممكن تسيبهم دلوقتى و تدخل على الجزء اللى ب C على طول
بعد الكتاب ده لازم تفهم شويه Embedded C و من افضل الكتب فيه اسمه Embedded C و ده لينكه
حمل الكتاب من هنا

(كده تبدا تعمل مشاريع بايدك) و تعمل document المشاريع دى بصوره كويسه و تصورها video و ممكن ت publish على مواقع زى hackster و instructables

(وفى كورس هو الاشهر فى مجال ال embedded) على edx اسمه shape the world الكورس ده جميل جدا و شغال على Tiva c kit و هى arm و متوفره فى مصر و ده لينك الكورس: 

(وفى الكورس ده على Coursera) و منظم و فيه تفاصيل كويسه
https://www.coursera.org/learn/introduction-embedded-systems

(ومهندس كرولس شنوده عامل شرح كامل لدبلومه ال embedded) زى اللى بتتدرس فى AMIT و Embedded Fab و كده
ادخل الماتريال من هنا


و فى مواقع ممكن تساعدك كثير زى
avr-tutorials
maxembedded
extremeelectronics
embedds.com



(وبالنسبه لل RTOS فدول كورسين) يفضل تاخدهم بالترتيب كده علشان تفهم ال main concepts
https://goo.gl/h5Lt8a
https://goo.gl/8aJypy


و ده كورس ثالث بس فيه labs فى الاخر و تنفيذ عملى
https://goo.gl/mMWQXV
و الكتاب ده فى شرح كويس جدا لتفاصيل ال RTOS و كل ال Main Concepts بتاعته
https://goo.gl/UALmAq
و ده كتاب كمان حلو فى ال RTOS
https://goo.gl/oAd95e
--------------------------------------------

(اما بالنسبه لل embedded linux) ففى ال 4 كورسات بتوع دكتور احمد العرباوى كويسين كبدايه فى ال Embedded linux و هتلاقى فيهم شرح ال Git بصوره كويسه للى عايز يتعلمه
https://www.youtube.com/user/Linux4Embedded/playlists


و فى ال playlist و ال drive بتاع م/شريف موسى و هو متمكن جدا فى الجزء ده
click here to see the course
click here for drive

(نيجى بقى بالنسبه للعمل فى المجال ده) فتقدر لو انت طالب تشتغل حاجات freelancing و دى المواقع الاشهر فى ده
freelancer.com
upwork.com
وبالنسبه للشركات فى مصر فده لينك فيه بتاع 17 شركه بتفاصيلهم
توجه للرابط من هنا


ودى pdf فيها تقريبا 57 شركه ايمبدد فى مصر بالايميلات بتاعتهم و ارقام تليفوناتهم
https://goo.gl/NiGwKh

(وده لينك فيه مجموعه من الداتا اللى قدرت اجمعها عن Valeo) فيها اسئله انترفيو تيكنيكال و HR و انحليزى و ماتريال كثيره متعلقه بالامتحان و الانترفيو بتاع فاليو هو بس عيب الحاجه انها مش منظمه شويه فمعلش حاولوا تدخلوا فى كل folder للاخر
https://goo.gl/g5ZCKn
---------------------------------------------------
و اخيرا هتلاقى الماتريال بتاعت الدبلومه اللى كنت بديها الصيف اللى فات واى material هرفعها ان شاء الله تقدر تلاقيها فى اللينك ده
https://goo.gl/jESYrt


5- نقلاً عن المهندس أشرف مدين عندما سأل عن كيف ابدأ الامبيديد سيستم

انا ممكن اقسملك الطريق لتلات خطوات مع شويه ملاحظات بسيطة فى الاخر
-------
1/ C Programming
لازم قبل ما تبدا فى اى حاجة ليها علاقه بالبرمجه انك تدرس ام لغات البرمجه وهي لغه سي 
*دايماً اهم خطوة فى مجال هيا اول خطوة 
*اهتم جدا بالاساسيات لان دايما الاخطاء فى مشروع بتكون فى اساسيات ومش بتاخد بالك 
*فى المرحلة دى خد وقتك وافهم كويس اوى الاساسيات 
اللغه دى ممكن تاخد منك اسبوع تعليم لو انت فى اجازة 
*topics 
- variables and constants 
-if statement 
-case 
-repeated loops
-operators 
-string literals
- arrays
- ACSII table *
- pointers *
-functions *(macros)
-header file 
-structures 

*دور على الحاجات دى كلها ومتسبش السى الا وانت فاهمهم كلهم كويس.
------------
2/ تبدأ تعرف يعنى ايه اصلا ايمبيديد سيستم 
وتعرف ال buses & architecture.. etc 
الحاجات دى نادر ما هتلاقيها فى كورس على يوتيوب مش هتلاقيها غير فى مراجع معينه ، ابدا ابحث ودور بنفسك ،ندخل فى الجد هنا ، الكنترولر اللى هتشتغل عليه سواء كان (avr or pic ) ، وهنا اكبر خدعه فى تاريخ الامبيديد سيستم كله ألا وهى الكورسات اللى على اليوتيوب وكتب ببساطه ، اوعى يكون كل اعتمادك عليها انت، ممكن تعتبرها مقال بتقراه مش اكتر او مقدمه، لما تروح تشتغل فى شركه ممكن تلاقى، كنترولر عمرك ما سمعت عنه 


دايما اتعود انك تشتغل من (الداتا شيت) بتاعه الكنترولر غير كده شكليات، ممكن تستعين باى كورس على يوتيوب لو مش فاهم حاجة معينه بس
1- ابدا بالكنترولر ال 8 بت 
افتح فيها كتب وكورسات براحتك لكن فى الاول والاخر المرجع بتاعك داتا شيت 
2- مفيش حاجة اسمها اتعلم نوع معين من الكنترولر مثلا بيك او غيره لا
3- اعرف المواضيع دى عموما وابدا طبق انت يعنى مثلا حدد Prescaller وهتشتغل كام بت واعمل مثلا حساباتك عموما بعدين شوف هتستخدم اى كنترولر وافتح الداتا شيت بتاعتك واشتغل 
- topics 
-I/O Ports
-ADC 
- Interrupt
-External Interrupts
-pwm
-Timer/Counter
- UART - SPI - I2C
- RAM - EEPROM 
-WDT


3/ RTOS 
---------------------
مصر فيها شركات امبيديد كتير زى valeo & mentor graphic ..etc 

نصائح لدارسي الامبيديد :

* طول ما انت بتتعلم انسى ان فى حاجة اسمها اردينو خالص واوعى تتعلمه الا لما تخلص كل اللى فوق ده لانك هتضيع وقتك فى الفاضى وهتندم فى الاخر ده حاجة للهواه مش اكتر ممكن لما تخلص لما تحب تدخل مسابقه او تنجز فى حاجة استخدمه لكن ميكنش كل اعتمداك عليه 
* انسى ان فى حاجة اسمها كورسات عربى لانها بتكون ناقصه جدا وبتتشرح بغباء 
* واوعى تعتمد على كتب ببساطه (لان فى ناس مثلا تقرا كتاب ببساطه ويفتكر انه كده درس المجال وخلاص لكن بالعكس هوا كده ضيع وقته )اعتبرها مقال بتقرأه مش اكتر
* ركز على المراجع والداتا شيت الداتا شيت الداتا شيت ^^
*ادرس حاجه زى FGPA و labview 
*** ياريت تحاول تدخل اي مجال جنب الامبيديد وده على حسب قسمك فى الكليه
***** الالكترونكس دى اهم حاجة فى الكارير بتاعك ايا كان قسمك فالالكترونكس دى شىء مشترك بين كله لازم تدرسها وتكون بدايتك فى الطريق 
* خلى معاك دايما حد تابع او اعمل جروب صغير وادرس انت وحد معاك عشان هتقف عليك حاجات كتير اوى وتلاقى حد تتناقش معاه 
** قبل كل topic من اللى فوق دول ابحث عنه فى واقرأ مقالات عنه او شوف الجزء فى اى كورس ع يوتيوب لحد ما تاخد فكرة عنه


أفضل مرجعين لتعلم Avr

أ- مرجع مزيدي Mazidi باللغة الإنجليزية

ب-  avr simply ببساطة 


مصادر تعلم RTOS - Real time operating system




تعلم Software engineering
بقلم المهندس أحمد عبد الغفار:
دائما انت لا تعمل على مشروع كبير بمفردك .. تخيل مشروع عدد سطور الكود فيها تتعدى مثلا ال 50,000 سطر كود .. هنا تكون بالفعل تعمل ضمن team عمل كبير وكل Team له جزء محدد فى المشروع .. لذلك لابد من وجود منهج واحد او اسلوب محدد يعمل عليها جميع ال Teams فى المشروع و دائما يتم التحديث فى المشروع ربما بعد عدة اعوام من الانتهاء منه لذالك نحن بحاجة لما يسمى :
Software Engineering 

مجموعة الكورسات دى مفيدة :

https://www.udacity.com/course/cs101




مقتطفات اسئلة وأجوبة يتم العمل علي تحديثها باستمرار

-سؤال للمهندس كريم أسامة
س/طيب راي حضرتك اشتغل علي نفسي اذاي هل في مواقع مثلا كنت حضرتك بتتدرب عليها او كتب
ج/
Hackerrank 
Codility 
اول موقع دا اللي بتمتحن عليه امتحان فاليو ممكن تجرب عليه 
و التاني زيه بردو

-سؤال للمهندس عمر شحاته
س/خلصت كورس امبيديد وعايز اعمل Smart home بطريقة أقدر اسوقه وابيعه
ج/
كل الى على اليوتيوب فى الفاضى حاول تجيب node mcu وتتعلم عليها الاكواد هى دى الطريقة الى ممكن تبدأ بيها 
فى قناه على اليوتيوب اسمها (فيك راس ) دى اكتر حاجة ممكن تفيدك 
  
شكرا لك .. الى اللقاء 

التعليقات

انضم إلينا علي يوتيوب


جميع الحقوق محفوظة

تعلمو

2019