اطلاعیه

Collapse
No announcement yet.

کوچکترین زمان تولید شده با استفاده از تایمر STM32F103

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

    #16
    پاسخ : کوچکترین زمان تولید شده با استفاده از تایمر STM32F103

    نمونه این کار رو انجام دادم. اسمش میشه DDS. اگه میکروکنترلرتون فقط باید همین کار رو انجام بده، می تونید تو حلقه while(1) با چند تا خط کد اسمبلی درستش کنید (یه طوری برنامه رو بنویسید که حلقه دقیقاً با نرخ 10MHz اجرا بشه). اما اگه میکروکنترلر باید کارای دیگه هم انجام بده، این راه جواب نمیده.
    بیایید با Google آشتی کنیم!

    دیدگاه


      #17
      پاسخ : کوچکترین زمان تولید شده با استفاده از تایمر STM32F103

      نوشته اصلی توسط محمد رستمی
      نمونه این کار رو انجام دادم. اسمش میشه DDS. اگه میکروکنترلرتون فقط باید همین کار رو انجام بده، می تونید تو حلقه while(1) با چند تا خط کد اسمبلی درستش کنید (یه طوری برنامه رو بنویسید که حلقه دقیقاً با نرخ 10MHz اجرا بشه). اما اگه میکروکنترلر باید کارای دیگه هم انجام بده، این راه جواب نمیده.
      موافقم. من یه بار یه DDS نرم افزاری نوشتم. داشت دیونم میکرد. اشتباه از صاحب کار بود که یه مشکلی رو به این شیوه می خواست درست کنه. متاسفانه بیشتر افراد امبدد کار توی کشورمون تخصص لازم و سواد کافی رو ندارن. خلاصه به خیر گذشت.
      توصیه من به arya1348 اینه که واقعا اگه قراره چندین کار رو انجام بده و یا چندین موج تولید کنه به جاش یه آی-سی DDS بخره وگرنه خیلی پیچیده میشه.

      دیدگاه


        #18
        پاسخ : کوچکترین زمان تولید شده با استفاده از تایمر STM32F103

        این یه کار آزمایشیه و فعلا بازسازی سیگنال مهمتر از روش اجراست. در نتیجه میکرو همین یه کارو باید انجام بده. لطفا طرز کار DDS و نحوه کد نویسی اونو اگر براتون مقدوره مختصرا توضیح بدبد. :read:
        فکر آن باشد که بگشاید رهی

        دیدگاه


          #19
          پاسخ : کوچکترین زمان تولید شده با استفاده از تایمر STM32F103

          نوشته اصلی توسط arya1348
          این یه کار آزمایشیه و فعلا بازسازی سیگنال مهمتر از روش اجراست. در نتیجه میکرو همین یه کارو باید انجام بده. لطفا طرز کار DDS و نحوه کد نویسی اونو اگر براتون مقدوره مختصرا توضیح بدبد. :read:
          عزیز دل برادر، فرض کن قراره یه سیگنال تکراری رو توی خروجیِ DAC تولید کنیم. کافیه یه دوره از سیگنال رو با تعداد نمونه های کافی توی حافظه ذخیره کنیم و با سرعت ثابت تو خروجی قرار بدیم. مثلاً 100 تا نمونه سینوسی رو با فرکانس 10MHz یکی یکی پشت سرِ هم می ذاریم تو خروجی و اندیس رو اضافه می کنیم و دوباره بعد از 100، اولی رو می ذاریم تو خروجی و تکرار می شه تا ابدالدهر. اینجوری فرکانس سینوسی میشه 0.01 فرکانس نمونه برداری، یعنی 100kHz.
          خوب، اگه نمونه ها رو یکی در میون بذاری تو خروجی، فرکانس سینوسی میشه دو برابر (یعنی 200kHz) و اگه 9 تا درمیون بذاری (10 تا 10 تا اندیس رو اضافه کنی) میشه 1MHz.
          به جای سینوسی می تونی مثلثی، مربعی، سیگنال ECG، یا هر چیز تکرار شونده توی حافظه ذخیره کنی. فقط باید نایکوئیست خدابیامرز رو رعایت کنی و طبق تجربه عملی بنده، حداقل 8 تا نمونه از سیگنال توی یه سیکل قرار بدی تا شکل خروجیت آدمیزادی باشه.
          اینجا رو هم نگاه کن که حالشو ببری:
          http://www.myplace.nu/avr/minidds/
          بیایید با Google آشتی کنیم!

          دیدگاه


            #20
            پاسخ : کوچکترین زمان تولید شده با استفاده از تایمر STM32F103

            کافیه یه دوره از سیگنال رو با تعداد نمونه های کافی توی حافظه ذخیره کنیم و با سرعت ثابت تو خروجی قرار بدیم
            مهندس جان
            ممنونم از اینکه اصول رو یه باره دیگه یادآوری کردی. نمیخوام دوباره برگردم به اول این بحث. فقط یه راهنمایی کن چطور بدون استفاده از تایمر ، سرعت ثابت رو با این میکرو ایجاد کنم.
            فکر آن باشد که بگشاید رهی

            دیدگاه


              #21
              پاسخ : کوچکترین زمان تولید شده با استفاده از تایمر STM32F103

              نوشته اصلی توسط arya1348
              مهندس جان
              ممنونم از اینکه اصول رو یه باره دیگه یادآوری کردی. نمیخوام دوباره برگردم به اول این بحث. فقط یه راهنمایی کن چطور بدون استفاده از تایمر ، سرعت ثابت رو با این میکرو ایجاد کنم.
              نه دیگه، نمیشه. شما که اصول رو بلدید، خودتون باید بهتر بدونید چطوری میشه بدون تایمر سرعت ثابت ایجاد کرد
              بیایید با Google آشتی کنیم!

              دیدگاه


                #22
                پاسخ : کوچکترین زمان تولید شده با استفاده از تایمر STM32F103

                نه دیگه، نمیشه. شما که اصول رو بلدید، خودتون باید بهتر بدونید چطوری میشه بدون تایمر سرعت ثابت ایجاد کرد
                خب ظاهرا این بحث داره فرسایشی میشه و ادامه دادنش از حالت مفید بودن خارج شده. از دوستانی که وقت گذاشتن و تو بحث شرکت کردن تشکر می کنم. مطمئنا مطالبی که به کمک دوستان اینجا مطرح شد گره از کار دیگران باز میکنه.
                امیدوارم که تو بحث های جدید هم از راهنمایی های شما بهره مند بشم و همچنان معتقدم که : فکر آن باشد که بگشاید رهی
                با تشکر مجدد
                :bye :applause:
                فکر آن باشد که بگشاید رهی

                دیدگاه

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