اطلاعیه

Collapse
No announcement yet.

دستورadcon1درMICRO C

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

    دستورadcon1درMICRO C

    سلام داداها :biggrin:
    توکامپایلرمیکروسی قبل ازاستفاده ازانالوگ به دیجیتال یه دستور هست به اسمadcon1که با مقدار دهی اون میتوان تعداد پورت های خروجی و ورودی
    و همچنین ولتاژمرجع بالا وپایین وسرعت نمونه برداری رو مشخص کزد .هرچی تو هلپ(help)خودکامپایلر گشتم اصلا اشاره ای به دستورadcon1 نکرده بود :eek:وفقط تو مثال از اون استفاده کرده بود :surprised:
    حالا من نیاز دارم سرعت نمونه برداریم رو تا کمترین مقدار ممکن پایین بیارم وهمچنین تعداد پورت های انالوگ به دیجیتال رومشخص کنم ولی نمیدونم adcon1رو باید چه مقداری بدم :cry: :cry:
    اگريك فلج مادر زاد در مسابقه دو ماراتون نفراول نشود مقصر فقط وفقط خودش است...

    #2
    پاسخ : دستورadcon1درMICRO C

    شما اول نوع میکرو رو مشخص کنین بعد!
    ADCON1 رجیستر هست و توی Help کامپایلر فکر نکنم چیزی راجع بهش پیدا بکنین!

    دیدگاه


      #3
      پاسخ : دستورadcon1درMICRO C

      نوشته اصلی توسط شاهرخ
      شما اول نوع میکرو رو مشخص کنین بعد!
      ADCON1 رجیستر هست و توی Help کامپایلر فکر نکنم چیزی راجع بهش پیدا بکنین!
      سلام داش شاهرخ :bye
      اره بعدازاین که این تاپیک رو ایجاد کردم با یه کم سرچ و اینور اونور گشتن به این موضوع پی بردم اولا دستورadcon1تو همه ی کامپایلر ها به کار میره.دوماهر میکرو تو دیتا شیتش تو ضیح داده که چجوری این رجیستر رو عدد بدی تا پایه های انالوگ ودیجیتال و همچنین ولتاژمرجع رو مشخص کنی
      من ازpic16f877aاستفاده میکنم که تو دیتا شیتش یه جدول داده که متناسب باپایه هایی که میخوای ورودی انالوگ به دیجیتال باشن چجوری چهاربیت اول این رجیستر رو تعین کنی ولی حرفی از سرعت نمونه برداری نزده.من روی پروژه ی اسلیسکوپ حرفه ایی با ال سی دی گرافیکی کار میکنم و نیاز دارم سرعت نمونه برداری تا حد ممکن پایین بیادضمنا کامپایلرم Micro cهستش و سرعت نمونه برداریش تقریبا100میکرو ثانیه اس
      اما با کامپایلرpic basic proکه قبلا کار میکردم اولا سرعت نمونه برداری رو میتونستی خودت تعیین کنی دوما پایین ترین سرعت نمونه برداریش 50 میکرو بود.حالا به نظرت با این دستور adcon1میشه تو میکرو سی سرعت نمونه برداری رو تعیین کرد؟
      اگريك فلج مادر زاد در مسابقه دو ماراتون نفراول نشود مقصر فقط وفقط خودش است...

      دیدگاه


        #4
        پاسخ : دستورadcon1درMICRO C

        علیک سلام. :nerd:

        با رجیستر ADCON0 میتونی سرعت کلاک میکرو رو تنظیم کنی.

        دیدگاه


          #5
          پاسخ : دستورadcon1درMICRO C

          برنامه شرکت mikro یک ضعف عمده دارن اونم اینه که کتابخانه هاش تقریبا همه ار رو خودشون انجام می دن و هیچ اختیاری به کاربر نمی دن مثلا شما نمی تونید در کار با آنالوگ هیچ وقت ADFM_BIT رو صفر کنید تا اطلاعات در نیمه بالایی نوشته بشه ADRESH نوشته بشه چون وقتی که کد اسمبلی برنامه رو ببینید متوجه می شید که ADCOn1.7 توسط خود کامپایلر یک می شه وهر چی رشته کردی می شه پنبه
          آيا تا به حال به اين فکر کرده ايم که نبود قانون کپي رايت در کشور ما چه لطمه بزرگي به کشور ما زده است؟؟؟؟؟؟؟؟؟

          دیدگاه


            #6
            پاسخ : دستورadcon1درMICRO C

            mohsen_microcontronic از کجا این رو درآووردین که اختیار نمیده و ... ؟
            خیر . به راحتی میشه این کارها رو کرد . چند مثال :
            TRISA = 15 ;
            TRISA0_bit = 0 ;
            روشن یا خاموش کردن بیت اینتراپت کلی : GIE_bit = 0 ;

            ADC_Init();
            ADON_BIT = 0 ;//'A/D converter module is disabled
            ADCON1 = 11 ;//'AN0 AN1 AN2 AN3
            ACQT2_BIT = 1 ;
            ACQT1_BIT = 1 ;
            ACQT0_BIT = 1 ;
            ADCS2_BIT = 0 ;
            ADCS1_BIT = 1 ;
            ADCS0_BIT = 0 ;


            این دستورات رو توی دیتاشیت فقط پیدا میکنید و تمام کامپایلرها ساپورتشون میکنن . ولی وقتی شما دستور لایبراری رو بزاری آخرین خط اونوقت همه چی رو ریست میکنی . مثلا اگه آخرین خط تعریف بنویسی ADC_Init(); یعنی همش رو پروندی و برگشتی به تنظیمات پیش فرض . در ضمن برای تعیین کلاک و یکسری از رجیسترها ، باید اول ماژول رو خاموش کنی بعد تنظیم کنی بعد در آخر ماژول رو روشن کنی .
            ADON_BIT = 0 ;//'A/D converter module is disabled
            یکم سواد خود را زیاد کنیم ، نه که به سواد اساتید دنیا اهانت کنیم !!!

            [hr]

            اینها همش دستورات استاندارد C هستند ( اسکی ) . ولی دستوری مثل ADCOn1.7 اصلا در C وجود نداره !!! مگه کامپایلر بیسیکه ؟!
            if all men are the same
            then
            why do women take so long to choose one ?

            دیدگاه

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