النهارده هنتكلم عن إيه العلاقة بين الmicrocontroller و لغة البرمجة الأكثر إستخداما و هى الC و ليه لازم أتعلم الC مش أى لغة تانية

الفكرة بترجع إن الMicrocontroller أو زى ما هنختصرها بعد كده بميكرو إن جواه كذا جزء و هما البروسيسور و الميمورى و حاجات تانية كتيرة زى ال peripherals أو الأطراف زى الpins  الكتيرة اللى فى الميكرو و كل واحدة ليها إستخدام

بس النهارده هنركز على الميمورى و البروسيسور
البروسيسور زى ما هو معروف بينفذ الأوامر هو ما يعرفش غير يعمل عمليات حسابية كتيرة بس ما يفهمش إيه اللى يعمله فعشان كده فيه الميمورى اللى هى فيها الأوامر ديه متخزنة كmachine language عبارة عن واحيد و أصفار عشان الميكرو بيشتغل بنظام الDigital. اللى بحصل إن جوه الميمورى جزء منها إسمه الInstruction memory  و هى الجزء اللى متخزن فيه الأوامر دي عشان تتنفذ بس إزاى بنضيف الmachine language ديه و إحنا أصلا مش فاهمنها

القصة بترجع إننا بستخدم حاجة إسمها الHigh level language  أو لغة نفهمها إحنا البشر زى الJAVA  وPython و طبعا ما ننساش أول واحدة فى العيلة ديه و هى الC و ديه حاجة نقدر نفهمها

طيب إيه الفكرة إننا نستخدم الC و مش أى لغة تانية؟
الفكرة إن الC فى نفس الوقت هى قريبة من الLow level language أو زى ما هى معروفة بالAssembly و ديه لغة قريبة جدا من الMachine language بس مش كتير بيعروفوا يستخدموها عشان صعبة جدا بس الميزة بقى إن الC قريبة جدا منها
فعشان كده إستخدمنها لأنها من اللغات اللى مش بس بتعرف تبرمج لأ كمان بتعرف تلعب فى الميمورى و تغير فيها حاجات كتير فيها بإستخدام الPointers اللى هى مش موجودة فى اللغات التانية
فاللى بحصل كالتالى عندنا لغة الC اللى هى بنقدر نفهمها و بعد كده بتترجم بحاجة إسمها الCompilers و تحولها لكود Assembly و بعد كده للmachine language  اللى كلها أصفار و وحايد و طبعا مش هندخل فى تفاصيل كتيرة المرة ديه بإن إزاى بتم عملية التحويل ديه و إيه علاقة الClock اللى بنشوفها على الميكرو بتفيذ الأوامر ديه و هنخليها لمرة تانية إن شاء الله