نظام تشغيل عربى للانظمة المدمجة
الكود مرتب وواضح
ماشاء الله
بالتوفيق
عن أبي هريرة رضي الله عنه عن النبي صلى الله عليه وسلم أنه قال: سيأتي على الناس زمان سنوات خداعات: يصدق فيها الكاذب ويكذب فيها الصادق، ويؤتمن فيها الخائن ويخون فيها الأمين، وينطق فيها الرويبضة. قيل يا رسول الله وما الرويبضة؟ قال: الرجل التافه ينطق في أمر العامة . رواه احمد والحاكم وصححه الالبانى من حديث ابى هريره.
السلام عليكم
أخي حريف أريد أن أسألك سؤال وأرجو أن تتفهمني لأني لست خبير في المتحكمات ونظم التشغيل أرجو أن تأخذني على حسب عقلي :lol:
أرى أن برنامجك يظهر جمل على الشاشة مثل"my name is ahmed esmaeil and this is my system"
كيف تعرف النظام على الحروف أي كم بيكسل سيطبع الحرف على الشاشة هل به ذاكرة تحتوي على ASCII TABLE كذلك النظام الذي قام به الأخ محمد الأمين يعرض أيضا على الشاشة حروف عربية أيضا كيف تم ذلك هل تحتوي pic16f819 على ASCII TABLE هل هناك من يشرح لي ذلك وجزاكم الله خير
تم تعديل هذه المشاركة بواسطة hatem في 21 فبراير 2010 في 15:05
اقتباسأخي حريف أريد أن أسألك سؤال وأرجو أن تتفهمني لأني لست خبير في المتحكمات ونظم التشغيل أرجو أن تأخذني على حسب عقلي :lol: [/quote ولا انا خبير فى الموضوع هى أول تجربه ان شاء اللهبسم الله الرحمن الرحيماقتباسرى أن برنامجك يظهر جمل على الشاشة مثل"my name is ahmed esmaeil and this is my system"كيف تعرف النظام على الحروف أي كم بيكسل سيطبع الحرف على الشاشة هل به ذاكرة تحتوي على ASCII TABLE كذلك
بالنسبة لى انا لا يوجد شاشة حقيقية وانما هى simulation بشكل مؤقت على الكمبيوتر لذلك عملية الطباعة سهلة فى هذه الحالة
اما اذا اردت طباعة حروف على شاشة خارجية فانت تقوم أولا بإعداد مجموعة برامج تسمى graphics accelerator وهى مسؤولة بمعظم العمليات الرسومية كرسم الأشكال المختلفة من البكسل الى اعقد الأشكال وطباعة الحروف
وبالطبع يجب ان تحصل على نسخة من جدول الأسكى وان تحصل ايضا على رسومات للحروف المختلفة لاحد ال fonts لتكون منها رسومات السلاسل النصية
اللغة العربية اصعب بالطبع بسبب تشابك الأحرفاقتباسالنظام الذي قام به الأخ محمد الأمين يعرض أيضا على الشاشة حروف عربية أيضا كيف تم ذلك هل تحتوي pic16f819 على ASCII TABLE هل هناك من يشرح لي ذلك وجزاكم الله خيرلكن نظام الأخ محمد كان به موديول يقوم بجلب صفحة انترنت على هيئة صورة ليتم عرضها على حسب قوله ولذلك هذه العملية تتم داخل الموديول
مبارك لشعب تونس ![]()
حريف برمجة كتب:اما اذا اردت طباعة حروف على شاشة خارجية فانت تقوم أولا بإعداد مجموعة برامج تسمى graphics accelerator وهى مسؤولة بمعظم العمليات الرسومية كرسم الأشكال المختلفة من البكسل الى اعقد الأشكال وطباعة الحروف
وبالطبع يجب ان تحصل على نسخة من جدول الأسكى وان تحصل ايضا على رسومات للحروف المختلفة لاحد ال fonts لتكون منها رسومات السلاسل النصية
بارك الله فيك أخي حريف هذا ما أردت معرفته هو طباعة الحروف على شاشة خارجية هذا يعني أن العملية صعبة هل من الممكن أن أجد عندكم شرح أو موقع يتكلم على ذلك وجزاكم الله خيرا.
بالمناسبة هذا الموقع يحتوي على نظام تشغل مع الشفرة الخاصة به وهو قائم من الصفر ويظهر على الشاشة اللغة العربية
انا لم أبدا بالبحث حتى الآن لكن إليك ما سأقوم به ان شاء الله لكن بعد الإنتهاء من العديد من الأموراقتباسالممكن أن أجد عندكم شرح أو موقع يتكلم على ذلك وجزاكم الله خيرا.
سأقوم بجمع صور للحروف فى شكل bmp كصيغة للصور
سأقوم بتحويل هذه الصور الى مصفوفات من البايتات فى شكل ملف hex وهناك برامج كثيرة تحول الصور إلى hex
سأقوم بعد ذلك بتخزينها على ذاكرة المايكرو فى شكل جداول معلومة ليتم إستدعائها واحد تلو الآخر حسب الحاجة ويتم رسمها
لكن قبل كل ذلد سيتم تخفيض درجة الألوان بحيث ان كل واحد بكسل سيمثل فى واحد bit فقط لتخفيض المساحة لانها لا تحتاج الى تفاصيل الألوان
نعم رايته قبل ذلك وشكرا لكاقتباسبالمناسبة هذا الموقع يحتوي على نظام تشغل مع الشفرة الخاصة به وهو قائم من الصفر ويظهر على الشاشة اللغة العربية
نظام تشغيل الأقصى
لكن النظام هنا للأنظمة المدمجة وليس للحاسب الشخصى وللاسف هناك صعوبات أخرى
فالمتحكمات المصغرة لا تحتوى على الأماط العمل الكثيرة الموجودة فى معالجات intel مثل ال real mode 16 bit و ال protected mode 32 or 64 bit
وحلقات النظام المختلفة وكل هذا يساعد فى ال Multitasking وتشغيل اكثر من برنامج فى نفس الوقت على نفس المعالج أى بشكل بسيط يكون مهئ لإستقبال kernel
مبارك لشعب تونس ![]()
عرض الحروف العربية لايفرق عن الانجليزى لكن رسمها بس هو الصعب انا مابمل من الرسم خصوصا ان العربى معقد يعنى اى حرف لازم ترسمه بأكثر من طريقة مثلا (ع) (ـــعـــ) الموضوع ممل شوية ومامنه فايدة بالنسبة للانجليزى فانا عندى ملف سى فيه كل الرموز للاحرف الانجليزى عمولها الخواجات وانا عدلتها حتى تشتغل فى اى شاشة :lol: غنيمة انترنت
عن أبي هريرة رضي الله عنه عن النبي صلى الله عليه وسلم أنه قال: سيأتي على الناس زمان سنوات خداعات: يصدق فيها الكاذب ويكذب فيها الصادق، ويؤتمن فيها الخائن ويخون فيها الأمين، وينطق فيها الرويبضة. قيل يا رسول الله وما الرويبضة؟ قال: الرجل التافه ينطق في أمر العامة . رواه احمد والحاكم وصححه الالبانى من حديث ابى هريره.
اقتباسفالمتحكمات المصغرة لا تحتوى على الأماط العمل الكثيرة الموجودة فى معالجات intel مثل ال real mode 16 bit و ال protected mode 32 or 64 bit
وحلقات النظام المختلفة وكل هذا يساعد فى ال Multitasking وتشغيل اكثر من برنامج فى نفس الوقت على نفس المعالج أى بشكل بسيط يكون مهئ لإستقبال kernel
هل هذا يعني أني لو قمت بالبدء ببناء نظام تشغيل على المتحكم pic مثلا، أسهل مما هو الحال على معالجات أنتل
اقتباسانا عندى ملف سى فيه كل الرموز للاحرف الانجليزى عمولها الخواجات وانا عدلتها حتى تشتغل فى اى شاشة :lol: غنيمة انترنت
دعني أتقاسم معك الغنيمة :evil: وأرجو أن تتكرم علي ببعض الشرح فأنت تعلم أني مبتدئ وسيساعدك علي الأخ حريف :happy:
تم تعديل هذه المشاركة بواسطة hatem في 24 فبراير 2010 في 01:02
هذا يعتمد على تعريف مقدار السهولة فى نظركاقتباسهل هذا يعني أني لو قمت بالبدء ببناء نظام تشغيل على المتحكم pic مثلا، أسهل مما هو الحال على معالجات أنتل
تطوير نظام تشغيل على معالجات انتل يحتاج الى الكثير من العمل هذا اذا فصلنا الهاردوير بمعنى ان المعالج موجود فى حاسب شخصى وينتظر ان تقوم بعمل نظام بداية من ال boot loader على قرص صلب او مدمج حتى بقية مهام النظام
اما اذا كنت ستأخذ المعالج وتصمم له انت الهاردوير فهذا كابوس لا أفكر فيه اصلا :wacko:
لكن فى النهاية سيكون كثير من الأمور بعد ذلك سهلة وستعمل البرامج بسرعه وكفائة عالية لان المعالج مجهز لإستقبالها وخصوصا اذا استخدمت لغات عالية المستوى
اما المتحكم الصغير فهو مصمم اصلا ليعمل عليه برنامج واحد له الإدارة على النظام ككل نعم كتابة البرامج له سهله وايضا توصيله فى الدوائر المختلفة لكن تعليماته شحيحة جدا وانا اضطررت الآن لعمل اشياء اسطورية وغبية لمحاولة محاكاه ال memory management كإستبدال بعض التعليمات بدوال :blush: اوبس واستخدام بعض انماط العنونة غير معروفة العنوان بعد والنظام سيقوم بإعادة ترجمة معظم الكود عند تحميله كل مرة على ذاكرة المتحكم واشياء كهذه
من الآخر الموضوع يرجع الى التكلفة والإحتياجات رغم انى مازلت ابحث على معالج بسيط يدعم ما قلته
ابو امين انت بتعمل ايه دلوقتى :)
مبارك لشعب تونس ![]()
اقتباسدعني أتقاسم معك الغنيمة
جدا جدا
هذه هى الغنيمة
http://www.sparkfun.com/tutorial/Nokia%206100%20LCD%20Display%20Driver.pdf
الشرح الموجود فى الملف ده بيمكنك انك تبرمج اى شاشة اذا قدرت تفهمه يوجد جدول الحروف تحت فى الصفحات الاخيرة اعمل ليه كوبى وبست
====================================================================================
اقتباسابو امين انت بتعمل ايه دلوقتى
والله انا مش عارف بعمل فى ايه حتى :D ابدا مشروع واسيبو فى الاخر لسبب او لاخر وفى الغالب بيكون السبب ال :cash:
معندكش خريطة جزيرة الكنز ؟؟
عن أبي هريرة رضي الله عنه عن النبي صلى الله عليه وسلم أنه قال: سيأتي على الناس زمان سنوات خداعات: يصدق فيها الكاذب ويكذب فيها الصادق، ويؤتمن فيها الخائن ويخون فيها الأمين، وينطق فيها الرويبضة. قيل يا رسول الله وما الرويبضة؟ قال: الرجل التافه ينطق في أمر العامة . رواه احمد والحاكم وصححه الالبانى من حديث ابى هريره.
جزاكم الله خيرا على هذه المعلومات المفيدة وزادكم الله من علمه :thumb_up:
ولو انا هعرف ازاى اخليك تكمل المشروع :P قريبا جدا اسلوب الإغراء لكن ليس بالكنز لانى ابحث عن الجزيرة معكاقتباسوالله انا مش عارف بعمل فى ايه حتى :D ابدا مشروع واسيبو فى الاخر لسبب او لاخر وفى الغالب بيكون السبب ال :cash:معندكش خريطة جزيرة الكنز ؟؟
على فكرة عندكم ماس كثير فى السودان ممكن تبدأ التنقيب لكن لا تنسى اخوك :)
اخ حاتم بالتوفيق
مبارك لشعب تونس ![]()
يا جماعة لغة الأسيمبلي دي مملة بشكل؟
ما فيش إمكانية نكتب الشيفرة بلغة أعلى مثلاً c أو basic
تحياتي
اقتباسيا جماعة لغة الأسيمبلي دي مملة بشكل؟ما فيش إمكانية نكتب الشيفرة بلغة أعلى مثلاً c أو basic
تحياتي
نعم يا علاء انا اعمل الآن فى موضوع كتابة السى مع الأسمبلى واستدعاء دوال من السى الى الاسمبلى والعكس
ونجحت فى اشياء كثيرة والحمد لله
الميكرو الذى أعمل عليه يدعم GCC atmel avr c compiler
http://www.avrfreaks.net/index.php?name=PNphpBB2&file=printview&t=49622&start=0
والآن انا مشغول فى موضوع ال interfacing مع ال sd card وساستخدمة كذاكرة دائمة
ومعظم الكود سيكون مكتوب بالسى عدا بعض الدوال التى تتعامل مع الهاردوير افضل ان اكتبها بالأسمبلى
وأيضا ال Interrupt vectors لانى احتاج تنفيذها فى وقت قليل جدا لأنها تتكرر مع كل بايت يتم كتابته فى الكارت
بعد هذا الموضوع سأنتقل بإذن الله تعالى الى ال fat ثم الى ال memory management
مبارك لشعب تونس ![]()
