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

   

الصورة الرمزية المظلوم
المظلوم
:: مهندس متميز ::
تاريخ التسجيل: Oct 2011
الدولة: BH
المشاركات: 636
نشاط [ المظلوم ]
قوة السمعة:
قديم 30-03-2013, 12:50 AM المشاركة 9   
افتراضي



تذكرت انني سابقا قمت بمحاولة تشغيل الشاشة ولم استطع ،، وعندما قمت ببناء البرنامج على المايكرو سي العادي " اي ليس البرو " ،، عمل بشكل صحيح ،،

من يستطيع ان يقوم ببناء البرنامج
ورفع ملف الهيكس ،، فسأكون شاكرا له ،

اعلانات

الصورة الرمزية المظلوم
المظلوم
:: مهندس متميز ::
تاريخ التسجيل: Oct 2011
الدولة: BH
المشاركات: 636
نشاط [ المظلوم ]
قوة السمعة:
قديم 30-03-2013, 02:16 AM المشاركة 10   
افتراضي


أهلا ،،

قمت بتنزيل برنامج مايكروسي ،، وقمت بنسخ البرنامج والتعديل عليه بما يتناسب ،، ولكن للأسف ما زالت المشكلة قائمة لحد الآن ! ،،


شعور كريه لما تحاول تعمل دائرة بسيطة كهذه ** ولا تعمل !! ،،


ما هو الخطأ ،،


ارجوا من احد الأخوة ،، كتابة برنامجبسيطلكتابة كلمة "TEST" فقط على الشاشة (16 *2 ) باستخدام البك 16f877a ،، وسأقوم بتجريبة ،، مع مراعاة ان التوصيل يكون على أساس الأسطر التالية :

كود:
// LCD module connections
sbit LCD_RS at RB4_bit;
sbit LCD_EN at RB5_bit;
sbit LCD_D4 at RB0_bit;
sbit LCD_D5 at RB1_bit;
sbit LCD_D6 at RB2_bit;
sbit LCD_D7 at RB3_bit;

sbit LCD_RS_Direction at TRISB4_bit;
sbit LCD_EN_Direction at TRISB5_bit;
sbit LCD_D4_Direction at TRISB0_bit;
sbit LCD_D5_Direction at TRISB1_bit;
sbit LCD_D6_Direction at TRISB2_bit;
sbit LCD_D7_Direction at TRISB3_bit;
// End LCD module connections
ارجو ان يكون التردد إما 20 ميغا هرتز او 4 ميغا هرتز ،،


ارجو كتابة ملف البرنامج من احد الأخوة ورفعه هنا ،، حتى اقوم بتجريبه ،، وأتحقق من الخلل !!




شكرا ،،

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

الصورة الرمزية حيدر علاج حسن
حيدر علاج حسن
:: مشرف منتدى الهندسة الكهربائية ::
تاريخ التسجيل: Mar 2005
الدولة: IRAQ
المشاركات: 9,848
نشاط [ حيدر علاج حسن ]
قوة السمعة:
قديم 30-03-2013, 05:53 AM المشاركة 11   
افتراضي


تفضل اخي ....
http://www.4shared.com/rar/HtsrprjG/_online.html

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


التعديل الأخير تم بواسطة : حيدر علاج حسن بتاريخ 30-03-2013 الساعة 05:57 AM

الصورة الرمزية المظلوم
المظلوم
:: مهندس متميز ::
تاريخ التسجيل: Oct 2011
الدولة: BH
المشاركات: 636
نشاط [ المظلوم ]
قوة السمعة:
قديم 30-03-2013, 01:34 PM المشاركة 12   
افتراضي


تفضل اخي ....
http://www.4shared.com/rar/HtsrprjG/_online.html

فقط القليل من الصبر . هكذا هو التعامل مع التصاميم الالكترونية ...
احيانا نقع في اخطاء تافهه تؤخرنا يومين او ثلاث حتى نكتشفها ..
لا تنصدم عندما لا تعمل دائرتك من اول تجربة لكي لا تفقد تركيزك و يصعب عليك اكتشاف الخطا ...
أهلا أخي الكريم ،،

أشكرك كل الشكر ،، على وقتك الثميين ،، ولكن للأسف للآن لم يتغير شيء في الأوت بوت ،، !

هل هناك امل ان الشاشة لا تعمل ؟ ،، " يعني خراب ؟ " ،،



الماستر كلير موصل ،
الكريستالة 4 ميغا موصله ،،
الـ VDD ,والــ VSS موصلين ،! في الطرفين اليمين واليسار ،

تم التأكد من التوصيلات اكثر من مرة ،،



ماذا استطيع ان اجرب ايضا ؟!



تمنياتي


الصورة الرمزية حيدر علاج حسن
حيدر علاج حسن
:: مشرف منتدى الهندسة الكهربائية ::
تاريخ التسجيل: Mar 2005
الدولة: IRAQ
المشاركات: 9,848
نشاط [ حيدر علاج حسن ]
قوة السمعة:
قديم 30-03-2013, 03:14 PM المشاركة 13   
افتراضي


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


التعديل الأخير تم بواسطة : حيدر علاج حسن بتاريخ 30-03-2013 الساعة 03:26 PM

الصورة الرمزية المظلوم
المظلوم
:: مهندس متميز ::
تاريخ التسجيل: Oct 2011
الدولة: BH
المشاركات: 636
نشاط [ المظلوم ]
قوة السمعة:
قديم 30-03-2013, 09:28 PM المشاركة 14   
افتراضي


أهلا ،،

عملت الدائرة ولله الحمد ،، وسأحاول الآن رفع البرنامج الذي اعمل عليه في الأصل ،، واتمنى ان يعمل ايضا !،،


سأعود بالنتيجة !


التعديل الأخير تم بواسطة : المظلوم بتاريخ 30-03-2013 الساعة 09:39 PM

الصورة الرمزية المظلوم
المظلوم
:: مهندس متميز ::
تاريخ التسجيل: Oct 2011
الدولة: BH
المشاركات: 636
نشاط [ المظلوم ]
قوة السمعة:
قديم 30-03-2013, 10:47 PM المشاركة 15   
افتراضي


السلام عليكم ،،


الآن مشكلة الشاشة انتهت ،، وحتى في البرنامج الثاني اشتغلت الشاشة ،، ولكن تبقى الآن مشكلة البرنامج نفسه ! ،، لا اعلم ،، هل الكود يحتاج إلى شيء آخر ام لا ،،


طبعا انا استخدم هذا الحساس ،، وهو حساس للمسافة "

http://www.parallax.com/dl/docs/prod...GP2D12Snrs.pdf


وهذه هي الدائرة :


http://upload.qariya.info/images/qar...7af329ea37.jpg

وهذا هو الكود :



كود:
//LCD Pin Definition
sbit LCD_RS at RB4_bit;
sbit LCD_EN at RB5_bit;
sbit LCD_D7 at RB3_bit;
sbit LCD_D6 at RB2_bit;
sbit LCD_D5 at RB1_bit;
sbit LCD_D4 at RB0_bit;
//CD TRIS Definition
sbit LCD_RS_Direction at TRISB4_bit;
sbit LCD_EN_Direction at TRISB5_bit;
sbit LCD_D7_Direction at TRISB3_bit;
sbit LCD_D6_Direction at TRISB2_bit;
sbit LCD_D5_Direction at TRISB1_bit;
sbit LCD_D4_Direction at TRISB0_bit;

void main( void )
{
     //Variables Declaration  .
     unsigned int Radc, DisI;
     float Dis;
     char Text[16];
     //Set the ADC module with pin AN3
     //as positive reference voltage.
     ADCON1 = 0b11000001;
     //Initiation LCD
     Lcd_Init();
     //Clearing the cursor.
     Lcd_Cmd(_LCD_CURSOR_OFF);
     //Printing text.
     Lcd_Out( 1, 1, "Distance:");

     while(1) //Infinite Loop.
     {
              //Reading analog channel 0 .
              Radc=ADC_Read(0);
              //Implementation of the transfer function Equation
              Dis = (14226.02784/Radc)-4.793814433;
              //force the result to an integer value.
              DisI=Dis;
              //convert the integer value to string.
              IntToStr( DisI, Text );
              //Print the sensor reading.
              Lcd_Out( 2, 1, Text );
              //Delay 100m-seconds.
              delay_ms(100);
     }
}


طبعا الدائرة والكود قام بعملمها احد المهندسسين في منتدى آخر ،، والكود يعمل في البروتوس ولكن لا يعمل في الحقيقة ،، المسافة تكون متذبذبه ،، ام غير حقيقية ،، كيف يمكن تحسين اداء الدائرة !! او الكود


الكود وملف البروتوس في الرابط التالي :

http://www.4shared.com/get/pWHIZRoj/...ce_sensor.html



شكرا ،،


التعديل الأخير تم بواسطة : المظلوم بتاريخ 30-03-2013 الساعة 10:51 PM

الصورة الرمزية المظلوم
المظلوم
:: مهندس متميز ::
تاريخ التسجيل: Oct 2011
الدولة: BH
المشاركات: 636
نشاط [ المظلوم ]
قوة السمعة:
قديم 30-03-2013, 11:38 PM المشاركة 16   
افتراضي


أهلا أخواني


قمت بتسجيل بعض الأرقام ووضعتها في جدول ،، حيث يتبين في الجدول القياس الحقيقي ،، والقياس المعروض في الشاشة ،،، وجهد الخرج من حساس المسافة !

والجدول في الرابط الآتي :


http://upload.qariya.info/images/qar...3555df8303.jpg


هناك اختلاف بين الداتا شيت ،، والقياس في الواقع ،،


الصورة التالية من الداتا شيت وتبين المسافة ،، وجهد الخرج :

http://upload.qariya.info/images/qar...09762e4dda.jpg




تمنياتي



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