اطلاعیه

Collapse
No announcement yet.

راه اندازی موتور dc

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

    پاسخ : راه اندازی موتور dc

    نوشته اصلی توسط pama

    خوب صاحابشم حلال زاده بودن و سر رسیدن :nerd: با اجازتون جناب شاهرخ برنامتون رو میذارم:
    :rolleyes: شما لطف دارین...مسئله ای نیست ، بذارین...

    Error ها یه خرده عجیب به نظر میان! کامپایلر احتمالا داره ادا در میاره؛ وگرنه همه ی میکروهای 8 بیتی که تایمر صفر دارن،اسم رجیسترشون TMR0 هست که اینجا Error داده که تعریف نشده! یا OPTION_REG همینطور.
    کامپایلر رو ببندین و دوباره اجرا کنین.همین چند ساعت قبل کامپایلر باهام داشت شوخی میکرد!!مختصر مداومت به خرج دادم باهام راه اومد! :nerd:

    دیدگاه


      پاسخ : راه اندازی موتور dc

      نوشته اصلی توسط شاهرخ
      :rolleyes: شما لطف دارین...مسئله ای نیست ، بذارین...
      خواهش میکنم، ممنونم از لطف شما :nerd:

      نوشته اصلی توسط شاهرخ
      Error ها یه خرده عجیب به نظر میان! کامپایلر احتمالا داره ادا در میاره؛ وگرنه همه ی میکروهای 8 بیتی که تایمر صفر دارن،اسم رجیسترشون TMR0 هست که اینجا Error داده که تعریف نشده! یا OPTION_REG همینطور.
      کامپایلر رو ببندین و دوباره اجرا کنین.همین چند ساعت قبل کامپایلر باهام داشت شوخی میکرد!!مختصر مداومت به خرج دادم باهام راه اومد! :nerd:
      بله، متاسفانه، آخه همین برنامه رو برای همون میکرویی که شما کامپایل کردین (16f628a) که تست میکنم، دیگه خبری از Error نیست!!
      بارها کامپایلر رو بستم و باز کردم، اما باز ظاهرا با ما سر ناسازگاری داره......

      اضافه شده در تاریخ :
      اصلا کلّا با 452 مشکل داره!!!
      قبلنا اینجوری نبود!!
      اسیلاتور 8 مگش رو کردم 4 مگ، هیچ تغییری نکرد، 452 رو کردم 877، حالش خوب شد!
      دیگه کلافم کرده...
      زندگی برگ بودن در مسیر باد نیست
      امتحان ریشه هاست
      ریشه هم هرگز اسیر باد نیست
      زندگی چون پیچک است
      انتهایش میرسد پیش خدا!

      دیدگاه


        پاسخ : راه اندازی موتور dc

        نوشته اصلی توسط pama
        اصلا کلّا با 452 مشکل داره!!!
        قبلنا اینجوری نبود!!
        اسیلاتور 8 مگش رو کردم 4 مگ، هیچ تغییری نکرد، 452 رو کردم 877، حالش خوب شد!
        دیگه کلافم کرده...
        oo: :angry:
        میخواین کرک جدید کامپایلر رو بزارم اینجا؟(2 ساعت نمیشه رسیده دستم! ) کامپایلر رو پاک کنین؛ دوباره نصب کنین.یا سیستم رو ریستارت کنین ببینین درست میشه؟

        دیدگاه


          پاسخ : راه اندازی موتور dc

          نوشته اصلی توسط شاهرخ
          oo: :angry:
          میخواین کرک جدید کامپایلر رو بزارم اینجا؟(2 ساعت نمیشه رسیده دستم! ) کامپایلر رو پاک کنین؛ دوباره نصب کنین.یا سیستم رو ریستارت کنین ببینین درست میشه؟
          وای نه! جناب شاهرخ :cry:
          اصلا نباید الان باهام اینجوری میکرد!
          یه دور سیستمو ریستارت میکنم بلکه شیطون دست از سر کچل ما ورداشت!
          اگه نشد که چشم، این بار ورژن5.6 رو پاک میکنم و 5.2 رو نصب میکنم....
          یک دنیا ممنونم از لطفتون.
          زندگی برگ بودن در مسیر باد نیست
          امتحان ریشه هاست
          ریشه هم هرگز اسیر باد نیست
          زندگی چون پیچک است
          انتهایش میرسد پیش خدا!

          دیدگاه


            پاسخ : راه اندازی موتور dc

            نوشته اصلی توسط pama
            وای نه! جناب شاهرخ :cry:
            اصلا نباید الان باهام اینجوری میکرد!
            یه دور سیستمو ریستارت میکنم بلکه شیطون دست از سر کچل ما ورداشت!
            اگه نشد که چشم، این بار ورژن5.6 رو پاک میکنم و 5.2 رو نصب میکنم....
            یک دنیا ممنونم از لطفتون.
            من همون 5.61 رو عرض میکنم.
            این هم از لینک کرک مجموعه ی کامپایلرهای زبانC نرم افزار mikroC :
            این هم کلید واژه هایی جهت سرچ گوگل!
            کرک میکروسی - لایسنس میکروسی - mikroC crack - mikroC keygen
            دیگه حوصله پیدا کردن اسم ندارم!

            http://s3.picofile.com/file/7483271070/mikroe.rar.html

            دیدگاه


              پاسخ : راه اندازی موتور dc

              نوشته اصلی توسط شاهرخ
              من همون 5.61 رو عرض میکنم.
              این هم از لینک کرک مجموعه ی کامپایلرهای زبانC نرم افزار mikroC :
              این هم کلید واژه هایی جهت سرچ گوگل!
              کرک میکروسی - لایسنس میکروسی - mikroC crack - mikroC keygen
              دیگه حوصله پیدا کردن اسم ندارم!

              http://s3.picofile.com/file/7483271070/mikroe.rar.html
              بسیار بسیار ممنونم ازتون...
              :job:

              اضافه شده در تاریخ :
              نوشته اصلی توسط شاهرخ
              oo: :angry:
              میخواین کرک جدید کامپایلر رو بزارم اینجا؟(2 ساعت نمیشه رسیده دستم! ) کامپایلر رو پاک کنین؛ دوباره نصب کنین.یا سیستم رو ریستارت کنین ببینین درست میشه؟
              نخیر!
              :angry:
              زندگی برگ بودن در مسیر باد نیست
              امتحان ریشه هاست
              ریشه هم هرگز اسیر باد نیست
              زندگی چون پیچک است
              انتهایش میرسد پیش خدا!

              دیدگاه


                پاسخ : راه اندازی موتور dc

                یادآوری:بشر جایز الخطا هست!

                نوشته اصلی توسط شاهرخ
                همه ی میکروهای 8 بیتی که تایمر صفر دارن،اسم رجیسترشون TMR0 هست که اینجا Error داده که تعریف نشده! یا OPTION_REG همینطور.
                X_X :-$

                دیتاشیت رو نگاه بکنین؛ متوجه میشین...

                برنامه رو به این شکل تغییر بدین:

                کد:
                long cnt=0;
                
                // LCD module connections
                sbit LCD_RS at RB2_bit;
                sbit LCD_EN at RB3_bit;
                sbit LCD_D4 at RB4_bit;
                sbit LCD_D5 at RB5_bit;
                sbit LCD_D6 at RB6_bit;
                sbit LCD_D7 at RB7_bit;
                
                sbit LCD_RS_Direction at TRISB2_bit;
                sbit LCD_EN_Direction at TRISB3_bit;
                sbit LCD_D4_Direction at TRISB4_bit;
                sbit LCD_D5_Direction at TRISB5_bit;
                sbit LCD_D6_Direction at TRISB6_bit;
                sbit LCD_D7_Direction at TRISB7_bit;
                // End LCD module connections
                
                void Interrupt()
                {
                  if(INTCON.T0IF==1)
                  {
                   INTCON.GIE=0;       //Global Interrupt disable
                   cnt++;
                   INTCON.T0IF=0;
                   INTCON.GIE=1;
                  }
                }
                
                void s1_lcd()
                {
                char welcome1[]=" IN THE NAME OF ";
                char welcome2[]="  << ALLAH >> ";
                
                   lcd_out(1,1,welcome1);
                   lcd_out(2,1,welcome2);
                
                delay_ms(800);
                Lcd_Cmd(_LCD_CLEAR);
                }
                
                void s2_lcd()
                {
                char disp1[]=  "Frequency Meter";
                
                   lcd_out(1,1,disp1);
                delay_ms(800);
                Lcd_Cmd(_LCD_CLEAR);
                }
                
                
                void Get_frq()
                {
                long frequency;
                long vv[8];
                INTCON=0b11100000;
                T0CON.TMR0ON=1;
                delay_ms(1000);
                INTCON=0;
                T0CON.TMR0ON=0;
                frequency=(cnt*256)+TMR0L;
                frequency=frequency*4;
                longtostr(frequency,vv);
                lcd_out(1,1,"FREQUENCY=");
                lcd_out(2,1,vv);
                cnt=0;
                TMR0L=0;
                }
                
                
                void main() 
                {
                Lcd_Init();            // Initialize LCD
                Lcd_Cmd(_LCD_CURSOR_OFF);     // Cursor off
                TRISA=0;          // Port A.4 = input - other pins are output
                PORTA=0;
                TRISA.B4=1;
                TRISB=1;
                INTCON=0b00000000;        
                INTCON2=0b10000000;       //RBPU Disable.
                T0CON=0b01110001;
                RCON.IPEN=0;
                
                
                
                s1_lcd();
                s2_lcd();
                
                Lcd_Cmd(_LCD_CLEAR);
                while(1)
                  {
                   Get_frq();
                  }
                }
                فقط تست نکردم ببینم شبیه سازی درست جواب میده یا نه؟ ولی درست کامپایل شد. :nerd:
                بابت سوتی هم معذرت! :redface:

                دیدگاه


                  پاسخ : راه اندازی موتور dc

                  سلام.
                  بسیار متشکرم ازتون جناب شاهرخ، خیلی بهم لطف کردید :job:
                  معذرت چرا برادر من؟! نفرمائید، ایراد از بی دقتیِ بنده ست که متوجه ی این موضوع تو دیتا شیت نشده بودم....
                  باز هم ازتون یک دنیا ممنونم.


                  اضافه شده در تاریخ :
                  سلام و عرض ادب.

                  نوشته اصلی توسط شاهرخ

                  برنامه رو به این شکل تغییر بدین:

                  کد:
                  long cnt=0;
                  
                  // LCD module connections
                  sbit LCD_RS at RB2_bit;
                  sbit LCD_EN at RB3_bit;
                  sbit LCD_D4 at RB4_bit;
                  sbit LCD_D5 at RB5_bit;
                  sbit LCD_D6 at RB6_bit;
                  sbit LCD_D7 at RB7_bit;
                  
                  sbit LCD_RS_Direction at TRISB2_bit;
                  sbit LCD_EN_Direction at TRISB3_bit;
                  sbit LCD_D4_Direction at TRISB4_bit;
                  sbit LCD_D5_Direction at TRISB5_bit;
                  sbit LCD_D6_Direction at TRISB6_bit;
                  sbit LCD_D7_Direction at TRISB7_bit;
                  // End LCD module connections
                  
                  void Interrupt()
                  {
                    if(INTCON.T0IF==1)
                    {
                     INTCON.GIE=0;       //Global Interrupt disable
                     cnt++;
                     INTCON.T0IF=0;
                     INTCON.GIE=1;
                    }
                  }
                  
                  void s1_lcd()
                  {
                  char welcome1[]=" IN THE NAME OF ";
                  char welcome2[]="  << ALLAH >> ";
                  
                     lcd_out(1,1,welcome1);
                     lcd_out(2,1,welcome2);
                  
                  delay_ms(800);
                  Lcd_Cmd(_LCD_CLEAR);
                  }
                  
                  void s2_lcd()
                  {
                  char disp1[]=  "Frequency Meter";
                  
                     lcd_out(1,1,disp1);
                  delay_ms(800);
                  Lcd_Cmd(_LCD_CLEAR);
                  }
                  
                  
                  void Get_frq()
                  {
                  long frequency;
                  long vv[8];
                  INTCON=0b11100000;
                  T0CON.TMR0ON=1;
                  delay_ms(1000);
                  INTCON=0;
                  T0CON.TMR0ON=0;
                  frequency=(cnt*256)+TMR0L;
                  frequency=frequency*4;
                  longtostr(frequency,vv);
                  lcd_out(1,1,"FREQUENCY=");
                  lcd_out(2,1,vv);
                  cnt=0;
                  TMR0L=0;
                  }
                  
                  
                  void main() 
                  {
                  Lcd_Init();            // Initialize LCD
                  Lcd_Cmd(_LCD_CURSOR_OFF);     // Cursor off
                  TRISA=0;          // Port A.4 = input - other pins are output
                  PORTA=0;
                  TRISA.B4=1;
                  TRISB=1;
                  INTCON=0b00000000;        
                  INTCON2=0b10000000;       //RBPU Disable.
                  T0CON=0b01110001;
                  RCON.IPEN=0;
                  
                  
                  
                  s1_lcd();
                  s2_lcd();
                  
                  Lcd_Cmd(_LCD_CLEAR);
                  while(1)
                    {
                     Get_frq();
                    }
                  }
                  جناب شاهرخ برنامه رو تو عمل با آیسی 555 تست کردم، نتیجه بسیار عالی بود
                  باز هم یک دنیا سپاسگذارم از لطف و بزرگواریتون.
                  با پتانسیومتر 100 کیلویی که بین پایه های 7 و 8 آیسی گذاشتم، رنج تغییرات خروجیمون رو LCD تقریبا تو بازه ی 15 تا حدودهای 620 هرتز هست، به نظرتون این عدد منطقیه؟!
                  زندگی برگ بودن در مسیر باد نیست
                  امتحان ریشه هاست
                  ریشه هم هرگز اسیر باد نیست
                  زندگی چون پیچک است
                  انتهایش میرسد پیش خدا!

                  دیدگاه


                    پاسخ : راه اندازی موتور dc

                    نوشته اصلی توسط pama
                    جناب شاهرخ برنامه رو تو عمل با آیسی 555 تست کردم، نتیجه بسیار عالی بود
                    باز هم یک دنیا سپاسگذارم از لطف و بزرگواریتون.
                    با پتانسیومتر 100 کیلویی که بین پایه های 7 و 8 آیسی گذاشتم، رنج تغییرات خروجیمون رو LCD تقریبا تو بازه ی 15 تا حدودهای 620 هرتز هست، به نظرتون این عدد منطقیه؟!
                    خدا رو شکر.
                    چه پتانسیومتری؟ کدوم مدار؟ oo: کو مدار؟!! اگه مولتی ویبراتور با 555 مدنظرتون هست؛ظرفیت خازن چقدره؟ نتیجه ی شبیه سازی تو پروتئوس؛ همون فرکانس رو میده؟

                    دیدگاه


                      پاسخ : راه اندازی موتور dc

                      نوشته اصلی توسط شاهرخ
                      خدا رو شکر.
                      چه پتانسیومتری؟ کدوم مدار؟ oo: کو مدار؟!! اگه مولتی ویبراتور با 555 مدنظرتون هست؛ظرفیت خازن چقدره؟ نتیجه ی شبیه سازی تو پروتئوس؛ همون فرکانس رو میده؟
                      متاسفانه هنوز پروتئوسم رو به راه نشده :sad: که کاش میتونستم شماتیک مدار رو بگذارم، ولی تقریبا به این مدار مولد فرکانس مطمئنم جناب شاهرخ

                      بله منظورم همون مولتی ویبراتور هست، ظرفیت خازن هم 1 میکرو هست...
                      زندگی برگ بودن در مسیر باد نیست
                      امتحان ریشه هاست
                      ریشه هم هرگز اسیر باد نیست
                      زندگی چون پیچک است
                      انتهایش میرسد پیش خدا!

                      دیدگاه


                        پاسخ : راه اندازی موتور dc

                        فرکانس تقریبا درسته.

                        در مورد درست بودن برنامه؛ همین دیروز سیگنال PWM ای میخواستم تولید بکنم با فرکانس 19.5 کیلو هرتز. بعد از قرار دادن مقادیر تو رجیسترهای مربوطه؛ جهت اطمینان از دقیق بودن فرکانس ( چون مدار رزونانس بود؛ باید فرکانس دقیق میشد) همین برنامه رو ریختم تو 16F877A . نتیجه اش برام جالب بود : 19450 هرتز! :wow:

                        دیدگاه


                          پاسخ : راه اندازی موتور dc

                          نوشته اصلی توسط شاهرخ
                          فرکانس تقریبا درسته.

                          در مورد درست بودن برنامه؛ همین دیروز سیگنال PWM ای میخواستم تولید بکنم با فرکانس 19.5 کیلو هرتز. بعد از قرار دادن مقادیر تو رجیسترهای مربوطه؛ جهت اطمینان از دقیق بودن فرکانس ( چون مدار رزونانس بود؛ باید فرکانس دقیق میشد) همین برنامه رو ریختم تو 16F877A . نتیجه اش برام جالب بود : 19450 هرتز! :wow:
                          بسیار عالی، کارتون حرف نداره :applause:
                          19.5 کیلو هرتز... 19450 هرتز! واقعا عالیه جناب شاهرخ.

                          چرا تقریبا درسته جناب شاهرخ؟!
                          یعنی ممکنه منبع تستم ایراد داشته باشه؟ به نظرتون میتونم خروجی سنسورم رو بخونم؟
                          زندگی برگ بودن در مسیر باد نیست
                          امتحان ریشه هاست
                          ریشه هم هرگز اسیر باد نیست
                          زندگی چون پیچک است
                          انتهایش میرسد پیش خدا!

                          دیدگاه


                            پاسخ : راه اندازی موتور dc

                            واسه این تقریبا درسته که محدوده تولید فرکانس با مقادیری که فرمودین حداکثر حدود 300 هرتز میشد.(شاید هم من اشتباه حساب کردم ) خلاصه درسته دیگه! :nerd:

                            دیدگاه


                              پاسخ : راه اندازی موتور dc

                              نوشته اصلی توسط شاهرخ
                              واسه این تقریبا درسته که محدوده تولید فرکانس با مقادیری که فرمودین حداکثر حدود 300 هرتز میشد.(شاید هم من اشتباه حساب کردم ) خلاصه درسته دیگه! :nerd:
                              بسیار متشکرم، هم از برنامتون، و هم از پیگیریهاتون جناب مهندس. :nerd:
                              زندگی برگ بودن در مسیر باد نیست
                              امتحان ریشه هاست
                              ریشه هم هرگز اسیر باد نیست
                              زندگی چون پیچک است
                              انتهایش میرسد پیش خدا!

                              دیدگاه

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