قسم الميكروكنترولر والروبوت ودوائر الاتصال بالحاسب الالي قسم المتحكمات الـ microcontroller و المعالجات microprocessor و التحكم الرقمي بالكمبيوتر CNC والانظمة الآلية والروبوت Robots

   

ياسر الجبوري
:: مهندس متواجد ::
تاريخ التسجيل: Jan 2007
الدولة: العراق
المشاركات: 85
نشاط [ ياسر الجبوري ]
قوة السمعة:
قديم 22-02-2011, 01:40 PM المشاركة 25   
افتراضي



السلام عليكم ورحمة الله وبركاته


لقد جربت المكتبة وهي بصراحة روعة وحاولت ان افهم دوال المكتبة لكن بصراحة محتاجة اوقات واوقات لفهمها فهي تعد بجد منهج يدرس ف استخدام الدوال والتفاعل فيما بينها ولكن
هل من الممكن ان نصنع مصفوفة للحروف العربية كمثل الانجليزية ؟
و

ما اسس بناء هذه المصفوفة واسس استدعاءها ؟

فانا ضحكت ع المصفوفة ونقلت كود حرف z مكان كود الرقم 4 وحدث ما توقعته ان الشاشة عرضت z بالرغم من اني كاتب 4 واشك بان الاستدعاء يتم عن طريق ترتيب العناصر ف المصفوفة وان لكل حرف 5 عناصر من المصفوفة لعرضه بالاضافة لعنصر فارغ ولكن الالية التي تتم بها اعجز عن فهمها حقا

لذا ادعو استاذي واخي ihe lion الي جعل مشروعه موضوعا مستقلا لشرح طرق التعامل مع الدوال من البداية وحتي ما شاء الله لتعم الفائدة
والسلام عليكم ورحمة الله وبركاته
وانا اضم صوتي الى صوت الاخ محمد( berstoo)

اعلانات

the lion
:: مهندس متواجد ::
تاريخ التسجيل: Feb 2009
الدولة: egypt
المشاركات: 117
نشاط [ the lion ]
قوة السمعة:
قديم 24-02-2011, 01:50 AM المشاركة 26   
افتراضي


السلام عليكم ورحمه الله وبركاته
بالنسبه لمشكله الميكروسي اخي ياسر حاول ان تستبدل الملف الموجود في المسار
التالي
C:\Program Files\Mikroelektronika\mikroC
بالملف الموجود علي الرابط التالي
http://www.mediafire.com/?wfnvqsnev443g7g


اما عن مشكله تضاعف الحرف اللتي طرحتها
فهي حسب اعتقادي تحدث نتيجه انك تقوم بالانتقال للعمود التالي من دون اعطاء الداتا الجديده في الصف
ساشرح لك بالكود لعله يوضح لك
لنفترض انك موصل ماتريكس 8*8 الصفوف علي بورت dوالاعمده علي بورت b
وساحاول ان اكتب الكود كما تكتبوه دائما

كود:
PORTd=0B11111110;
PORTB=x1; delay_us(300);
في هذه الحاله المعروض علي اول عمود هو الداتا اللتي يحتويها المتغيرx1
ثم بعد ذلك تقوم بكتابه
كود:
PORTd=0B11111101;
تقوم بعمل بتحديد العمود الثاني وذلك لاكمال عمليه العرض
وهنا تاتي المشكله عند كتابتك لهذا الكود فتقووم بتحديد العمود الثاني من دون الانتباه ان portdالان يحتوي علي الداتا الخاصه بالمتغير x1
لذلك يبدا العمود الثاني بالاضائه بنفس العمود السابق ومن هنا يظهر ظل خفيف
حتي تقوم بتنفيذ التعليمه التاليه من البرنامج
كود:
PORTB=x2;
لتلافي هذا الامر اقوم باطفاء ليدات كل عمود قبل ان انتقل الي عمود اخر
واضع وقت بسيط لتقوم الليدات بالانطفاء بشكل كامل
قد لاتلاحظ ما اقوله لك في الماتريكس الصغيره 8*8 او8*16
ولكن مع الاحجام الاكبر تلاحظ هذه الفرووق وتختلف حسب نوع مسجل الازاحه
وطريقه كتابه البرنامج وتردد الكريستال
ولاني اقوم بعمليات حسابيه قد تستغرق وقت في المكتبه قمت باضافه هذه المتغيرات اللتي ذكرتها مسبقا في سؤالك
ملحوظه المتغيرات تساعدك في ضبط الماتريكس عمليا وفي اوقات كتيره
لايكون البروتس مماثل للواقع
فبعد العديد من التجارب كان الكود يعمل بشكل جيد جدا علي البورتس ولكن
في الواقع كانت تظهر مشكله مضاعفه الحروف والعكس صحيح
وبالتوفيق ان شاء الله

اعلانات اضافية ( قم بتسجيل الدخول لاخفائها )

ياسر الجبوري
:: مهندس متواجد ::
تاريخ التسجيل: Jan 2007
الدولة: العراق
المشاركات: 85
نشاط [ ياسر الجبوري ]
قوة السمعة:
قديم 25-02-2011, 09:35 AM المشاركة 27   
افتراضي


السلام عليكم ورحمه الله وبركاته
بالنسبه لمشكله الميكروسي اخي ياسر حاول ان تستبدل الملف الموجود في المسار
التالي
C:\Program Files\Mikroelektronika\mikroC
بالملف الموجود علي الرابط التالي
http://www.mediafire.com/?wfnvqsnev443g7g


اما عن مشكله تضاعف الحرف اللتي طرحتها
فهي حسب اعتقادي تحدث نتيجه انك تقوم بالانتقال للعمود التالي من دون اعطاء الداتا الجديده في الصف
ساشرح لك بالكود لعله يوضح لك
لنفترض انك موصل ماتريكس 8*8 الصفوف علي بورت dوالاعمده علي بورت b
وساحاول ان اكتب الكود كما تكتبوه دائما

كود:
PORTd=0B11111110;
PORTB=x1; delay_us(300);
في هذه الحاله المعروض علي اول عمود هو الداتا اللتي يحتويها المتغيرx1
ثم بعد ذلك تقوم بكتابه
كود:
PORTd=0B11111101;
تقوم بعمل بتحديد العمود الثاني وذلك لاكمال عمليه العرض
وهنا تاتي المشكله عند كتابتك لهذا الكود فتقووم بتحديد العمود الثاني من دون الانتباه ان portdالان يحتوي علي الداتا الخاصه بالمتغير x1
لذلك يبدا العمود الثاني بالاضائه بنفس العمود السابق ومن هنا يظهر ظل خفيف
حتي تقوم بتنفيذ التعليمه التاليه من البرنامج
كود:
PORTB=x2;
لتلافي هذا الامر اقوم باطفاء ليدات كل عمود قبل ان انتقل الي عمود اخر
واضع وقت بسيط لتقوم الليدات بالانطفاء بشكل كامل
قد لاتلاحظ ما اقوله لك في الماتريكس الصغيره 8*8 او8*16
ولكن مع الاحجام الاكبر تلاحظ هذه الفرووق وتختلف حسب نوع مسجل الازاحه
وطريقه كتابه البرنامج وتردد الكريستال
ولاني اقوم بعمليات حسابيه قد تستغرق وقت في المكتبه قمت باضافه هذه المتغيرات اللتي ذكرتها مسبقا في سؤالك
ملحوظه المتغيرات تساعدك في ضبط الماتريكس عمليا وفي اوقات كتيره
لايكون البروتس مماثل للواقع
فبعد العديد من التجارب كان الكود يعمل بشكل جيد جدا علي البورتس ولكن
في الواقع كانت تظهر مشكله مضاعفه الحروف والعكس صحيح
وبالتوفيق ان شاء الله
السلام عليكم ورحمة الله وبركاته
اخي واستاذي the lion
شكرا لاهتمامك بالرد
بالنسبة لمشكلة المايكروسي
لقد قمت باستبدال الملف وقد كانت النتيجة ان البرنامج لم يعد يشتغل
لا ادري هل ان الملف غير صالح ام ماذا
اما مشكلة تضاعف الحرف فسوف اقوم بتنفيذ اقتراحاتك ان شاء الله
مع الشكر الجزيل


الصورة الرمزية سمير فراج
سمير فراج
:: مهندس ::
تاريخ التسجيل: Jan 2011
الدولة: القاهرة
المشاركات: 13
نشاط [ سمير فراج ]
قوة السمعة:
قديم 18-03-2011, 11:55 AM المشاركة 28   
ha والله خطير مش هسيبك ياأسد ربنا يوفقك


عايزين الشرح بالتفصيل الممل لو سمحت ياأسد



الساعة معتمدة بتوقيت جرينتش +3 الساعة الآن: 01:40 AM
موقع القرية الالكترونية غير مسؤول عن أي اتفاق تجاري أو تعاوني بين الأعضاء
فعلى كل شخص تحمل مسئولية نفسه إتجاه مايقوم به من بيع وشراء وإتفاق وأعطاء معلومات موقعه
التعليقات المنشورة لا تعبر عن رأي موقع القرية الالكترونية ولايتحمل الموقع أي مسؤولية قانونية حيال ذلك (ويتحمل كاتبها مسؤولية النشر)