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

   

hamadalla31
:: مهندس متميز ::
تاريخ التسجيل: Mar 2009
المشاركات: 585
نشاط [ hamadalla31 ]
قوة السمعة:
قديم 11-03-2014, 11:16 PM المشاركة 33   
x6 بارك الله لك واثابك بكل ماتحب من خيري الدنيا والأخرة



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

اعلانات

الصورة الرمزية حسن هادي محمود
حسن هادي محمود
:: عضو ذهبي ::
تاريخ التسجيل: Sep 2012
الدولة: العراق /البصره
المشاركات: 2,673
نشاط [ حسن هادي محمود ]
قوة السمعة:
قديم 12-03-2014, 05:47 AM المشاركة 34   
افتراضي


السلام عليكم
استاذي الكريم حسن هادي
الحمد لله نجحت التجربة ولكني لاحظت انني كلما قللت زمن العرض تثبت الأرقام ولكن تخفت الإضاءة كثيرا وكلما زاد الزمن للعرض زادت الرعشة وزادت الإضاءة كثيرا فما هي الحسابات الصحيحة لعدد من شاشات العرض بحث تكون الإضاءة ثابته وجيدة..... قال لي صديق ان المقاطعات وتيمر زيرو يجعل تشغيل الشاشات في خلفية البرنامج و لايتاثر بتنفيذ اكواد وأوامر البرنامج فهل هذا كلام صحيح وكيف يتم ...
بارك الله لك في علمك وعملك ودينك ودنياك
السلام عليكم
طبعا اخي زياده زمن بزيد فتره الاضاءه وعكس عند تقليل زمن بتقل اضاءه وطبعا انت يجب ان لايزيد زمن كلي عن 20 ملي ثانيه لان بعد ذلك سوف على عمليه الخداع البصري
بالنسبه للمقاطعات طبعا هذا افضل سحاول اعاده ترتيب برنامج الاخير واعيد تحميله لك
مع تزويدك ببرنامج يعطيك كود جاهز لكل تايمرات
عموما البرنامج ممكن تحميله من موقع الرسمي لشركه مايكروشيب
http://www.mikroe.com/timer-calculator/

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

الصورة الرمزية حسن هادي محمود
حسن هادي محمود
:: عضو ذهبي ::
تاريخ التسجيل: Sep 2012
الدولة: العراق /البصره
المشاركات: 2,673
نشاط [ حسن هادي محمود ]
قوة السمعة:
قديم 12-03-2014, 06:21 AM المشاركة 35   
افتراضي


السلام عليكم
تم استخدام المقاطعه وتحدث كل 1 ملي ثانيه
https://www.mediafire.com/?6kyeoir0dhuszwr
وهذا هو كود جديد
كود:
//Timer0
//Prescaler 1:8; TMR0 Preload = 6; Actual Interrupt Time : 1 ms

//Place/Copy this part in declaration section
void InitTimer0(){
  OPTION_REG         = 0x82;
  TMR0                 = 6;
  INTCON         = 0xA0;
}

void Interrupt(){
  if (TMR0IF_bit){
    TMR0IF_bit         = 0;
    TMR0                 = 6;
    //Enter your code here

  if(se==0){
            porte.f0=0;
            porte.f0=1;
            PORTA.F1=0;
            PORTA.F1=1;
            PORTA.F0=1;
          }
       PORTA.F1=0;
       PORTA.F1=1;
       PORTA.F2=0;
       PORTA.F2=1;
       portb=~segment[num[se]];
       PORTA.F0=0;

   se++;
   if(se==16)se=0;


  }
}
تم تغير تردد كرستاله الى 8 ميكا
ملاحظه// لايجوز استدعاء داله داخل داله الانتربت ولهذا وضعت اوامر reset لاحظ بلون احمر
طبعا يحدث ريسيت عندما تكتمل تشغيل كل شاشات سفن سكمنت


hamadalla31
:: مهندس متميز ::
تاريخ التسجيل: Mar 2009
المشاركات: 585
نشاط [ hamadalla31 ]
قوة السمعة:
قديم 12-03-2014, 08:58 AM المشاركة 36   
x6 بارك الله لك واثابك بكل ماتحب من خيري الدنيا والأخرة


وعليكم السلام ورحمة الله وبركاته
اشكرك استاذي الكريم علي مجهوك الكبير راجيا من الله ان يجعله في سجل حسناتك
قلت لي اخي الكريم ان زمن العرض الكلي لا يتجاوز 20 ملي ثانية
يعني لو فرضنا ان لدي 30 شاشة للعرض الرقمي فهل احسبها
20000/30= 666 ميكرو ثانية هي زمن العرض لكل شاشة
وهو الرقم الخاص بتأخير جملة for فهل حسابي هكذا صحيحا ام كيف احسبها بصورة رياضيه صحيحة....بارك الله لك
قمت بتحميل البرنامج... TimerCalculator وان شاء الله ساحاول ان استخدمة بطريقة صحيحة وسؤالي حوله لماذا اخترت قيمة 1 مللي ثانية وهذا ليس اعتراض علي القيمة ولكن من باب التعلم كيف احسب هذه القيمة باسلوب صحيح

هل يمكنني ان اغير تردد الكريستاله كما علمتني لآن البيك الموجود عندي لايقبل العمل الا علي 4 ميجا فقط
اشكرك اخي الحبيب وبارك الله لك


الصورة الرمزية حسن هادي محمود
حسن هادي محمود
:: عضو ذهبي ::
تاريخ التسجيل: Sep 2012
الدولة: العراق /البصره
المشاركات: 2,673
نشاط [ حسن هادي محمود ]
قوة السمعة:
قديم 12-03-2014, 10:02 AM المشاركة 37   
افتراضي


وعليكم السلام ورحمة الله وبركاته
اشكرك استاذي الكريم علي مجهوك الكبير راجيا من الله ان يجعله في سجل حسناتك
قلت لي اخي الكريم ان زمن العرض الكلي لا يتجاوز 20 ملي ثانية
يعني لو فرضنا ان لدي 30 شاشة للعرض الرقمي فهل احسبها
20000/30= 666 ميكرو ثانية هي زمن العرض لكل شاشة
وهو الرقم الخاص بتأخير جملة for فهل حسابي هكذا صحيحا ام كيف احسبها بصورة رياضيه صحيحة....بارك الله لك
قمت بتحميل البرنامج... TimerCalculator وان شاء الله ساحاول ان استخدمة بطريقة صحيحة وسؤالي حوله لماذا اخترت قيمة 1 مللي ثانية وهذا ليس اعتراض علي القيمة ولكن من باب التعلم كيف احسب هذه القيمة باسلوب صحيح

هل يمكنني ان اغير تردد الكريستاله كما علمتني لآن البيك الموجود عندي لايقبل العمل الا علي 4 ميجا فقط
اشكرك اخي الحبيب وبارك الله لك
السلام عليكم
نعم يمكن تغير تردد كرستاله الى 4 ولكن لابد من ضبط داله الانتربت وكتالي
كود:
//Timer0
//Prescaler 1:4; TMR0 Preload = 6; Actual Interrupt Time : 1 ms

//Place/Copy this part in declaration section
void InitTimer0(){
  OPTION_REG         = 0x81;
  TMR0                 = 6;
  INTCON         = 0xA0;
}

void Interrupt(){
  if (TMR0IF_bit){
    TMR0IF_bit         = 0;
    TMR0                 = 6;
    //Enter your code here
    if(se==0){
            porte.f0=0;
            porte.f0=1;
            PORTA.F1=0;
            PORTA.F1=1;
            PORTA.F0=1;
           }
       PORTA.F1=0;
       PORTA.F1=1;
       PORTA.F2=0;
       PORTA.F2=1;
       portb=~segment[num[se]];
       PORTA.F0=0;

   se++;
   if(se==16)se=0;
  }
ملاحظه اعيد ضبط تردد كرستاله في بروتيس ومايكروسي على 4 ميكا
================================================
اما لحساب الزمن الكلي فبطبع الا يتجاوز 20 ملي ثانيه او اكثر بقليل وحساباتك صحيحه ولكن لا اعلم اذا قل زمن مثلا عن1 ملي هل يشتغل سفن سكمنت ام لا فهذه تحتاج الى تجربه ذلك
ولكن بالتاكيد عليك بتغذيه كمن عبر ترانزستور لرفع التيار حتى تتمكن من اعطاء اضاءه واضحه للسفن سكمنت


التعديل الأخير تم بواسطة : حسن هادي محمود بتاريخ 12-03-2014 الساعة 10:06 AM

الصورة الرمزية حسن هادي محمود
حسن هادي محمود
:: عضو ذهبي ::
تاريخ التسجيل: Sep 2012
الدولة: العراق /البصره
المشاركات: 2,673
نشاط [ حسن هادي محمود ]
قوة السمعة:
قديم 12-03-2014, 10:17 AM المشاركة 38   
افتراضي


السلام عليكم
اخي كريم انا وضعت زمن الانتربت 500us يعني زمن كلي =0.5 * 16=8ms
ومره وضعت 2ms يعني زمن كلي =2*16=36ms
وعملت بشكل جيد في بروتيس ولكن عمليا لااعرف ذلك عليك بتجربه ذلك
تحياتي الطيبه لكم


hamadalla31
:: مهندس متميز ::
تاريخ التسجيل: Mar 2009
المشاركات: 585
نشاط [ hamadalla31 ]
قوة السمعة:
قديم 12-03-2014, 04:31 PM المشاركة 39   
x6 بارك الله لك واثابك بكل ماتحب من خيري الدنيا والأخرة


السلام عليكم
اخي كريم انا وضعت زمن الانتربت 500us يعني زمن كلي =0.5 * 16=8ms
ومره وضعت 2ms يعني زمن كلي =2*16=36ms
وعملت بشكل جيد في بروتيس ولكن عمليا لااعرف ذلك عليك بتجربه ذلك
تحياتي الطيبه لكم
وعليكم السلام ورحمة الله وبركاته
اجرب بمشيئة الله ثم اتبع معك
بارك الله لك


hamadalla31
:: مهندس متميز ::
تاريخ التسجيل: Mar 2009
المشاركات: 585
نشاط [ hamadalla31 ]
قوة السمعة:
قديم 12-03-2014, 06:24 PM المشاركة 40   
sun بارك الله لك واثابك بكل ماتحب من خيري الدنيا والأخرة


السلام عليكم استاذي الحبيب
جربت النتيجة ممتازة ولكن الإضاءة خافته ركبت ترنزيستورات علي الكومون من البداية
فإذا فكرت في تغيير زمن العرض فهل اغيرة من الإنتربت وكيف بارك الله لك

استخدمت البرنامج TimerCalculator في حساب زمن الانتربت ولكني رجعت الي
الزمن 1 مللي هو افضل عرض في الواقع
لكن لدي مشكلة جديده اختفي سيجمنت الدي من العرض بالرغم ان كل شئ كهربيا مضبوط وغيرت البيك فلا توجد اشارة علي رجل البن الخاصة بإشارة سيجمن الدي
جزاكم الله عني بك خير


التعديل الأخير تم بواسطة : hamadalla31 بتاريخ 12-03-2014 الساعة 06:59 PM


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