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

أدوات الموضوع

robota
:: عضو ذهبي ::
تاريخ التسجيل: Jul 2009
الدولة: الخرطوم_السودان
المشاركات: 926
نشاط [ robota ]
قوة السمعة:103
قديم 09-01-2010, 01:01 PM المشاركة 1   
افتراضي زيادة مداخل المايكركنترولر Twitter FaceBook Google+



السلام عليكم جميعا
انا حاليا احتاج فى احد المشاريع المهمة بالنسبة لى الى زيادة مداخل البيك واستخدم البيك 16f877a . قررت استخدام الدائرة المتكاملة 74hc165
shift register - parallel in serial out
وجربت هذا الكود
كود:
  int k ;
  void main() {
  TRISB = 0;
  trisc=0xff;
  TRISD=0;

  Lcd_Init(&PORTD);         // Initialize LCD connected to PORTB
  Lcd_Cmd(Lcd_CLEAR);       // Clear display
  Lcd_Cmd(Lcd_CURSOR_OFF);  // Turn cursor off
 for(;;)
 {
  portb.f0=1;
  portb.f1=0;
  portb.f1=1;
   for (k=0;k<8;k++)
       {
          portb.f0=0;
          delay_ms(2000);
           portb.f0=1;
           delay_ms(2000);
            }
  }

 }


لكن خرج الدائرة لا يتغير ولا يتاثر بالدخل
هنا ملف كامل للتجربة
http://www.mediafire.com/?mndwzyzlcjd
ارجو المساعدة وشكرا مقدما

اعلانات

ماجد عباس محمد
:: نائب المشرف العام
::
تاريخ التسجيل: Jun 2009
الدولة: القاهرة - مصر
المشاركات: 12,214
نشاط [ ماجد عباس محمد ]
قوة السمعة:409
قديم 09-01-2010, 05:12 PM المشاركة 2   
افتراضي


حاولت تحميل الملف مرتين ولكن اعطى Error
هل تريد فقط زيادة 8 مداخل؟ أتميل يعطيك 32 دخل بزيادة 12 عن هذا
على أى حال بالنسبة لما فعلت أجد هذه المشاكل فى البرنامج
أولا أفترض أنك قد وصلت CE بالأرضى
ثانيا لم أجد أمر يذهب لطرف PL رقم 1 لتحميل البيانات Parallel ثم العودة
ثالثا تعطى أمر لطرف ما أفترض أنه Clock ثم تنتظر 2000 مللى ثانية لماذا و الأى سى أسرع من الميكرو
رابعا لم أجد أمر للقراءة من الخرج Q7 الطرف رقم 9

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

robota
:: عضو ذهبي ::
تاريخ التسجيل: Jul 2009
الدولة: الخرطوم_السودان
المشاركات: 926
نشاط [ robota ]
قوة السمعة:103
قديم 09-01-2010, 05:34 PM المشاركة 3   
افتراضي


حاولت تحميل الملف مرتين ولكن اعطى Error
انا استخدم النسخة 7.6
هل تريد فقط زيادة 8 مداخل؟ أتميل يعطيك 32 دخل بزيادة 12 عن هذا
مشروعى يعتمد على البيك .
على أى حال بالنسبة لما فعلت أجد هذه المشاكل فى البرنامج
أولا أفترض أنك قد وصلت CE بالأرضى
نعم فعلت.
ثانيا لم أجد أمر يذهب لطرف PL رقم 1 لتحميل البيانات Parallel ثم العودة
انا قمت بهذا كما فى هذا الجزء من الكود
كود:
 portb.f0=1;
  portb.f1=0;
pl موصل بportb.f1
ثالثا تعطى أمر لطرف ما أفترض أنه Clock ثم تنتظر 2000 مللى ثانية لماذا و الأى سى أسرع من الميكرو
الclock ياخذ من البين 0 .
اما بالنسبة للزمن فهو حتى الاحظ التغير فى الخرج
رابعا لم أجد أمر للقراءة من الخرج Q7 الطرف رقم 9
انا اعتمد على ملاحظة الخرج . والمشكلة ان الخرج يظل ثابتا فى الوضع high ولا يتغير.

و شكرا على مساعدتك اتمنى ان نتوصل لحل لهذه المشكلة


الصورة الرمزية حيدر علاج حسن
حيدر علاج حسن
:: مشرف منتدى الهندسة الكهربائية ::
تاريخ التسجيل: Mar 2005
الدولة: IRAQ
المشاركات: 10,061
نشاط [ حيدر علاج حسن ]
قوة السمعة:395
قديم 09-01-2010, 06:43 PM المشاركة 4   
افتراضي


اخي احمد .
طريقة توصيلك لمسجل الازاحة غريبة !!!!
انت تجعل من مخارج المسجل مدخلات . لانك اوصلت عليها المفاتيح .
ثم ايصال المفاتيح بهذه الطريقة غير معهود حيث انك لم تستخدم مقاومات معها .

انا لم افهم بالضبط ما هو المطلوب من استخدام مسجل الازاحة هنا ..
ارجو التوضيح اكثر

حيدر علاج حسن

robota
:: عضو ذهبي ::
تاريخ التسجيل: Jul 2009
الدولة: الخرطوم_السودان
المشاركات: 926
نشاط [ robota ]
قوة السمعة:103
قديم 09-01-2010, 06:53 PM المشاركة 5   
افتراضي


اخي احمد .
طريقة توصيلك لمسجل الازاحة غريبة !!!!
انت تجعل من مخارج المسجل مدخلات . لانك اوصلت عليها المفاتيح .
ثم ايصال المفاتيح بهذه الطريقة غير معهود حيث انك لم تستخدم مقاومات معها .

انا لم افهم بالضبط ما هو المطلوب من استخدام مسجل الازاحة هنا ..
ارجو التوضيح اكثر
نعم اخى حيدر العملية هنا عكس ما تجده عند استخدام 595 لزيادة مخارج البيك
المطلوب هنا زيادة مداخل البيك وليس المخارج
shift register - parallel in serial out
اما بالنسبة للمقاومة فلا اعتقد انها تؤثر فى المحاكاة لكن ساجرب ان شاء الله
والمطلوب هو اريد قراءة 8 مفاتيح بتوصيل وانا لا املك الا ثلاث اطراف متاحة فى البيك اتنمى ان تكون الصورة قد اتضحت.


الصورة الرمزية حيدر علاج حسن
حيدر علاج حسن
:: مشرف منتدى الهندسة الكهربائية ::
تاريخ التسجيل: Mar 2005
الدولة: IRAQ
المشاركات: 10,061
نشاط [ حيدر علاج حسن ]
قوة السمعة:395
قديم 09-01-2010, 07:11 PM المشاركة 6   
افتراضي


نعم الصورة واضحة الان . لكن :
لماذا عرفت المنفذ B كخرج ؟ اعتقد هذه هي المشكلة .
ثم استخدمت المنفذ B داخل الكود و اعطيته قيم من هناك و المفروض ان قيمه يأخذها من مسجل الازاحة .

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

حيدر علاج حسن

التعديل الأخير تم بواسطة : حيدر علاج حسن بتاريخ 09-01-2010 الساعة 07:18 PM

الصورة الرمزية SAMI-ALG
SAMI-ALG
:: مهندس جيد ::
تاريخ التسجيل: Jul 2009
الدولة: الجزائر
المشاركات: 199
نشاط [ SAMI-ALG ]
قوة السمعة:0
قديم 09-01-2010, 07:20 PM المشاركة 7   
افتراضي


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

اعتقد انه يمكن زيادة عدد المخارج فقط اما العكس فهو مستحيل عن طريق استخدام مسجلات الازاحة او غيرها من الايسيهات


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

لنفرض مثلا انه لديك 1 و2 و3 هذه المداخل الرئيسة 001. 010 100

المدخل الرابع يكون 1 و2 اي توصلهم معا 011

الخامس يكون 1و3 101

السادس يكون 2و3 110

السابع يكون 1و2و3 111

والثامن عندما تيكون جميعها مفتوحة 000

طبعا هذا من منطلق اعتبار المداخل التي تحتاج اليه عبارة عن قاطعات او ازرار ..الخ


ودمت في رعاية الله وحفظه


الصورة الرمزية حيدر علاج حسن
حيدر علاج حسن
:: مشرف منتدى الهندسة الكهربائية ::
تاريخ التسجيل: Mar 2005
الدولة: IRAQ
المشاركات: 10,061
نشاط [ حيدر علاج حسن ]
قوة السمعة:395
قديم 09-01-2010, 07:35 PM المشاركة 8   
افتراضي


او تستخدم الانكودر . فهو بسيط جدا و لا يحتاج الى كود داخل المايكروسي .

حيدر علاج حسن
إضافة رد

العلامات المرجعية

«     الموضوع السابق       الموضوع التالي    »
أدوات الموضوع

الانتقال السريع إلى


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

Powered by vBulletin® Version 3.8.6, Copyright ©2000 - 2025