الدرس ٣ : تعرف على البنية البرمجية لمعالجات ARM Cortex-M4 ومبدأ عملها (ج١)

لو حضرتك تكتبها انجلش افضل لأنه ممكن تتفهم 512 ميجا bytes !

ما هي هي ؟؟ ٥١٢ ميجا بايت = 512 ميجا bytes
بصراحة مش فاهم قصدك ؟؟

إعجاب واحد (1)

اقصد انها 512 Mbit ميجا بت

هي فعلا بايت وليس بت

512 Mega Bytes

البروسيسور بينظر للذاكرة على انها سلسلة من bytes فأول عنوان هيكون 0x00000000 والعنوان اللي بعده هيكون 0x00000004 لان البروسيسور بتاعنا ٣٢ بت فهيقدر يكتب ٤ بايت في الذاكرة دفعة واحدة لحد ما نوصل لأخر عنوان وهو 0xFFFFFFFF والرقم ده لو حولته للنظام العشري هيكون 4294967295 يعني ٤ جيجا بايت.

عموما لما هنتكلم على الذاكرة يبقي بالبايت اما لو هنتكلم على سرعة نقل البيانات مثلا كسرعة النت بنتستخدم البت

إعجاب واحد (1)

أستأذنك ممكن ايميل حضرتك,
https://goo.gl/49CvkW

إعجاب واحد (1)

تم اضافة فيديو الدرس الثالث

إعجاب واحد (1)

الفيديو أجاب على تساؤلات كثيره فجزاك الله خير

إعجاب واحد (1)

السلام عليكم ورحمة الله وبركاته
انا قرأت و سمعت الفديوهات الى الدرس الثالث اكثر من مرة لكن تقريبا نسبة فهمي للموضوع الى الان في حدود 30 % كثير من المصطلحات لم افهمها ولم اقدر على تخيل الموضوع وربط الافكار
.انا ادرس بالفرقة الاولى ميكانيكا اريد فهم هذا المعالج لعله ينفعني في مشروع تخرج او يكون اضافة لى , بماذا تنصحني هل اكمل ام اننى لن استطيع تحصيل الفائدة…

إعجابَين (2)

للتوضيح فالدرس الثالث والرابع معا عبارة عن مقدمة عن المعالج وهي ضرورية قبل ان نبدا عملي على الاقل يكون عندنا فكرة بسيطة.

الدرس الرابع سيتم تعديله واضافة بعض الموضوعات رايت انها مهمة للمقدمة وسيتم اعداد الفيديو في خلال الاسبوع القادم ان شاء الله.

وسيكون هناك درس خاص لبعض الموضوعات في الدرس مثلا Interrupts سيكون لها درس خاص كذلك ISA ولغة الاسمبلي سيتم التحدث عنها بالتفصيل في درسين. كذلك سيكون هناك درس للتعامل مع الذاكرة.

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

إعجاب واحد (1)

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

في الحقيقة معالجات ARM Cortex-M وبرمجتها تعتبر نوعا ما متقدمة وصعبة حتى لمن لدية خبرة ببرمجة الميكروكنترولر ولكن الموضوع ليس مستحيل يمكنك المتابعة وفي حالة وجود اي جزء صعب الفهم ممكن اساعدك بتوضيحه اكتر.

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

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

إعجاب واحد (1)

جزاك الله خيرا .
طمأنت قلبي طمأن الله قلبك .
مستمر باذن الله .

إعجاب واحد (1)

احب اضيف كمان انه مهم جدا انك تكون عارف برمجة كويس ودي اهم حاجة ولازم تتعملها وهتفيدك في كل حاجة ولو انت عندك اهتمام بالميكروكنترولر يبقي يفضل انك تتعلم لغة السي وحتى ممكن تبدا بيها وسيكون سهل عليك تتعلم اي لغة تانية لو حبيت

إعجاب واحد (1)

ان شاء الله سيتم العمل على ذلك ,الله المستعان

إعجاب واحد (1)

ربنا يبارك لنا في المهندس أحمد الديب زي ما تفضل بالتأكيد على لغة البرمجة السي، ثم أرشح لك بعض الأساسيات، أول ثماني دروس من هذه القائمة
https://goo.gl/eJQEyj

إعجابَين (2)

جزاك الله خيرا مهندس عبدالله

إعجاب واحد (1)

pc register will be changed every fetch happened its ok then if it find

a function it will make a jump to the new address and pc register will be the

next instruction in the function and the link register will save the return

address which means when the function end pc register will take the value

in link register am i right !! if so then what happened if there is 2

nested function calling how the link register save 2 return addresses?

Yes, you are right, but when you want to call funtion 2 from the current function 1, you will need to store the current link register into the stack before you call function 2, this is the return address of function 1.

Now you go to function 2, the link register will be updated with return address of function 2, after function 2 is finished you return back to function 1. But the link register is now with return address of function 2, so now you will need to load the link register with the value saved in the stack which is the return address of function 2.

إعجاب واحد (1)

يعطيك الف عافيه

إعجاب واحد (1)

هو الرقم ده 0xFFFFFFFF لو حولته للنظام العشري هيكون 4294967296 يعني ٤ جيجا بايت وليست 4 ميجا بايت

إعجاب واحد (1)

شكرا على التصحيح، وتم التعديل في المشاركة بالاعلى

إعجاب واحد (1)