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

   

الصورة الرمزية المظلوم
المظلوم
:: مهندس متميز ::
تاريخ التسجيل: Oct 2011
الدولة: BH
المشاركات: 636
نشاط [ المظلوم ]
قوة السمعة:
قديم 26-08-2012, 08:42 PM المشاركة 201   
افتراضي



أهلا


اذا كنت تريد إلى اي pins موصل الــ com فهو موصل باطراف كثيرة من الأيسيهات



تمنياتي

اعلانات

WRHLAMDA
:: عضو فضي ::
تاريخ التسجيل: Feb 2005
المشاركات: 630
نشاط [ WRHLAMDA ]
قوة السمعة:
قديم 26-08-2012, 10:22 PM المشاركة 202   
افتراضي


قبل ساعات قمت بتحميل MICROC PRO من موقع مايكرواليكترونيكا ونصبتة في الحاسبة
ثم عملت مشروع جديد على PIC16F84A مع كرستالة 4MHZ

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

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

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

كود:
void main () { unsigned char step_seq; unsigned char direction; unsigned char i; TRISB=0b00000000;// all PORTB will be output and b4 b5 b6 b7 will drive the motor TRISA=0b11111111; // PORTA will be the input signal A0=step A1=direction PORTB=0b00010000; // intial state step_seq = 0; pulse_detect : do {} while (PORTA.RA0== 0); /* loop while Step signal is LO i.e. A0=0*/ /* Step signal has gone to 1 */ direction = PORTA.RA1; /* get Direction signal input*/ if (PORTA.RA0 == 0) goto pulse_detect; /* too narrow must be noise reject*/ i = PORTA.RA1; /* read A3 again and temporarily store Direction in i*/ if (direction != i) goto pulse_detect ; /* compare two samples of Direction reject if not the same */ do { } while (PORTA.RA0 == 1); /* waite for negative edge of Step signal*/ if (PORTA.RA0 ==1) goto pulse_detect ; if (direction ==0) { step_seq++; if (step_seq == 4) step_seq = 0; } else { if (step_seq == 0) step_seq = 4; step_seq--; } switch (step_seq) { case 0: PORTB = 0b00010000; break; case 1: PORTB = 0b00100000; break; case 2: PORTB = 0b01000000; break; case 3: PORTB = 0b10000000; break; default : step_seq = 0; } goto pulse_detect; }

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

WRHLAMDA
:: عضو فضي ::
تاريخ التسجيل: Feb 2005
المشاركات: 630
نشاط [ WRHLAMDA ]
قوة السمعة:
قديم 26-08-2012, 10:26 PM المشاركة 203   
افتراضي


أهلا


اذا كنت تريد إلى اي pins موصل الــ com فهو موصل باطراف كثيرة من الأيسيهات



تمنياتي
الرجل رقم 7 من الايسي 7414
والرجل 10 من الايسي 74244
هي القطب السالب للايسيات وانا اكاد اكون متاكد انها مربوطة الى ال com

ولاتنسي ان تقيس لي الفولتية على البك ؟؟؟؟ هل هي سالبة


الصورة الرمزية المظلوم
المظلوم
:: مهندس متميز ::
تاريخ التسجيل: Oct 2011
الدولة: BH
المشاركات: 636
نشاط [ المظلوم ]
قوة السمعة:
قديم 26-08-2012, 10:52 PM المشاركة 204   
افتراضي


قبل ساعات قمت بتحميل MICROC PRO من موقع مايكرواليكترونيكا ونصبتة في الحاسبة
ثم عملت مشروع جديد على PIC16F84A مع كرستالة 4MHZ

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

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

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

كود:
void main () { unsigned char step_seq; unsigned char direction; unsigned char i; TRISB=0b00000000;// all PORTB will be output and b4 b5 b6 b7 will drive the motor TRISA=0b11111111; // PORTA will be the input signal A0=step A1=direction PORTB=0b00010000; // intial state step_seq = 0; pulse_detect : do {} while (PORTA.RA0== 0); /* loop while Step signal is LO i.e. A0=0*/ /* Step signal has gone to 1 */ direction = PORTA.RA1; /* get Direction signal input*/ if (PORTA.RA0 == 0) goto pulse_detect; /* too narrow must be noise reject*/ i = PORTA.RA1; /* read A3 again and temporarily store Direction in i*/ if (direction != i) goto pulse_detect ; /* compare two samples of Direction reject if not the same */ do { } while (PORTA.RA0 == 1); /* waite for negative edge of Step signal*/ if (PORTA.RA0 ==1) goto pulse_detect ; if (direction ==0) { step_seq++; if (step_seq == 4) step_seq = 0; } else { if (step_seq == 0) step_seq = 4; step_seq--; } switch (step_seq) { case 0: PORTB = 0b00010000; break; case 1: PORTB = 0b00100000; break; case 2: PORTB = 0b01000000; break; case 3: PORTB = 0b10000000; break; default : step_seq = 0; } goto pulse_detect; }
There are 2 compilers , one called MikroC and the othor called MikroC Pro


لكن اعتقد الإثنين يقبلون نفس التعريفات بالنسبة للريجيسترات ،، يعني لما تكتب

PORTA.F0 هي نفسها PORTA.RA0 !،، والله اعلم ،،



ولكن هل عمل معك البرنامج الثاني أم لا ؟ !،، هذا هو المهم ،



تمنياتي


الصورة الرمزية المظلوم
المظلوم
:: مهندس متميز ::
تاريخ التسجيل: Oct 2011
الدولة: BH
المشاركات: 636
نشاط [ المظلوم ]
قوة السمعة:
قديم 26-08-2012, 10:56 PM المشاركة 205   
افتراضي


الرجل رقم 7 من الايسي 7414
والرجل 10 من الايسي 74244
هي القطب السالب للايسيات وانا اكاد اكون متاكد انها مربوطة الى ال com

ولاتنسي ان تقيس لي الفولتية على البك ؟؟؟؟ هل هي سالبة

ماذا تقصد بالفولتية على البك ؟ ،، هل تعني الفولتيه عند مدخل الــ dir ؟ ،، ام ماذا بالضبط ؟ ،،


هل تريد ان اتأكد إن كان com موصل ب الرجل رقم 7 من الايسي 7414
والرجل 10 من الايسي 74244 ؟ ،،

نعم هو موصل بهتين الرجلين ،، ولكنه موصل بأرجل أخرى ،، في كلتا المتكاملتين


WRHLAMDA
:: عضو فضي ::
تاريخ التسجيل: Feb 2005
المشاركات: 630
نشاط [ WRHLAMDA ]
قوة السمعة:
قديم 26-08-2012, 10:59 PM المشاركة 206   
افتراضي


There are 2 compilers , one called MikroC and the othor called MikroC Pro


لكن اعتقد الإثنين يقبلون نفس التعريفات بالنسبة للريجيسترات ،، يعني لما تكتب

PORTA.F0 هي نفسها PORTA.RA0 !،، والله اعلم ،،



ولكن هل عمل معك البرنامج الثاني أم لا ؟ !،، هذا هو المهم ،



تمنياتي
الخلل ان البرنامج كان يحوي الرمز B2 B1 وهي غير معرفة على اساس انها تابعة للبورت B

عموما الان البرنامج شغال ويمكن ان تجربة

لكن لاتنسى اجابة اسئلتي السابقة


WRHLAMDA
:: عضو فضي ::
تاريخ التسجيل: Feb 2005
المشاركات: 630
نشاط [ WRHLAMDA ]
قوة السمعة:
قديم 26-08-2012, 11:37 PM المشاركة 207   
افتراضي


ماذا تقصد بالفولتية على البك ؟ ،، هل تعني الفولتيه عند مدخل الــ dir ؟ ،، ام ماذا بالضبط ؟ ،،


هل تريد ان اتأكد إن كان com موصل ب الرجل رقم 7 من الايسي 7414
والرجل 10 من الايسي 74244 ؟ ،،

نعم هو موصل بهتين الرجلين ،، ولكنه موصل بأرجل أخرى ،، في كلتا المتكاملتين
هذه الارجل هي القطب السالب للايسات يعني ال com لازم يربط للقطب السالب

فولتية البك قصدت فولتية التغذية من مجهز القدرة

وتاكد من اقطاب الفولتميتر هل هي مربوطة فيه بطريقة صحيحة\


الصورة الرمزية المظلوم
المظلوم
:: مهندس متميز ::
تاريخ التسجيل: Oct 2011
الدولة: BH
المشاركات: 636
نشاط [ المظلوم ]
قوة السمعة:
قديم 27-08-2012, 12:19 AM المشاركة 208   
افتراضي


هذه الارجل هي القطب السالب للايسات يعني ال com لازم يربط للقطب السالب

فولتية البك قصدت فولتية التغذية من مجهز القدرة

وتاكد من اقطاب الفولتميتر هل هي مربوطة فيه بطريقة صحيحة\
أهلا أخي ،،

حتى تكون متأكدا من التوصيل في الملتيميتر هذه صورته ،،

http://www14.0zz0.com/2012/08/26/21/583888138.jpg


أما ،، الفولتية على البك ،، بعد وضع السلك الأحمر في الpin رقم 14 و السلك الأسود الــ pin رقم 5 ،، ! وكانت الفولتية تساوي موجب 5 فولت !


وهذه التوصيلة للملتيميتر انا اقيس بها ،، في كل مرة ، ولا اغير تركيب الأسلاك الأحمر والأسود عن التوصيل الذي موضح في الصورة



تمنياتي



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