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

   

hassan.pic
:: مهندس متميز ::
تاريخ التسجيل: Aug 2016
المشاركات: 300
نشاط [ hassan.pic ]
قوة السمعة:
قديم 27-09-2016, 07:40 PM المشاركة 241   
افتراضي



حياك الله اخي العزيز ، غدا باذن الله سارسل لك النسخة اللتي اعمل عليها وعلي خيرة الله

اعلانات

hassan.pic
:: مهندس متميز ::
تاريخ التسجيل: Aug 2016
المشاركات: 300
نشاط [ hassan.pic ]
قوة السمعة:
قديم 27-09-2016, 11:33 PM المشاركة 242   
افتراضي


char letter_p [] ={0xff,0xff,0x09,0x09,0x0f,0x06};
char letter_i[] ={0x00,0x81,0xff,0xff,0x81,0x00};
char letter_c[] ={0x1c,0x3e,0x41,0x41,0x41,0x22};
char i=0; char shift=0, count=0;
void TIMER0()iv 0x0004 ics ICS_AUTO{
if(INTCON.TMR0IF==1){INTCON.TMR0IF=0;
COUNT++;
if(count>=8){count=0;
shift++;}
}
}
void main() { INTCON |=1<<GIE| 1<<T0IE;
OPTION_REG &=~1<<T0CS &~1<<PSA;
OPTION_REG |=0X07;
trisb=0;
portb=0;
cmcon=7;
trisa=0x01;
while(1){
while(porta.b0==1){}
vdelay_ms(shift *1);

for(i=0;i<6;i++){portb=letter_p[i]; delay_us(300);}
portb=0; delay_us(500);
for(i=0;i<6;i++){portb=letter_i[i] ; delay_us(300);}
portb=0; delay_us(500);
for(i=0;i<6;i++){portb=letter_c[i] ; delay_us(300);}
portb=0; delay_us(500);
}
}

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

hassan.pic
:: مهندس متميز ::
تاريخ التسجيل: Aug 2016
المشاركات: 300
نشاط [ hassan.pic ]
قوة السمعة:
قديم 27-09-2016, 11:58 PM المشاركة 243   
افتراضي


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


hassan.pic
:: مهندس متميز ::
تاريخ التسجيل: Aug 2016
المشاركات: 300
نشاط [ hassan.pic ]
قوة السمعة:
قديم 28-09-2016, 12:13 AM المشاركة 244   
افتراضي


اخي العزيز حياك الله هذا الكود للبيك 628 والبيك 84 طبعا مع الغاء cmcon=7; والغريب بالامر ان البيك 628 اشتغل تمام بس فيه مشكلة عند تحرك الحروف تصل الى نصف الدائرة بعدها تعود من البداية بينما في البيك 84 تدور الحروف دون مشكلة الى مالا نهاية : دمتم بامان الله اخي العزيز


hassan.pic
:: مهندس متميز ::
تاريخ التسجيل: Aug 2016
المشاركات: 300
نشاط [ hassan.pic ]
قوة السمعة:
قديم 28-09-2016, 12:28 AM المشاركة 245   
افتراضي


هذه الصور المبدئية


مشتاق الله
:: مهندس متميز ::
تاريخ التسجيل: Oct 2015
المشاركات: 619
نشاط [ مشتاق الله ]
قوة السمعة:
قديم 28-09-2016, 09:53 AM المشاركة 246   
sun


بسم الله الرحمن الرحيم

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


نسخة البرنامج الاخيرة ,
ان شاء الله قم بتقليل قيمة count مثلا count >= 4 لزيادة السرعة ثم جرب معها زيادة التاخير مثلا vdelay_ms(shift *3);.
نسخة البرنامج :
كود:
char letter_p[] ={0xff,0xff,0x09,0x09,0x0f,0x06};
char letter_i[] ={0x00,0x81,0xff,0xff,0x81,0x00};
char letter_c[] ={0x1c,0x3e,0x41,0x41,0x41,0x22};

char i=0, shift=0, count=0;

void TIMER0()iv 0x0004 ics ICS_AUTO{
if(INTCON.TMR0IF==1){INTCON.TMR0IF=0;
    count++;
    if(count>=8)
    {
        count=0;
        shift++;
    }
  }
}

void main() { INTCON |=1<<GIE| 1<<T0IE;
OPTION_REG &=~1<<T0CS &~1<<PSA;
OPTION_REG |=0X07;
trisb=0;
portb=0;
cmcon=7;
trisa=0x01;
    while(1){
        while(porta.b0==1){}
        vdelay_ms(shift *1);

        for(i=0;i<6;i++){portb=letter_p[i]; delay_us(300);}
        portb=0; delay_us(500);
        for(i=0;i<6;i++){portb=letter_i[i] ; delay_us(300);}
        portb=0; delay_us(500);
        for(i=0;i<6;i++){portb=letter_c[i] ; delay_us(300);}
        portb=0; delay_us(500);
    }
}



و الله ولى التوفيق


اللهم اجعلنا مؤمنين حقا
و علمنا ما ينفعنا و ينفع بنا
اللهم اكتب حياة ترضيك و ميتة تضحكك منا




hassan.pic
:: مهندس متميز ::
تاريخ التسجيل: Aug 2016
المشاركات: 300
نشاط [ hassan.pic ]
قوة السمعة:
قديم 28-09-2016, 02:55 PM المشاركة 247   
افتراضي


السلام عليكم اخي العزيز ، بعرف اني عم ثقل عليك اتحملني الله يخليك ،ههههه ، غيرت كما طلب اصبحت الحروف تقفز قفز والنتيجة الافضل نضع delay علي 1 تمشي الحروف بدون قفز والان نحن امام مشكلتين ،المشكلة الاولي والاهم الحروف عندما تمشي تومض وكانها فلاشر وتوقعت انها اصطلحت وللاسف هكذا كماشرحتلك وحاولت ارسلك فيديو ولكن النت عنا سي جدا والمشكلة الثانية سرعة تحرك الحروف ، وجازاك الله بالف خير،حياك الله اخي العزيز


مشتاق الله
:: مهندس متميز ::
تاريخ التسجيل: Oct 2015
المشاركات: 619
نشاط [ مشتاق الله ]
قوة السمعة:
قديم 28-09-2016, 08:01 PM المشاركة 248   
sun


بسم الله الرحمن الرحيم

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

اخى العزيز خذ النسخة الجديدة هذه ثم قم بتجربتها , ثم بتغيير قيمة 300 فى الامر التاخير varDelay(shift * 300) بالزيادة او النقصان .
و عرفنا و بالله التوفيق .

كود:
char letter_p[] ={0xff,0xff,0x09,0x09,0x0f,0x06};
char letter_i[] ={0x00,0x81,0xff,0xff,0x81,0x00};
char letter_c[] ={0x1c,0x3e,0x41,0x41,0x41,0x22};

char i=0, shift=0, count=0;

void TIMER0()iv 0x0004 ics ICS_AUTO{
if(INTCON.TMR0IF==1){INTCON.TMR0IF=0;
    count++;
    if(count>=8)
    {
        count=0;
        shift++;
    }
  }
}
void varDelay_us( unsigned int us){
     for (i=0; i<(us/5); i++)
     {
      delay_us(5);
     }
}

void main() { INTCON |=1<<GIE| 1<<T0IE;
OPTION_REG &=~1<<T0CS &~1<<PSA;
OPTION_REG |=0X07;
trisb=0;
portb=0;
//cmcon=7;
trisa=0x01;
    while(1){
        while(porta.b0==1){}
         varDelay_us(shift *300);
        for(i=0;i<6;i++){portb=letter_p[i]; delay_us(300);}
        portb=0; delay_us(500);
        for(i=0;i<6;i++){portb=letter_i[i] ; delay_us(300);}
        portb=0; delay_us(500);
        for(i=0;i<6;i++){portb=letter_c[i] ; delay_us(300);}
        portb=0; delay_us(500);
    }
}


و الله ولى التوفيق


اللهم اجعلنا مؤمنين حقا
و علمنا ما ينفعنا و ينفع بنا
اللهم اكتب حياة ترضيك و ميتة تضحكك منا






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