اطلاعیه

Collapse
No announcement yet.

کمک در مورد عیب پروژه ی چراغ راهنمای AVR

Collapse
X
 
  • فیلتر
  • زمان
  • Show
Clear All
new posts

    کمک در مورد عیب پروژه ی چراغ راهنمای AVR

    سلام دوستا من این پروژه رو نوشتم ولی نمیدونم چرا درست کار نمیکنه من از شما دوستان عاجزانه خواهش مند یاری هستم
    راستی این پروژه رو باید زود تحویل بدم میشه شما ها یه نگاه بش بندازین؟
    http://s7.picofile.com/file/8250412326/mahdi.rar.html
    این هم لینک دانلودشه که به علت خوانا نبودن برنامه توی سایت .این جا گذاشم
    :cry: :cry: :cry: :cry: :cry:

    اضافه شده در تاریخ :
    راستی این برنامه به زبان C نوشته شده
    امام صادق عليه‏السلام :

    هرچيزى‏زكاتى دارد و زكات دانش، آموختن آن است به اهلش.

    #2
    پاسخ : کمک در مورد عیب پروژه ی چراغ راهنمای AVR

    سلام دادا
    حالا این برنامه قراره چیکار کنه که نمی کنه؟؟؟
    تشکر لازم نیست!

    دیدگاه


      #3
      پاسخ : کمک در مورد عیب پروژه ی چراغ راهنمای AVR

      [/code]
      نوشته اصلی توسط iman-63
      سلام دادا
      حالا این برنامه قراره چیکار کنه که نمی کنه؟؟؟
      داداش از اسمش پیداست .قراره از عدد 19 بشمره بیاد پایین وچراغ سبز هم از12 بشماره بیاد پایین و چراغ زرد هم 7 ثانیه روشن باشهو روی سون سگمنت هم اعداد رو نشون بده.
      ولی همیشه توی یه زمانی از برنامه ثابته و هیچ تغییری نمیکه
      راستی تو فایل .شبیه سازی هم گذاشتم که معلوم بشه برنامه توش چه خبره
      اگه کسی اطلاعاتی داره لطفا کمک کنه خیلی اورژانسیه فرکانس کلاک هم 8مگا هست
      [code=c]#include <mega16.h>
      #include <delay.h>
      int a=0;
      int d=38;
      interrupt [TIM0_OVF] void timer0_ovf_isr(void){
      a++;
      if (a>=1000){
      d--;
      a=0;
      }
      if(d<=0){
      d=36;
      }
      TCNT0=0X83;
      TCCR0=0x03; //FAAL KARDAN TIMER (TAGHSIM BAR 64 VA HALAT NORMAL)
      }
      void main(){
      unsigned char seg[]={0x40, 0x75, 0x24, 0x30, 0x15, 0x12, 0x02, 0x34, 0x00, 0x10}; //7SEG CC
      DDRD=0XFF;
      DDRB=0XFF;
      DDRC=0xFF;
      DDRA=0XFF;
      TCNT0=0X83; //1ms
      TIMSK=0x01;
      TCCR0=0X03;
      #asm("sei&quot
      while (1){


      if(d>=19){
      PORTC=0x01;
      PORTB=seg[((d-19)/10)];
      delay_ms(4);
      PORTC=0X02;
      PORTB=seg[(d-19)%10];
      delay_ms(4);
      PORTC=0x04;
      PORTB=seg[(d-26)/10];
      delay_ms(4);
      PORTC=0x08;
      PORTB=seg[(d-26)%10];
      delay_ms(4);
      }
      else{
      PORTC=0x01;
      PORTB=seg[((d-7)/10)];
      delay_ms(4);
      PORTC=0X02;
      PORTB=seg[(d-7)%10];
      delay_ms(4);
      PORTC=0x04;
      PORTB=seg[(d)/10];
      delay_ms(4);
      PORTC=0x08;
      PORTB=seg[(d)%10];
      delay_ms(4);
      }


      if (d>26){
      PORTD=0x21;
      };
      if (d<=26&&d>19) {
      PORTD=0X11;
      };
      if (d<=19&&d>7) {
      PORTD=0X0C;
      };
      if (d<=7&&d>0) {
      PORTD=0X0A;
      };

      }
      }
      [/code]
      این اولین برنامه ای هست که من نوشتم لطفا مسخره نکنید
      امام صادق عليه‏السلام :

      هرچيزى‏زكاتى دارد و زكات دانش، آموختن آن است به اهلش.

      دیدگاه


        #4
        پاسخ : کمک در مورد عیب پروژه ی چراغ راهنمای AVR

        در درجه اول لازم نیست توی اینترپت تون مرتبا تایمر رو فعال و غیر فعال کنیذ
        چه لزومی داره این کار؟

        من اینطوری اشکالی توی برنامه نمیبینم فعلا اون غیر فعال ساری و فعال سازی مجدد رو از اینترپت بردارید ببینید چه اتفاقی میفته تا بعد

        من البته خیلی وقته AVR کار نکردم لذا خیلی خوب یادم نمیاد

        اضافه شده در تاریخ :
        فکر کنم فهمیدم مشکلت چیه
        احیانا همه چراغها با هم روشن نیستن؟

        دیدگاه


          #5
          پاسخ : کمک در مورد عیب پروژه ی چراغ راهنمای AVR

          نوشته اصلی توسط hamidreza.nayeri
          در درجه اول لازم نیست توی اینترپت تون مرتبا تایمر رو فعال و غیر فعال کنیذ
          چه لزومی داره این کار؟

          من اینطوری اشکالی توی برنامه نمیبینم فعلا اون غیر فعال ساری و فعال سازی مجدد رو از اینترپت بردارید ببینید چه اتفاقی میفته تا بعد

          من البته خیلی وقته AVR کار نکردم لذا خیلی خوب یادم نمیاد
          ممنون داداش گلم که خاصر شدی به برنامه ی ما یه نگاه بندازی.
          امری رو که شما فرمودید رو برسی کردم نتیجه نداد.
          من الان دچار تضاد شخصیتی شدم همه ی استاد های ما روی این مسئله که حتما باید تایمر ها رو صفر کنی و ...پافشاری کامل دارند ولی شما میگویید که نباید این کار رو کرد
          مگه میشه مگه داریم؟؟:eek: :eek: :eek:

          اضافه شده در تاریخ :
          نوشته اصلی توسط hamidreza.nayeri
          فکر کنم فهمیدم مشکلت چیه
          احیانا همه چراغها با هم روشن نیستن؟
          نه.این هم مشکلش نیست.رفتم و امر شما هم برسی کردم و دیدم مشکلات زیر رو داره
          مشکلاتی که این مدار داره این ها هستند.1-عدم زمان بندی صحیح یعنی هر یک ثانیه عدد ها کم نمیشوند2-عدم نمایش عدد روی سون سگمنت ها3-طبق زمان بندی من باید حد اقل هر 13ثانیه در چراغ راهنما یه تغییر رخ بده ولی این اتفاق نمی افتد4-شاید چند تا مشکل دیگه هم داشته باشه ولی سوات من در همین حده
          امام صادق عليه‏السلام :

          هرچيزى‏زكاتى دارد و زكات دانش، آموختن آن است به اهلش.

          دیدگاه


            #6
            پاسخ : کمک در مورد عیب پروژه ی چراغ راهنمای AVR

            نوشته اصلی توسط mgh40007
            نه.این هم مشکلش نیست.رفتم و امر شما هم برسی کردم و دیدم مشکلات زیر رو داره
            مشکلاتی که این مدار داره این ها هستند.1-عدم زمان بندی صحیح یعنی هر یک ثانیه عدد ها کم نمیشوند2-عدم نمایش عدد روی سون سگمنت ها3-طبق زمان بندی من باید حد اقل هر 13ثانیه در چراغ راهنما یه تغییر رخ بده ولی این اتفاق نمی افتد4-شاید چند تا مشکل دیگه هم داشته باشه ولی سوات من در همین حده
            یعنی هیچی رو سون سگمنت ها نیست؟ اون مشکلی که من فکر میکنم اینه که یا همه سگمنت ها روشنن یا هیچی نمایش داده نمیشه
            تایمر هم چون اور فلو هستش خودش صفر میشه نیاز نیست شما صفرش کنی

            اضافه شده در تاریخ :
            ببخشید شما تو حلقه اصلی تون برک گذاشتید (اون دو تا if اول رو میگم)
            این باشه میشه از حلقه اصلی خارج بشید.

            ضمن این وقتی حلقه اصلی تون رو درست کردید همه سگمنت های شما دارن با سرعت زیادی روشن خاموش میشن این باعث میشه چشم انسان نتونه روشن خاموش شدنشون رو تشخیص بده
            البته این به شرط اینه که مدارتون درست باشه. شماتیک مدارتون رو هم میذارید؟

            اون برک های شرط ها رو بردارید باعث میشن شما از حلقه اصلی بیاید بیرون. به جاشون continue بذارید

            دیدگاه


              #7
              پاسخ : کمک در مورد عیب پروژه ی چراغ راهنمای AVR

              نوشته اصلی توسط hamidreza.nayeri
              یعنی هیچی رو سون سگمنت ها نیست؟ اون مشکلی که من فکر میکنم اینه که یا همه سگمنت ها روشنن یا هیچی نمایش داده نمیشه
              تایمر هم چون اور فلو هستش خودش صفر میشه نیاز نیست شما صفرش کنی

              اضافه شده در تاریخ :
              ببخشید شما تو حلقه اصلی تون برک گذاشتید (اون دو تا if اول رو میگم)
              این باشه میشه از حلقه اصلی خارج بشید.

              ضمن این وقتی حلقه اصلی تون رو درست کردید همه سگمنت های شما دارن با سرعت زیادی روشن خاموش میشن این باعث میشه چشم انسان نتونه روشن خاموش شدنشون رو تشخیص بده
              البته این به شرط اینه که مدارتون درست باشه. شماتیک مدارتون رو هم میذارید؟

              اون برک های شرط ها رو بردارید باعث میشن شما از حلقه اصلی بیاید بیرون. به جاشون continue بذارید
              دمت گرم داداش خیلی اقایی امری رو که شما گفتی انجام دادم و برنامه ی بالا رو ویرایش کردم و برای دستورات سون سگمنت هم دستور تاخیر 10msگذاشتم مشکلی که حالا دارم اینه که 1-یا سرعت شمارش خیلی بالاست یا اینکه فقط یکی دو عدد رو به صورت چشمک زن داره نشون میده2-دیگه چراغ های راهنما چیزی نشون نمیدهند

              امام صادق عليه‏السلام :

              هرچيزى‏زكاتى دارد و زكات دانش، آموختن آن است به اهلش.

              دیدگاه


                #8
                پاسخ : کمک در مورد عیب پروژه ی چراغ راهنمای AVR

                خواهش میکنم
                کد جدیدت رو هم بذار لطفا
                البته الان نیستم شب میبینم بهت میگم

                دیدگاه


                  #9
                  پاسخ : کمک در مورد عیب پروژه ی چراغ راهنمای AVR

                  نوشته اصلی توسط hamidreza.nayeri
                  خواهش میکنم
                  کد جدیدت رو هم بذار لطفا
                  البته الان نیستم شب میبینم بهت میگم
                  کد جدید رو با کد قبلی جایگذین کردم
                  توی کامنتی که کد برنامه رو گذاشتم میتونید مشاهده کنید :agree:
                  امام صادق عليه‏السلام :

                  هرچيزى‏زكاتى دارد و زكات دانش، آموختن آن است به اهلش.

                  دیدگاه


                    #10
                    پاسخ : کمک در مورد عیب پروژه ی چراغ راهنمای AVR

                    سلام دوست عزیز اولاً مقدار tcnt0 رو باید بیاری تو روال وقفه تا اینطوری بعد هر سرریز مقدار اولیه بگیره در غیر اینصورت فقط برای اولین بار مقدار اولیه میگیره و بعد،بعد هر سرریز مقدار اولیه تایمر، صفر میشه
                    دوماً بعد انجام این کار هر دفعه که a برابر ۱/۰۰۰ بشه، یعنی ۱ ثانیه، نه ۱۰/۰۰۰
                    فعلاً این کارها رو انجام بده تا بقیه کد رو بررسی کنیم
                    [آموزشی] کنترل رله با پیامک توسط sim800l
                    [آموزشی] راه اندازی سنسورهای DHT11 و DHT22 با کدویژن
                    [آموزشی] مدار عملی اتصال میکروفن خازنی به میکروکنترلر
                    [آموزشی] آموزش نحوه راه اندازی میکروهای fmd
                    صفحه اینستاگرام : ecdco_ir

                    دیدگاه


                      #11
                      پاسخ : کمک در مورد عیب پروژه ی چراغ راهنمای AVR

                      نوشته اصلی توسط reza babatabar
                      سلام دوست عزیز اولاً مقدار tcnt0 رو باید بیاری تو روال وقفه تا اینطوری بعد هر سرریز مقدار اولیه بگیره در غیر اینصورت فقط برای اولین بار مقدار اولیه میگیره و بعد،بعد هر سرریز مقدار اولیه تایمر، صفر میشه
                      دوماً بعد انجام این کار هر دفعه که a برابر ۱/۰۰۰ بشه، یعنی ۱ ثانیه، نه ۱۰/۰۰۰
                      فعلاً این کارها رو انجام بده تا بقیه کد رو بررسی کنیم
                      دوست عزیز ممنون از راهنماییت
                      امام صادق عليه‏السلام :

                      هرچيزى‏زكاتى دارد و زكات دانش، آموختن آن است به اهلش.

                      دیدگاه


                        #12
                        پاسخ : کمک در مورد عیب پروژه ی چراغ راهنمای AVR

                        مشکل حل شد یا هنوز ادامه داره ؟؟؟
                        من تازه این تاپیکو دیدم اگه برطرف نشده بگید تا اگه بتونم کمکتون کنم .

                        دیدگاه


                          #13
                          پاسخ : کمک در مورد عیب پروژه ی چراغ راهنمای AVR

                          نوشته اصلی توسط saeed.b1368
                          مشکل حل شد یا هنوز ادامه داره ؟؟؟
                          من تازه این تاپیکو دیدم اگه برطرف نشده بگید تا اگه بتونم کمکتون کنم .
                          نه داداش هنوز ادامه داره یه برنامه دیگم بش اضافه ش هرچی دارم باش ور میرم کار نمیکنه.باید تا 3شنبه تحویل بدم ولی دمتون گرم خیلی اقایین

                          امام صادق عليه‏السلام :

                          هرچيزى‏زكاتى دارد و زكات دانش، آموختن آن است به اهلش.

                          دیدگاه


                            #14
                            پاسخ : کمک در مورد عیب پروژه ی چراغ راهنمای AVR

                            دوستان اگر زحمتی نیست به این پروژه هم یک نگاه بندازین .این هم پروژه چراغ راهنما هست ولی فقط درست کار نمیکنه عدد های مشابه مانند تصویر میده.الان من چکارش کنم؟
                            [code=c]#include <mega16.h>
                            #include <delay.h>
                            #define xtal 4000000
                            int digit[10]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0xff,0x6 f};
                            int i,j,n;
                            void main (void){
                            DDRA=0xff;
                            DDRB=0xff;
                            DDRC=0xff;
                            DDRD=0xff;
                            PORTA=0x00;
                            PORTB=0x00;
                            PORTC=0x00;
                            PORTD=0x00;
                            j=9;
                            i=1;
                            while(1){
                            for(n=0;n<=10;n++){
                            if(n==10)j--;
                            if(j==0){
                            i=0;
                            j=9;
                            }
                            if((i==0)&&(j==0)){
                            j=9;
                            i=1;
                            }
                            PORTB=digit[i];
                            PORTC=digit[i];
                            PORTA=0x03;
                            delay_ms(200);
                            PORTB=digit[j];
                            PORTC=digit[j];
                            PORTA=0x0c;
                            delay_ms(200);
                            {{{
                            [/code]

                            امام صادق عليه‏السلام :

                            هرچيزى‏زكاتى دارد و زكات دانش، آموختن آن است به اهلش.

                            دیدگاه


                              #15
                              پاسخ : کمک در مورد عیب پروژه ی چراغ راهنمای AVR

                              چرا موقع نمایش دادن ۱۹ و ۲۶ رو از عددتون کم میکنید؟ چه ضرورتی داره این کار؟

                              ضمنا اون دو تا continue اول رو بردارید. لازم نیست break یا continue اونجا باشه. من اولش که برنامه تون رو خوندم یه چیز دیگه برداشت کرده بودم. الان اون continue ها باعث میشن اصلا برنامه تون به قسمت مربوط به چراغ نرسه

                              دوم اینکه داخل حلقه اصلی شما (خط 68 به بعد) یک سری while گذاشتید که باهاش شرط رو تست میکنید بعد داخلش break گذاشتید. تمام اون while ها رو بکنید if و break رو هم بردارید. این البته مشکلی رو حل نمیکنه فقط اصولی تره اینطوری برنامه نویسی کردن

                              فعلا برنامه اولتون رو درست کنید تا برسیم به برنامه دوم

                              دیدگاه

                              لطفا صبر کنید...
                              X