برمجة الأجهزة المادية والمتحكمات الدقيقة: SPI وJTAG وISP
Programming Embedded Devices
الجواب المختصر
لبرمجة الأجهزة الإلكترونية (المتحكمات الدقيقة، لوحات التطوير، الأجهزة الذكية البسيطة) يُوصَل الحاسوب بمبرمج خاص (Programmer) بوصلة مثل USB أو كابل تسلسلي، ثم يتصل المبرمج بلوحة الجهاز عبر واجهة مخصصة: SPI (واجهة التسلسل المحيطي) أو JTAG (تُستخدم كثيرًا لاختبار الشرائح الإلكترونية وتركيبها وبرمجتها). وISP هي البرمجة داخل النظام: إعادة برمجة المتحكم وهو مثبت داخل اللوحة دون فكه.
طريقة التوصيل
- يُوصَل الحاسوب بمبرمج خاص عبر USB أو كابل تسلسلي.
- يتصل المبرمج بلوحة الجهاز عبر واجهة مخصصة (SPI أو JTAG).
- يُنقل البرنامج إلى المتحكم.
| المصطلح | المعنى |
|---|---|
| SPI | واجهة التسلسل المحيطي للاتصال بالشريحة |
| JTAG | واجهة تُستخدم كثيرًا لاختبار الشرائح وتركيبها وبرمجتها |
| ISP | برمجة المتحكم وهو داخل اللوحة دون فكه |
لماذا ISP مهمة؟
تسمح بتحديث البرنامج بعد بيع الجهاز، مثل تحديث برنامج الراوتر أو التلفاز الذكي، وإصلاح الأخطاء بعد الاستخدام. وغالبًا تُستخدم لغات قريبة من العتاد كـ C وC++ في هذه الأنظمة (مجالات اللغات).
وللمتطلبات: متطلبات التشغيل والتطوير.
أمثلة على أجهزة تُبرمج بهذه الطريقة
- المتحكمات الدقيقة (Microcontrollers).
- لوحات التطوير مثل لوحات التحكم.
- الأجهزة الذكية البسيطة في المنزل أو الصناعة.
ويحتاج المبرمج هنا إلى أجهزة وأدوات خاصة لا تتوفر في برمجة التطبيقات العادية، فيكون اختيار اللغة والأداة جزءًا من تخطيط المشروع.
المصطلحات: عربي ↔ English
- متحكم دقيق
- Microcontroller
- برمجة داخل النظام
- In-System Programming (ISP)
- واجهة SPI
- SPI
- واجهة JTAG
- JTAG
- نظام مدمج
- Embedded System
لماذا يهمّ هذا في BTEC؟
الميزة العملية: تحديث برنامج جهاز بعد بيعه، كالراوتر أو التلفاز الذكي، وإصلاح أخطاء ظهرت بعد الاستخدام.
أسئلة تجيب عنها هذه الصفحة
- ما هي البرمجة داخل النظام ISP؟
- كيف نبرمج المتحكمات الدقيقة؟
مفاهيم مرتبطة
- لماذا توجد لغات برمجة كثيرة؟ وكيف نختار اللغة المناسبة؟لا توجد لغة هي الأفضل مطلقًا، بل لغة أنسب لمجال أو جهاز معين. نختار بحسب نوع الجهاز ونظام التشغيل والأدوات المتاحة ونوع التطبيق: مدمج، جوال، ويب، أو سطح مكتب.
- متطلبات تشغيل البرنامج عند المستخدم ومتطلبات تطويره عند المبرمجمتطلبات التشغيل هي ما يحتاجه المستخدم ليعمل البرنامج عنده (جهاز ونظام تشغيل ومكتبات)، ومتطلبات التطوير هي أدوات المبرمج لكتابته (حاسوب وبيئة تطوير ومترجم أو مفسر وأدوات تصحيح ومحاكيات).
عن كاتب الصفحة

مدرّس BTEC IT · الأردن
- نوع المحتوى
- شرح مبني على مادة أحمد دومي — وليس نصًّا رسميًّا من Pearson
- آخر مراجعة
- ملاحظة على المصدر
- تعتمد هذه الصفحة على ملاحظات محاضرة لأحمد دومي، وأُضيفت إليها أمثلة وشرح توضيحي عام.
- المصدر
- مادة البرمجة (أحمد دومي) — برمجة الأجهزة المادية الخاصة