اطلاعیه

Collapse
No announcement yet.

تغییر کانال ADC

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

    تغییر کانال ADC

    با سلام
    دوستان من با این روش که در عکس هست میخواستم کانال ADC رو تغیر بدم
    به نظرتون ایرادی داره؟؟؟


    #2
    پاسخ : تغییر کانال ADC

    دوستان من اطمینان دارم که از پایه ADC1 نمونه نمیگیرد
    من میخوام از طریق انتگرال گیری گسسته مقدار توان رو بدست بیارم
    برای این کار طی دو پالس ADC از ولتاژ و جریان ورودی نمونه میگیرم و هر بار حاصلضرب آنها رو با هم جمع میکنم( با استفاده از دستور P=P+V*I )
    و در نهایت بر مدت زمانی که نمونه گرفتم تقسیم میکنم
    حالا به نظرتون برنامه نویسیم مسکلی داره؟؟؟؟!!!!!
    لطفا راهنماییم کنید

    دیدگاه


      #3
      پاسخ : تغییر کانال ADC

      اساتید عزیز
      خیلی ضروریه اگه میشه سریع راهنمایی کنید

      دیدگاه


        #4
        پاسخ : تغییر کانال ADC

        همچنان منتظر یاری سبزتان هستیم دوستان :cry2: :cry2: :cry2: :cry2:
        چرا کسی جوابمون و نمیده!!!!!!!!!!!!!!!!!!!!!

        دیدگاه


          #5
          پاسخ : تغییر کانال ADC

          دوستان یعنی تا آون حد سخته تغییر دادن ورودی ADC??????
          سخت شاید باشه ولی نه تا حدی که هیچ کس نتونه جوابی بده
          از این سایت بعیده؟؟؟؟؟؟ :NO: :NO: :NO: :NO: :NO: :NO:

          دیدگاه


            #6
            پاسخ : تغییر کانال ADC

            بجای

            کد:
            if (b==1)


            بنویسید

            کد:
            else if (b==1)


            زیرا در برنام شما (با فرض مقدار اولیه صفر برای b) ابتدا وارد شرط اول می شود و بعد از یک شدن b همیشه شرط دوم اجرا می شود.
            اوژن: به معنای افکننده و شکست دهنده است
            دانایی، توانایی است-Knowledge is POWER
            برای حرفه ای شدن در الکترونیک باید با آن زندگی کرد
            وضعمان بهتر می شود، اگر همه نسبت به جامعه و اطراف خود مسوول باشیم و نگوئیم به ما چه
            قوی شدن و خوب ماندن - خوبی کردن به دیگران یک لذت ماندگار است
            اگر قرار باشد نفت و منابع خام را بدهیم و چرخ بگیریم، بهتر است چرخ را از نو اختراع کنیم
            ساعت کار بدن اکثر انسان ها کمتر از 800000 ساعت است و بعد از آن از کار می افتد

            دیدگاه


              #7
              پاسخ : تغییر کانال ADC

              ممنون از راهنماییتون
              ولی من که داخل if اول به b مقدار یک دادم تا اگه یه بار دیگه وارد روتین وقفه شد If دومی کار کنه!!!!
              به نظرتون اشکال داره هنوز؟
              میخوام اشکال کارم رو بدونم
              ضمنا وقتی دستور رو به الس ایف تبدیل کردم این خطا رو از دستور الس ایف گرفت No matching If
              باز هم ممنون

              دیدگاه


                #8
                پاسخ : تغییر کانال ADC

                درباره نحوه عملکرد if و علت وارد شدن به بخش دوم در پست قبل توضیح دادم. در مورد خطای ایجاد شده هم یکبار برنامه را دقیق چک کنید که عبارتی مانند } یا ; از قلم نیافتاده باشد.
                اوژن: به معنای افکننده و شکست دهنده است
                دانایی، توانایی است-Knowledge is POWER
                برای حرفه ای شدن در الکترونیک باید با آن زندگی کرد
                وضعمان بهتر می شود، اگر همه نسبت به جامعه و اطراف خود مسوول باشیم و نگوئیم به ما چه
                قوی شدن و خوب ماندن - خوبی کردن به دیگران یک لذت ماندگار است
                اگر قرار باشد نفت و منابع خام را بدهیم و چرخ بگیریم، بهتر است چرخ را از نو اختراع کنیم
                ساعت کار بدن اکثر انسان ها کمتر از 800000 ساعت است و بعد از آن از کار می افتد

                دیدگاه


                  #9
                  پاسخ : تغییر کانال ADC

                  ببینید استاد گرامی فکر کنم یه اشکال کوچک هست
                  به نظرتون وقتی دستور نمونه گیری جدید ( ADCSRA.6=1 ) رو در روتین وقفه مینویسم میکرو بقیه دستورهای زیر این دستور که نوشته شده رو اجرا میکنه؟؟؟
                  من یه بار امتحان کردم به محض اینکه دستور شروع نمونه گیری میدیم فورا از روتین خارج شده و نمونه جدید میگیره!!!!!!!!!!

                  دیدگاه


                    #10
                    پاسخ : تغییر کانال ADC

                    نوشته اصلی توسط mehran.safavy
                    به نظرتون وقتی دستور نمونه گیری جدید ( ADCSRA.6=1 ) رو در روتین وقفه مینویسم میکرو بقیه دستورهای زیر این دستور که نوشته شده رو اجرا میکنه؟؟؟
                    دستورات بعدی قطعا اجرا می شوند و یک کردن بیت مورد نظر در ADCSRA فقط به معنای فرمان start of conversion است و ارتباطی به روند اجرای برنامه ندارد.
                    اوژن: به معنای افکننده و شکست دهنده است
                    دانایی، توانایی است-Knowledge is POWER
                    برای حرفه ای شدن در الکترونیک باید با آن زندگی کرد
                    وضعمان بهتر می شود، اگر همه نسبت به جامعه و اطراف خود مسوول باشیم و نگوئیم به ما چه
                    قوی شدن و خوب ماندن - خوبی کردن به دیگران یک لذت ماندگار است
                    اگر قرار باشد نفت و منابع خام را بدهیم و چرخ بگیریم، بهتر است چرخ را از نو اختراع کنیم
                    ساعت کار بدن اکثر انسان ها کمتر از 800000 ساعت است و بعد از آن از کار می افتد

                    دیدگاه


                      #11
                      پاسخ : تغییر کانال ADC

                      ممنون از توجهتون استاد گرامی
                      من در این برنامه همانطور که گفتم از ولتاژ و جریان ورودی نمونه میگیرم(البته طی دو پالس یه بار ولتاژ ویه بار جریان، یعنی همزمان نیست) تا با استفاده از دستور P=P+V*I مقدار توان رو از طریق انتگرال گیری گسسته بگیرم که قاعدتا نیازی به محاسبه ضریب توان نیست حالا من دوتا سوال دارم!!!
                      1- چگونه میتوانم همزمان از دو کانال نمنونه بگیرم؟
                      به عبارتی منظورم اینه که این برنامه با تاخیر یک پالس ساعت از جریان نمونه میگیره که این خودش باعث ضریب توان میشه، برای رفع این مشکل چه راه حلی پیشنهاد میکنید
                      2- این برنامه با شیفت فاز یکی از ورودی ها (Cos fi) مقدارش تغیر میکنه که نباید اینطوری باشه چون توان رو از طریق انتگرال گیری بدست آورده ام
                      با تشکر

                      دیدگاه

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