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

   

محمد يسرى محمد
:: مهندس متميز ::
تاريخ التسجيل: Apr 2010
المشاركات: 525
نشاط [ محمد يسرى محمد ]
قوة السمعة:
قديم 05-09-2010, 11:30 PM المشاركة 41   
افتراضي



اخى م.وسام
شكرا على المتابعة
ممكن تبعتلى الملف الخاص بالبرنامج
كل ما اريده
ال hex و ال c

اعلانات

محمد يسرى محمد
:: مهندس متميز ::
تاريخ التسجيل: Apr 2010
المشاركات: 525
نشاط [ محمد يسرى محمد ]
قوة السمعة:
قديم 06-09-2010, 12:38 AM المشاركة 42   
Thumbs up


اخى م.وسام
انا انتهيت من عمل ملف proteus

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

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

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

محمد يسرى محمد
:: مهندس متميز ::
تاريخ التسجيل: Apr 2010
المشاركات: 525
نشاط [ محمد يسرى محمد ]
قوة السمعة:
قديم 06-09-2010, 01:34 AM المشاركة 43   
افتراضي


اخى وسام
انا جربت البرنامج بعد عمل التعديل اللى انت قلتلى عليه
ولكن للاسف بتظهر رسائل خطا تانية
هى
غير مفهومة بالنسبة لى
مثلا بيقول ان هناك خطا فى السطر رقم 85
الرسالة هى
syntax error expected
) but 1 found

ياريت تبعتلى البرنامج اللى عندك
علشان اقدر اكمل المشروع
وشكرا


الصورة الرمزية حيدر علاج حسن
حيدر علاج حسن
:: مشرف منتدى الهندسة الكهربائية ::
تاريخ التسجيل: Mar 2005
الدولة: IRAQ
المشاركات: 9,848
نشاط [ حيدر علاج حسن ]
قوة السمعة:
قديم 06-09-2010, 01:45 AM المشاركة 44   
افتراضي


الله يسلمك ويبارك فيك .. وهذا كله بفضل الله الذي من علينا بالمهندس أحمد سمير فايد الذي أفادني كثير في هذا المجال فلا تنسوه من دعواتكم

بالنسبة لسؤالك عن adcon1 فلو نظرت إلى الرجستر في الداتا شيت تجده بهذا الشكل



البتات من 0 إلى 3 هي configuration control bit
أي أنها هي التي تتحكم باعدادات البورت A عندما يكون أنالوج

واذا نظرت اسفل تجد جدول به التفاصيل وهذا هو الجدول



لاحظ اني وضعت اول اربع بتات 1110
وبملاحظة الجدول نجد أني وضعت الـ Vref+ و Vref- تساوي 5 و 0 أي مثل الفولت الي يغذي البيك وهذا يعني أن أقل فولت سوف يقرأه البيك هو 4.88 ميلي فولت
ثم جعلت البورت A0 أنالوج وباقي البورتات ديجيتال
ولهذا كتبنا adcon1=0b00001110;

أتمنى أن تكون الفكرة وصلت
المفروض ان الرقم 1110 يحدد اي المنافذ رقمي و ايها تناظري . لحد الان مفهوم .
لكن ما علاقة هذه المنافذ بتحديد الجهد 5 فولت ؟ وكيف نجعله 3 فولت مثلا ؟

مع جزيل الشكر .


التعديل الأخير تم بواسطة : حيدر علاج حسن بتاريخ 06-09-2010 الساعة 01:48 AM

محمد يسرى محمد
:: مهندس متميز ::
تاريخ التسجيل: Apr 2010
المشاركات: 525
نشاط [ محمد يسرى محمد ]
قوة السمعة:
قديم 06-09-2010, 11:46 PM المشاركة 45   
ha


اخى وسام
اين انت
طال غيابك علينا


الصورة الرمزية حيدر علاج حسن
حيدر علاج حسن
:: مشرف منتدى الهندسة الكهربائية ::
تاريخ التسجيل: Mar 2005
الدولة: IRAQ
المشاركات: 9,848
نشاط [ حيدر علاج حسن ]
قوة السمعة:
قديم 07-09-2010, 12:42 AM المشاركة 46   
افتراضي


صححت بعض الاخطاء البسيطة تباعا حتى وصلت الى هذا الخطأ . و هو في نهاية البرنامج تقريبا .

الكود بعد التعديل .

كود:
char m=0,ww=0,result=0,result_t=0; char number[]={'x',' ','9','8','7','x','6','5','4','x','3','2','1','x','x','0','x'}; char number2[]={'x',' ',9,8,7,'x',6,5,4,'x',3,2,1,'x','x',0,'x'}; char tens=0,ones=0; char tens1=0,ones1=0; unsigned long temp,aa; int kk; int x; char txt[14]; ///////////////////////////////// Controlling the relay according to the degree: void on() { result=(tens*10)+ones; result_t=(tens1*10)+ones1; if(result>99 || result<1) {Lcd_Cmd(Lcd_Clear);lcd_out_cp("error"); delay_ms(1000); return;} x=result_t/60; while(1) { for(x=0; x<result_t; x--) { delay_ms(1000); temp=adc_read(0); temp=(temp*5000)>>10; temp=temp/10; longToStr(temp,txt); lcd_out(1,1,"temp = "); lcd_out(2,1,txt); lcd_chr_cp('C'); delay_ms(500); lcd_cmd(lcd_clear); if(temp<result) { portd.f0=1; } else {portd.f0=0;} } } } void main() { adcon1=0b00001110; // using Port A as analog to digital converting trisa=0xff;// using Port A as in put trisd=0; Keypad_Init(&PORTC); // Using Port C for Keypad lcd_init(&portb); // Using POrt B for LCD lcd_cmd(LCD_CURSOR_OFF); lcd_out(1,1,"Enter the Degree"); lcd_out(2,1," C"); /////////////////////////////////////Entering Degree loop: //testing the first pushing down m=keypad_read(); if(m==0) {goto loop;} else if(m==14){goto loop;} else if(m==16){Lcd_Cmd(Lcd_Clear); goto loop;} else {Lcd_Cmd(Lcd_Clear); tens=number2[m];lcd_chr_cp(number[m]); delay_ms(500);} test: //testing the second pushing down m=keypad_read(); if(m==0) {goto test;} else if(m==14) {ones=tens;tens=0;on();goto testt;} else if(m==16) {Lcd_Cmd(Lcd_Clear);goto loop;} else {ones=number2[m];lcd_chr_cp(number[m]);delay_ms(500);} testt: //testing the third pushing down m=keypad_read(); if(m==0) {goto testt;} else if(m==14){goto loop2;} else if(m==16){Lcd_Cmd(Lcd_Clear);goto loop;} else {goto testt;} /////////////////////////////// Entering Time by mints loop2: //testing the first pushing down lcd_cmd(lcd_clear); lcd_out(1,1,"Enter the Time"); ww=keypad_read(); if(ww==0) {goto loop2;} else if(ww==14){goto loop2;} else if(ww==16){Lcd_Cmd(Lcd_Clear);goto loop;} else {Lcd_Cmd(Lcd_Clear); tens1=number2[m]; lcd_chr_cp(number[m]);delay_ms(500);} test: //testing the second pushing down ww=keypad_read(); if(ww==0) {goto test;} else if(ww==14){ones1=tens;tens1=0;on();goto testt;} else if(ww==16){Lcd_Cmd(Lcd_Clear);goto loop;} else {ones=number2[m];lcd_chr_cp(number[m]);delay_ms(500);} testt: //testing the third pushing down ww=keypad_read(); if(ww==0) {goto testt;} else if(ww==14){on();} else if(ww==16){Lcd_Cmd(Lcd_Clear);goto loop;} else {goto testt;} }
و هذا هو الخطأ .



eng_sam
:: مهندس متواجد ::
تاريخ التسجيل: Oct 2009
المشاركات: 99
نشاط [ eng_sam ]
قوة السمعة:
قديم 07-09-2010, 01:07 AM المشاركة 47   
افتراضي


المفروض ان الرقم 1110 يحدد اي المنافذ رقمي و ايها تناظري . لحد الان مفهوم .
لكن ما علاقة هذه المنافذ بتحديد الجهد 5 فولت ؟ وكيف نجعله 3 فولت مثلا ؟

مع جزيل الشكر .
السلام عليكم اخي حيدر اتمني ان تكون بتمام الصحة والعافية

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


http://www.4shared.com/file/Qv6IRVF1...g2Digital.html


تفضل اخي حيدر ملف بيشرح كيفية التحويل من انلاج لديجيتال
وفي المسجلات الخاصة بهذه العملة والجداول التي تسئل عنها واذا احتجت شرح اكتر للملف فانا جاهز


[IMG]file:///C:/DOCUME%7E1/SAMY/LOCALS%7E1/Temp/moz-screenshot.jpg[/IMG][IMG]file:///C:/DOCUME%7E1/SAMY/LOCALS%7E1/Temp/moz-screenshot-1.jpg[/IMG] [IMG]file:///C:/DOCUME%7E1/SAMY/LOCALS%7E1/Temp/moz-screenshot-2.jpg[/IMG]


محمد يسرى محمد
:: مهندس متميز ::
تاريخ التسجيل: Apr 2010
المشاركات: 525
نشاط [ محمد يسرى محمد ]
قوة السمعة:
قديم 07-09-2010, 02:06 AM المشاركة 48   
افتراضي


استاذى حيدر
شكرا لمشاركتك القيمة
كلامك صحيح فعلا هناك 2 خطا فى السطرين
73 و 79
انا قمت بحذف الاسطر من اول 73 وحتى الاخر
وعندما قمت بمحاولة بناء المشروع
تم تنفيذه بلا ادنى مشاكل



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