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

   

محمد بندق
:: زائر ::
المشاركات: n/a
نشاط [ محمد بندق ]
قوة السمعة:
قديم 12-06-2013, 04:51 PM المشاركة 489   
ha شكر وتقدير واحترام ثم سؤال



الشكر الى الله سبحانة وتعالى ثم الى الاستاذ ناصر وباقى الاعضاء
لقد قمت بتصميم ليد ماتركس وتعمل الحمد لله بشكل جيد
وصنعت منها خمس قطع
ولكنى اريد ان يخرج النص من الاسفل الى اعلى والعكس
وكذلك ثبات الكلمة فى المنتصف
الشئ الثانى انى كنت استخدم 16F84A على اللد ماتركس
ثم استخدم 16F628A لان ذاكرتة اكبر ولكن كانت المشكلة انه لا يعرض الداتا ويعمل على تسخين 7805
رجاء المساعدة

اعلانات

الصورة الرمزية ناصراحمد2
ناصراحمد2
:: عضو ذهبي ::
تاريخ التسجيل: Jul 2009
الدولة: EGYPT
المشاركات: 1,315
نشاط [ ناصراحمد2 ]
قوة السمعة:
قديم 12-06-2013, 07:49 PM المشاركة 490   
افتراضي


الشكر الى الله سبحانة وتعالى ثم الى الاستاذ ناصر وباقى الاعضاء
لقد قمت بتصميم ليد ماتركس وتعمل الحمد لله بشكل جيد
وصنعت منها خمس قطع
ولكنى اريد ان يخرج النص من الاسفل الى اعلى والعكس
وكذلك ثبات الكلمة فى المنتصف
الشئ الثانى انى كنت استخدم 16F84A على اللد ماتركس
ثم استخدم 16F628A لان ذاكرتة اكبر ولكن كانت المشكلة انه لا يعرض الداتا ويعمل على تسخين 7805
رجاء المساعدة
السلام عليكم ورحمة الله وبركاتة
اتمنى ان تجد الرد على استفساراتك هنا باذن الله
http://www.qariya.com/vb/showthread.php?t=96939
اما بخصوص المتكاملة 7805 فالسخونة شىء طبيعى
وعليك وضع قطعة من الالمنيوم ملامسة لها لامتصاص السخونة (كما تجدها فى بعض الاجهزة )
اما اذا كانت السخونة زيادة عن العادى فيمكنك كتابة موضوع خاص مع وضع صورة للهاردوير الموجود عندك
تحياتى
ودعواتى لكم بالتوفيق جميعا ان شاء الله


التعديل الأخير تم بواسطة : ناصراحمد2 بتاريخ 12-06-2013 الساعة 08:16 PM
اعلانات اضافية ( قم بتسجيل الدخول لاخفائها )

الصورة الرمزية facenewlife
facenewlife
:: مهندس متواجد ::
تاريخ التسجيل: Sep 2011
الدولة: المغرب
المشاركات: 77
نشاط [ facenewlife ]
قوة السمعة:
قديم 17-06-2013, 12:07 PM المشاركة 491   
win انوه الى تصحيح هذا الكود


(الدرس السادس)


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




بسم الله الرحمن الرحيم



كيف الحال جميعا؟
اتمنى ان تكونو بخير وعافية وفهم
::::::::::::::::::::::::::::
ركزو جدا على فهم هههههههههههههههههه
"""""""""""""""""""""""""""""""""""""""""""""""""" """"""""""""""""""""""""""
وهانحن قد وصلنا سويا الى الدرس السادس فى مشوارنا نحو التعامل مع الماتركس led matrix
وقد تعلمنا سويا فى الدروس السابقة

كيف يتم بناء ماتركس كامل بميكرو واحد فقط

وكيف يمكننا ادراج جملة كاملة فى ماتركس مكون من واحد ميكرو
وبعدها انتقلنا الى التعامل مع المزيحات
واخترنا مسجل الازاحة 74hc164
وقمنا بحمد الله بعمل ماتركس متكامل 8x8 فى درسنا الخامس.

(((((((((((((((((((((((((((((((((((((((((((((((((( (((((((((((((((((((((((

اليوم ان شاء الله لن نذهب بعيدا عن ماسبق

ولكننا سوف نتوسع قليلا مع استخدامنا كل ماسبق فى الدرس الخامس
وسوف نستبدل الماتركس 8x8 الى ماتريكس 8x32
فكرت ان نعطى اليوم درسنا فى كيفية اظهار جملة باللغة العربية تتحرك من اليسار الى اليمين
وبعد قليل تظهر جملة باللغة الانجليزية تتحرك طبعا من اليمين الى اليسار
ولكنى تذكرت ؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟
اننا تعودنا ان لا نقفذ قفزات سريعة فى الموضوع
+++++++++++++++++++++++++++++++++++++++++



اليكم هذة الصورة وهى للتوضيح فقط

لكيفية توصيل الماتركس مع مسجلات الازاحة والميكرو

وبالطبع بعد مانقوم بالتوصيلات كما هو موضح

نقوم بتحديد مربع الماتركس ونختار سهم الالتفاف ونعدل الوضع ونقرب المكعبات الى بعضها البعض

اعتقد ان جميعا يعرف ذلك ؟





((((((((((((((((((((())))))))))))))))))))))))))))) ))))))))))

عموما هذة الصورة قمت بترتيب الماتركسات نسبيا

(معلش الماوس معاكسنى كتير اليوم خخخخخخخخخخخخخ)



عموما بقدر المستطاع

كما نلاحظ فى الصور هنا ان الماتركسات كلها تعطى نفس الشكل



وهو اخر جزء من لفظ الجلالة المتحرك


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

الجزء الاوسط كان عبارة عن 8 خطوات لمسجل الازاحة والخطوة هنا تعنى

خطوة للامام ..............................ياترى فاكرين ولالا


______________________________________



وهكذا دخلنا الى درسنا الجديد دون ان نشعر باى تغيير


نعم

وللتوضيح اكثر


ننتبة جميعا الى الكلمات القادمة


اولا سوف نقوم بتجزئة الكود السابق الى 3 اجزاء



وهى:

الجزء الاول

اعلى الكود

وهو عبارة عن الداتا التى سوف نرسلها (تشاهدها العين على الشاشة)


الجزء الاوسط
وهو مجموعة الاوامر الخاصة بالكود

وفى درسنا رقم (5) قمنا بالتحرك 8 خطوات للامام ....................صح ام لا؟



والجزء الاخير من الكود

قد اعطيناة اسم (التبديل)


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


55555555555555555555555555555555555555555555555555


اعتقد ان بعضنا قد فهم الان فى اى جزء سوف نعمل اليوم مممممممممممممم



نعم

سوف نعمل فقط فى الجزء الاوسط


لان مشروعنا اليوم هو 8x32 وهذا معناه ان رقم 8 ثابت انما الجديد هو 32

وهو مانتحرك فى خطواتنا تجاهة


وهكذا نفهم اننا لكى نصنع ال 8x32 سوف نحتاج الى 32 خطوة للامام


خخخخخخخخخخخخخخخ



ياترى فاهمانين ولا مو فاهمنين ؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟


(((((((((((((((((((((((((((((((((((((((((((((((((( ((((((((((((((((((((((((((((((

عموما الان لدينا 32 عمود

وبامكاننا ان نزيد من الداتا (العرض)

لكى نصل بة الى 32 او حتى اكثر

وسوف نقوم بكتابة وسط الكود وسوف يتضمن 32 خطوة للامام




قبل ان اضع لكم الكود


قمت بتصوير البرنامج وهو يعمل


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

حتى لا تعانون من الرفع والتحميل ههههههههههههههههه


نلاحظ ان التصوير يتحرك ببطىء اعتقد السبب برنامج التصوير


http://www.youtube.com/watch?v=XKaEDeQ4GEE




والان اليكم الكود



كود:
char d0=0b00000000; char d1=0b00000000; char d2=0b11111110; char d3=0b11111110; char d4=0b00000000; //// char d5=0b11111110; char d6=0b11111110; char d7=0b00000110; char d8=0b00000110; char d9=0b11111110; char d10=0b11111110; char d11=0b00000110; char d12=0b00000110; char d13=0b00111110; char d14=0b00101110; char d15=0b00101000; char d16=0b00011000; char d17=0b00000000; //// char d18=0b00000000; char d19=0b00000000; char d20=0b00000000; ////// char d21=0b11111111; char d22=0b11111111; char d23=0b00000110; char d24=0b00111000; char d25=0b01100000; char d26=0b11111111; char d27=0b11111111; ///// char d28=0b00000000; char d29=0b00000000; char d30=0b00010000; char d31=0b00111000; char d32=0b01111100; char d33=0b11111110; char d34=0b00111000; char d35=0b00111000; //// char d36=0b00111000; char d37=0b00111000; char d38=0b00111000; char d39=0b11111110; char d40=0b11101110; char d41=0b11000110; char d42=0b10000010; char d43=0b10000010; char d44=0b00000000; char d45=0b00000000; char x; void main() { TRISA=0; TRISB=0; portb=0; porta=0; loop: for (x=0;x<32;x++) { porta.f2=1; //////////////////////////////////////// porta.f1=1; porta.f1=0; portb=d45; delay_us(250); //// porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0; portb=d44; delay_us(250); porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0; portb=d43; delay_us(250); porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0; portb=d42; delay_us(250); porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0; portb=d41; delay_us(250); porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0; portb=d40; delay_us(250); porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0; portb=d39; delay_us(250); porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0; portb=d38; delay_us(250); porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0; portb=d37; delay_us(250); porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0; portb=d36; delay_us(250); porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0; portb=d35; delay_us(250); porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0; portb=d34; delay_us(250); porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0; portb=d33; delay_us(250); porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0; portb=d32; delay_us(250); porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0; portb=d31; delay_us(250); porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0; portb=d30; delay_us(250); porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0; portb=d29; delay_us(250); porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0; portb=d28; delay_us(250); //// porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0; portb=d27; delay_us(250); porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0; portb=d26; delay_us(250); porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0; portb=d25; delay_us(250); porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0; portb=d24; delay_us(250); porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0; portb=d23; delay_us(250); porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0; portb=d22; delay_us(250); porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0; portb=d21; delay_us(250); porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0; portb=d20; delay_us(250); porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0; portb=d19; delay_us(250); porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0; portb=d18; delay_us(250); porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0; portb=d17; delay_us(250); porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0; portb=d16; delay_us(250); porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0; portb=d15; delay_us(250); porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0; portb=d14; delay_us(250); porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0; portb=d13; delay_us(250); porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0; portb=d12; delay_us(250); porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0; } d0=d1; d1=d2; d2=d3; d3=d4; d4=d5; d5=d6; d6=d7; d7=d8; d8=d9; d9=d10; d10=d11; d11=d12; d12=d13; d13=d14; d14=d15; d15=d16; d16=d17; d17=d18; d18=d19; d19=d20; d20=d21; d21=d22; d22=d23; d23=d24; d24=d25; d25=d26; d26=d27; d27=d28; d28=d29; d29=d30; d30=d31; d31=d32; d32=d33; d33=d34; d34=d35; d35=d36; d36=d37; d37=d38; d38=d39; d39=d40; d40=d41; d41=d42; d42=d43; d43=d44; d44=d45; d45=d0; goto loop; }

معنا فى هذا الكود

تم ادراج داتا تحتوى على 45 عمود

يشمل كلمة ((لفظ الجلالة )) ثم بعدها حرف N ثم سهم


وكل هذا يتحرك من اليسار الى اليمين


ملاحظة


فلنتذكر جميعا


عملية التبديل فى الاتجاهات


ماهى الا مجرد ترتيب اخراج الداتا

فلو كانت اول خطوة = اول سطر من الداتا

فالحركة سوف تكون من اليمين الى اليسار

واذا كانت اول خطوة =اخر سطر من الداتا


فالعكس


اتمنى ان تكون هذة النقطة واضحة

لانها تحتاج الى فهم
وسوف نستخدم الاتنين معا فى دروسنا القادمة ان شاء الله


++++++++++++++++++++++++++++++++++++++++


فلنعود الان الى درس اليوم




لو قارنت بين هذا الكود وماسبق من الاكواد

فلن تجد تغييرا الى فى وسط الكود فقط



ففى الاكواد السابقة كنا نتحرك خطوة للامام ثم نرسل داتا


فكنا نتحرك 8 خطوات

لاننا كنا من قبل نتعامل فى حدود ال8 اعمدة


اما اليوم فلدينا32 عمود


ولذلك لو قمت بالعد للخطوات سوف تجدهم 32 خطوة


وهذة هى الخطوة الاخيرة على سبيل المثال

كود:
portb=d12; delay_us(250); porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;

وسوف نجد ايضا ان الديلاى ( delay_us ) او فترة الانتظار اقل من قبل

وهذة فقط لنزيد من سرعة الحركة وليس الا

:hry:

فكلما ذادت المدة كانت الحركة ابطا وكلما قلت المدة يكون البرنامج اسرع


هذا بالاضافة الى عدد مرات الاعادة الموجودة فى اسفل كلمة لوووب loop
والموجودة فى امر فور for

اذا ذاد العدد تكون الحركة ابطا والعكس صحيح






؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟



ياترى فية اى حد فاهم حاجة خخخخخخخخخخخخخخخ


ياريت اللى فهم حاجة يفهمنى










===================================


==============================




========================



والان اليكم هذة الصورة لدرسنا اليوم


بعد مشاهدة الصورة سوف نعرف جميعا لماذا قمت بوضع صورة توضيحية فى اعلى الدرس توضح التوصيلات هههههههههههههه









==================





اعتقد ان هذا الدرس يحتاج الى وقت كبير للهضم

ولذلك وكالمعتاد



اذهب لرش الماء لانى ايضا كالمعتاد دائما انساة







وبعد رش الماء



اترككم مع اجهزتكم



ممممممممممم



وانتم تعرفون الباقى هههههههههههه











دمتم فى رعاية الله




سبحان الله وبحمدة سبحان الله العظيم









(انتظرونا)فى الدروس القادمة
فمازال النهر يجرى
لاحظو معي هل هذا السطر صحييييح ؟؟؟


loop:

for (x=0;x<32;x++) {
porta.f2=1;
////////////////////////////////////////
porta.f1=1; porta.f1=0;

وشكرا


الصورة الرمزية facenewlife
facenewlife
:: مهندس متواجد ::
تاريخ التسجيل: Sep 2011
الدولة: المغرب
المشاركات: 77
نشاط [ facenewlife ]
قوة السمعة:
قديم 17-06-2013, 01:28 PM المشاركة 492   
x3 كلمة شكر و تقدير


شكرا شــــكـــــــــــــــــــــرا .

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


الصورة الرمزية ناصراحمد2
ناصراحمد2
:: عضو ذهبي ::
تاريخ التسجيل: Jul 2009
الدولة: EGYPT
المشاركات: 1,315
نشاط [ ناصراحمد2 ]
قوة السمعة:
قديم 17-06-2013, 09:16 PM المشاركة 493   
افتراضي


شكرا شــــكـــــــــــــــــــــرا .

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

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


اما بخصوص استفسارك السابق


كود:
    لاحظو معي هل هذا السطر صحييييح ؟؟؟
loop: 

for (x=0;x<32;x++) {
porta.f2=1;
////////////////////////////////////////
porta.f1=1; porta.f1=0;
السطر الاول :
هو بداية لوووب للكود بالكامل .
السطر الثانى:
هو عمل حلقة تكرارية تتكون من 32 مرة
السطر الثالث:
هذا الامر يطبق نبضة موجبة على مسجل الازاحة
وهذا يقوم بعمل تجهيز لمسجل الازاحة لتكون الداتا موجبة
السطر الرابع
فهذا الامر هو يجعل البن رقم 1 فى البورت a
يقوم بعمل نبضة موجبة ثم سالبة
وهذة النبضة تعنى خطوة للامام
ولان مسجل الازاحة اخذ امر موجب فى السطر الثالث فسوف تكون الخطوة موجبة .
اتمنى ان اكون وضحت الفكرة لديك


التعديل الأخير تم بواسطة : ناصراحمد2 بتاريخ 17-06-2013 الساعة 09:34 PM

الصورة الرمزية facenewlife
facenewlife
:: مهندس متواجد ::
تاريخ التسجيل: Sep 2011
الدولة: المغرب
المشاركات: 77
نشاط [ facenewlife ]
قوة السمعة:
قديم 07-07-2013, 10:38 AM المشاركة 494   
Thumbs up شكرا لك اخي أحمد ناصر .


السلام عليكم ورحمة الله وبركاتة
احيانا كثيرة جدا جدا يكون بيننا وبين النجاح خطوات قليلة
ونقرر الانسحاب .
ولذلك انصح الجميع بهذة الجملة
((اذا بدات فاكمل للنهاية ...او لا تبدا اساسا ))
ففى اغلب الاحيان نندم على اشياء كثيرة بداناها ولم نكملها ثم نكتشف فيما بعد اننا كنا على بعد خطوات من النجاح .

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


اما بخصوص استفسارك السابق


كود:
    لاحظو معي هل هذا السطر صحييييح ؟؟؟
loop: 

for (x=0;x<32;x++) {
porta.f2=1;
////////////////////////////////////////
porta.f1=1; porta.f1=0;
السطر الاول :
هو بداية لوووب للكود بالكامل .
السطر الثانى:
هو عمل حلقة تكرارية تتكون من 32 مرة
السطر الثالث:
هذا الامر يطبق نبضة موجبة على مسجل الازاحة
وهذا يقوم بعمل تجهيز لمسجل الازاحة لتكون الداتا موجبة
السطر الرابع
فهذا الامر هو يجعل البن رقم 1 فى البورت a
يقوم بعمل نبضة موجبة ثم سالبة
وهذة النبضة تعنى خطوة للامام
ولان مسجل الازاحة اخذ امر موجب فى السطر الثالث فسوف تكون الخطوة موجبة .
اتمنى ان اكون وضحت الفكرة لديك

كل ما نصل له هو بفضل الله ثم بفضلكم جزاكم الله خيرا . فشكرا على كل المساعدات و الدروس التي تصهرون لانجازها .؟



امــا بخصوص استفساري هو اني استبدلت pic16f84 ببيك اخر pic16f628 أو pic16f88 و برمجته فلم تعمل معي في الماتريس علما أني في جميع التطبيقات لا أعمل بuln2003. و أنا أشك في اعدادات fuses . أو استعمال uln2003 لزيادة الجهد ؟؟

أرجوا المساعدة لاني متوقف بسبب هذا المشكل ؟


الصورة الرمزية ناصراحمد2
ناصراحمد2
:: عضو ذهبي ::
تاريخ التسجيل: Jul 2009
الدولة: EGYPT
المشاركات: 1,315
نشاط [ ناصراحمد2 ]
قوة السمعة:
قديم 08-07-2013, 02:34 AM المشاركة 495   
angry


كل ما نصل له هو بفضل الله ثم بفضلكم جزاكم الله خيرا . فشكرا على كل المساعدات و الدروس التي تصهرون لانجازها .؟



امــا بخصوص استفساري هو اني استبدلت pic16f84 ببيك اخر pic16f628 أو pic16f88 و برمجته فلم تعمل معي في الماتريس علما أني في جميع التطبيقات لا أعمل بuln2003. و أنا أشك في اعدادات fuses . أو استعمال uln2003 لزيادة الجهد ؟؟

أرجوا المساعدة لاني متوقف بسبب هذا المشكل ؟
السلام عليكم ورحمة الله وبركاتة
اولا شكرا لكلامك الطيب وبارك الله فيك فالفضل لله وحدة ثم لكم جميعا اعضاء واساتذة القرية فكلنا نتعلم من بعضنا البعض .
اما بخصوص استفسارك
فلم افهم بالظبط ماهى المشكلة
وماصلة ال uln2003 بان يعمل المشروع او لا ؟؟
لان كل المشاريع فى الدروس هنا لم نستخدم بها اى uln بل وبدون اى ترانسستورات وهى فقط للتعلم والتدريب ثم بعد لك تضع تلك الاضافات .
لكن على العموم :
بشكل عام مهما اختلف البك فاننا نستخدم فى الدرس السادس كمثال
نستخدم عدد 2 بن من البورت a لتحريك مسجلات الازاحة
ونستخدم البورت B لاخراج الداتا
وبالتاكيد طبعا كل المتحكمات بها نفس البورتين المذكورين .
==============
وهذا يؤكد ان الخطا كما ذكرت فى اعدادات الميكروسى عندك

عموما هى نفس الخيارات فى البك 84 ولكن سوف تزيد ايضا خيار
لا اتذكر الان بالظبط ولكن يوجد خيار LV مش متذكر بالظبط ولكن سوف تجد هذا الخيار بة نفس الحرفين اختر of
وطبعا اختر نوع الكريستالة XT او HS كلاهما يعمل
والاهم من كل هذا هو التاكد من توصيلات بمسجلات الازاحة

اضافة اخرى هامة
ضع فى بداية الكود بعد void main(){
cmcon=0x07;
دون تغيير اى شىء اخر فى الكود

}
هذا الكود مهم جدا للبكات 628 و 877 وغيرهم
وهو لجعل البورت a يعمل كانالوج
وهذا الامر
;adcon1 = 0x07 هذا لجعل البورتات تعمل كديجيتال
ولزيادة فى المعلومات بخصوص هذة النقطة
http://www.qariya.com/vb/showthread.php?t=108182


وجل من لا يسهو

تحياتى للجميع


التعديل الأخير تم بواسطة : ناصراحمد2 بتاريخ 08-07-2013 الساعة 04:27 AM

الصورة الرمزية facenewlife
facenewlife
:: مهندس متواجد ::
تاريخ التسجيل: Sep 2011
الدولة: المغرب
المشاركات: 77
نشاط [ facenewlife ]
قوة السمعة:
قديم 09-07-2013, 10:23 AM المشاركة 496   
win


السلام عليكم ورحمة الله وبركاتة
اولا شكرا لكلامك الطيب وبارك الله فيك فالفضل لله وحدة ثم لكم جميعا اعضاء واساتذة القرية فكلنا نتعلم من بعضنا البعض .
اما بخصوص استفسارك
فلم افهم بالظبط ماهى المشكلة
وماصلة ال uln2003 بان يعمل المشروع او لا ؟؟
لان كل المشاريع فى الدروس هنا لم نستخدم بها اى uln بل وبدون اى ترانسستورات وهى فقط للتعلم والتدريب ثم بعد لك تضع تلك الاضافات .
لكن على العموم :
بشكل عام مهما اختلف البك فاننا نستخدم فى الدرس السادس كمثال
نستخدم عدد 2 بن من البورت a لتحريك مسجلات الازاحة
ونستخدم البورت B لاخراج الداتا
وبالتاكيد طبعا كل المتحكمات بها نفس البورتين المذكورين .
==============
وهذا يؤكد ان الخطا كما ذكرت فى اعدادات الميكروسى عندك

عموما هى نفس الخيارات فى البك 84 ولكن سوف تزيد ايضا خيار
لا اتذكر الان بالظبط ولكن يوجد خيار LV مش متذكر بالظبط ولكن سوف تجد هذا الخيار بة نفس الحرفين اختر of
وطبعا اختر نوع الكريستالة XT او HS كلاهما يعمل
والاهم من كل هذا هو التاكد من توصيلات بمسجلات الازاحة

اضافة اخرى هامة
ضع فى بداية الكود بعد void main(){
cmcon=0x07;
دون تغيير اى شىء اخر فى الكود

}
هذا الكود مهم جدا للبكات 628 و 877 وغيرهم
وهو لجعل البورت a يعمل كانالوج
وهذا الامر
;adcon1 = 0x07 هذا لجعل البورتات تعمل كديجيتال
ولزيادة فى المعلومات بخصوص هذة النقطة
http://www.qariya.com/vb/showthread.php?t=108182


وجل من لا يسهو

تحياتى للجميع

ألف شكر لك أخي ناصر جزاك الله خيرا .

طبعا عندما أضفت cmcon=0x07; في الكود بدأت تعمل تظهر الرسالة على الماتريس بشكل جيد .
لاحظت ان الماتريس تتقطع في الكتابة علما ان كل توصيلات الرجستر 164 صحيحة . هذا هو الكود و شكرا مرة أخرى.


....
....
....
....
char d151=0b00000000;
char d152=0b00000000;
char d153=0b00000000;
char d154=0b00000000;
char d155=0b00000000;

char x;
void main() {
TRISA=0;
TRISB=0;
portb=0;
porta=0;
CMCON = 0x07;

for (x=0;x<32;x++) {

////////////////////////////////////////
porta.f1=1; porta.f1=0;
portb=a0; delay_us(280);
////
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=a1; delay_us(280);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=a2; delay_us(280);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=a3; delay_us(280);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=a4; delay_us(280);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=a5; delay_us(280);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=a6; delay_us(280);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=a7; delay_us(280);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=a8; delay_us(280);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=a9; delay_us(280);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=a10; delay_us(280);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=a11; delay_us(280);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=a12; delay_us(280);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=a13; delay_us(280);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=a14; delay_us(280);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=a15; delay_us(280);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=a16; delay_us(280);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=a17; delay_us(280);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=a18; delay_us(280);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=a19; delay_us(280);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=a20; delay_us(280);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=a21; delay_us(280);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=a22; delay_us(280);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=a23; delay_us(280);
}


for (x=0;x<32;x++) {

////////////////////////////////////////
porta.f1=1; porta.f1=0;
portb=n1; delay_us(280);
////
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=n2; delay_us(280);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=n3; delay_us(280);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=n4; delay_us(280);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=n5; delay_us(280);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=n6; delay_us(280);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=n7; delay_us(280);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=n8; delay_us(280);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=n9; delay_us(280);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=n10; delay_us(280);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=n11; delay_us(280);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=n12; delay_us(280);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=n13; delay_us(280);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=n14; delay_us(280);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=n15; delay_us(280);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=n16; delay_us(280);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=n17; delay_us(280);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=n18; delay_us(280);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=n19; delay_us(280);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=n20; delay_us(280);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=n21; delay_us(280);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=n22; delay_us(280);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=n23; delay_us(280);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=n24; delay_us(280);
}
loop:
for (x=0;x<32;x++) {

////////////////////////////////////////
porta.f1=1; porta.f1=0;
portb=d0; delay_us(80);
////
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=d1; delay_us(80);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=d2; delay_us(80);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=d3; delay_us(80);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=d4; delay_us(80);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=d5; delay_us(80);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=d6; delay_us(80);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=d7; delay_us(80);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=d8; delay_us(80);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=d9; delay_us(80);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=d10; delay_us(80);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=d11; delay_us(80);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=d12; delay_us(80);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=d13; delay_us(80);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=d14; delay_us(80);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=d15; delay_us(80);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=d16; delay_us(80);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=d17; delay_us(80);

porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=d18; delay_us(80);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=d19; delay_us(80);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=d20; delay_us(80);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=d21; delay_us(80);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=d22; delay_us(80);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=d23; delay_us(80);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=d24; delay_us(80);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=d25; delay_us(80);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=d26; delay_us(80);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=d27; delay_us(80);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=d28; delay_us(80);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=d29; delay_us(80);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=d30; delay_us(80);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=d31; delay_us(80);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=d32; delay_us(80);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
portb=d33; delay_us(80);
porta.f0=1;porta.f1=1; porta.f1=0; porta.f0=0;
}
d0=d1;
d1=d2;
d2=d3;
d3=d4;
d4=d5;
d5=d6;
d6=d7;
d7=d8;
d8=d9;
d9=d10;
d10=d11;
d11=d12;
d12=d13;
d13=d14;
d14=d15;
d15=d16;
d16=d17;
d17=d18;
d18=d19;
d19=d20;
d20=d21;
d21=d22;
d22=d23;
d23=d24;
d24=d25;
d25=d26;
d26=d27;
d27=d28;
d28=d29;
d29=d30;
d30=d31;
d31=d32;
d32=d33;
d33=d34;
d34=d35;
d35=d36;
d36=d37;
d37=d38;
d38=d39;
d39=d40;
d40=d41;
d41=d42;
d42=d43;
d43=d44;
d44=d45;
d45=d46;
d46=d47;
d47=d48;
d48=d49;
d49=d50;
d50=d51;
d51=d52;
d52=d53;
d53=d54;
d54=d55;
d55=d56;
d56=d57;
d57=d58;
d58=d59;
d59=d60;
d60=d61;
d61=d62;
d62=d63;
d63=d64;
d64=d65;
d65=d66;
d66=d67;
d67=d68;
d68=d69;
d69=d70;
d71=d72;
d72=d73;
d73=d74;
d74=d75;
d75=d76;
d76=d77;
d77=d78;
d78=d79;
d79=d80;
d80=d81;
d81=d82;
d82=d83;
d83=d84;
d84=d85;
d85=d86;
d86=d87;
d87=d88;
d88=d89;
d89=d90;
d90=d91;
d91=d92;
d92=d93;
d93=d94;
d94=d95;
d95=d96;
d96=d97;
d97=d98;
d98=d99;
d99=d100;
d100=d101;
d101=d102;
d102=d103;
d103=d104;
d104=d105;
d105=d106;
d106=d107;
d107=d108;
d108=d109;
d109=d110;
d110=d111;
d111=d112;
d112=d113;
d113=d114;
d114=d115;
d115=d116;
d116=d117;
d117=d118;
d118=d119;
d119=d120;
d120=d121;
d121=d122;
d122=d123;
d123=d124;
d124=d125;
d125=d126;
d126=d127;
d127=d128;
d128=d129;
d129=d130;
d130=d131;
d131=d132;
d132=d133;
d133=d134;
d134=d135;
d135=d136;
d136=d137;
d137=d138;
d138=d139;
d140=d141;
d141=d142;
d142=d143;
d143=d144;
d144=d145;
d145=d146;
d146=d147;
d147=d148;
d148=d149;
d149=d150;
d150=d151;
d151=d152;
d152=d153;
d153=d154;
d154=d155;
d155=d0;


goto loop;
}



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