اطلاعیه

Collapse
No announcement yet.

استفاده از دو کاربرد یک پایه در مگا8

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

    استفاده از دو کاربرد یک پایه در مگا8

    مگا 8 دو پایه داره که یکی از کاربردهاش adc و دیگری scl یا sda که در I2C کاربرد داره من می خوام هم از تبدیل آنالوگ به دیجیتال استفاده کنم و هم از i2c . اصلا می شه چنین کاری کرد و بعد مدارش رو چطور باید ببندم؟ چطون سنسوری که می خوام باهاش ارتباط i2c برقرار کنم خیلی گرونه می خوام از مدار مطمئن باشم که یه وقت به سنسور صدمه ای وارد نشه

    #2
    پاسخ : استفاده از دو کاربرد یک پایه در مگا8

    باید در کل adc رو غیر فعال کنی تا بتونی به عنوان ورودی خروجی ازش استفاده کنی
    هرچه سعی کنیم لایه های نرم افزاری زیاد کرده و از سخت افزار دور کنیم مشکلات(باگ ها) کمتر خواهد شد(امنیت بیشتری خواهید داشت)
    بهترین جواب دهنده برای سوال شما، خود شما هستید البته بعد تلاش،پشتکار و مطالعه بیشتر
    میدونی مشکل ما کجاست؟سرمایه و مغز ها رو نمیتونیم یکجا جمع کنیم...

    تعدادی ماژول GPS GP5MX1513F1 با بالاتریت حساسیت -170db به قیمت خرید بفروش میرسد

    دیدگاه


      #3
      پاسخ : استفاده از دو کاربرد یک پایه در مگا8

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

      دیدگاه


        #4
        پاسخ : استفاده از دو کاربرد یک پایه در مگا8

        سلام دوست عزیز
        بله میشه این کار رو کرد
        ولی باید به چند نکته توجه داشته باشید :
        1- ورودی پایه ای رو که به عنوان I2C استفاده میکنید رو به عنوان ADC همزمان استفاده نکنید
        2- هنگام استفاده از ADC برای کاهش نویز از I2C استفاده نکنید

        موفق باشی

        دیدگاه


          #5
          پاسخ : استفاده از دو کاربرد یک پایه در مگا8

          دوست عزیز شما میآ‌تونی به صورت نرم افزاری،پایه های I2C رو تغییر بدی.
          در ضمن میآ‌شه بگی سنسورت چیه؟

          دیدگاه


            #6
            پاسخ : استفاده از دو کاربرد یک پایه در مگا8

            یه سنسور مغناطیس سنج سه محوره به نام hmc5843

            من برنامه برای ارتباط با i2c به صورت سخت افزاری رو نوشتم و نمی خوام از نرم افزاری استفاده کنم.

            یعنی می گید که مستقیما یک وردوی آنالوگ و پایه sda یا scl رو به هم وصل کنم و بعد به یه پایه میکرو وصل کنم؟ اینطوری که ولتاژ آنالوگ روی پایه های scl و sda تاثیر می ذاره
            از لحاظ نرم افزاری هم فقط کافیه که هر کدوم رو که می خوام استفاده کنم دیگری رو غیر فعال کنم؟

            دیدگاه


              #7
              پاسخ : استفاده از دو کاربرد یک پایه در مگا8

              یه واسط بذار که از به پایه دیگه فرمان بگیره و در هر لحظه با توجه به نیازت یا adc یا i2c رو وصل کنه. یه چیزی مثل مالتی پلکسر
              باید از هرکدوم هم میخوای استفاده کنی یکی دیگه رو غیر فعال کنی. مثلا adc اینطوری غیر فعال میشه (تو winavr) :

              void a2dOff(void)
              {
              cbi(ADCSR, ADIE); // disable ADC interrupts
              cbi(ADCSR, ADEN); // disable ADC (turn off ADC power)
              }


              بیت ADIE و ADEN از ADCSR صفر بشه ...
              https://www.linkedin.com/in/mohammadhosseini69

              http://zakhar.blog.ir

              دیدگاه


                #8
                پاسخ : استفاده از دو کاربرد یک پایه در مگا8

                نوشته اصلی توسط محمد حسینی
                یه واسط بذار که از به پایه دیگه فرمان بگیره و در هر لحظه با توجه به نیازت یا adc یا i2c رو وصل کنه. یه چیزی مثل مالتی پلکسر
                باید از هرکدوم هم میخوای استفاده کنی یکی دیگه رو غیر فعال کنی. مثلا adc اینطوری غیر فعال میشه (تو winavr) :

                void a2dOff(void)
                {
                cbi(ADCSR, ADIE); // disable ADC interrupts
                cbi(ADCSR, ADEN); // disable ADC (turn off ADC power)
                }


                بیت ADIE و ADEN از ADCSR صفر بشه ...
                خوب حالا نظرتون در مورد چیزی که در هر لحظه یکی رو انتخاب کنه چیه؟
                البته این رو هم بگم که به صورت معمولی باید برای هر کدوم از پایه های i2c یک مقاومت بذاریم.

                دیدگاه


                  #9
                  پاسخ : استفاده از دو کاربرد یک پایه در مگا8

                  راستی نمیشه
                  چون i2c مقاومت پول اپ می خواد
                  شما یکار کن
                  پورت i2c راحت از تو کدویژن جابجا میشه
                  ببرش رو دوتا پینه دیگه
                  تون دوتا در مواقعی لازمه که بخوای TWi راهندازی کنی
                  اگر نه تو کدویژن راحت جابجا میشه
                  هرچه سعی کنیم لایه های نرم افزاری زیاد کرده و از سخت افزار دور کنیم مشکلات(باگ ها) کمتر خواهد شد(امنیت بیشتری خواهید داشت)
                  بهترین جواب دهنده برای سوال شما، خود شما هستید البته بعد تلاش،پشتکار و مطالعه بیشتر
                  میدونی مشکل ما کجاست؟سرمایه و مغز ها رو نمیتونیم یکجا جمع کنیم...

                  تعدادی ماژول GPS GP5MX1513F1 با بالاتریت حساسیت -170db به قیمت خرید بفروش میرسد

                  دیدگاه


                    #10
                    پاسخ : استفاده از دو کاربرد یک پایه در مگا8

                    مشکل همینجاست من یک هفته کامل برنامه نوشتم تا تونستم TWI یا همون i2c سخت افزاری رو راه اندازی کنم.
                    حالا می بینم که پین آنالوگ به دیجیتال با TWI توی مگا 8 یکی هستند.

                    دیدگاه


                      #11
                      پاسخ : استفاده از دو کاربرد یک پایه در مگا8

                      خوب i2c رو به صورت نرم افزاری راه اندازی کنید . روی پایه های دیگه میکرو
                      مهم نيست كه چه انديشه اي در سر و چه ترسي در دل داريد؛ مهم آن است كه بيكار ننشينيد و دست به كاري بزنيد و وارد ميدان عمل بشويد.

                      نمي توانيد به كودكي بياموزيد كه از خود مواظبت كند، مگر آنكه او را آزاد بگذاريد تا براي مواظبت از خود بكوشد؛ ممكن است اشتباه كند، ولي دانايي او از ميان همين اشتباهات سرچشمه مي گيرد.

                      دیدگاه


                        #12
                        پاسخ : استفاده از دو کاربرد یک پایه در مگا8

                        اگه adc کم داری
                        از مگا 8 اس ام دی استفاده کن 2 تا adc بیشتر داره
                        اگه منظورت master i2c است چاره نیست
                        اگه slave i2c فرقی نمی کنه رو کدوم پایه ها باشه
                        هرچه سعی کنیم لایه های نرم افزاری زیاد کرده و از سخت افزار دور کنیم مشکلات(باگ ها) کمتر خواهد شد(امنیت بیشتری خواهید داشت)
                        بهترین جواب دهنده برای سوال شما، خود شما هستید البته بعد تلاش،پشتکار و مطالعه بیشتر
                        میدونی مشکل ما کجاست؟سرمایه و مغز ها رو نمیتونیم یکجا جمع کنیم...

                        تعدادی ماژول GPS GP5MX1513F1 با بالاتریت حساسیت -170db به قیمت خرید بفروش میرسد

                        دیدگاه


                          #13
                          پاسخ : استفاده از دو کاربرد یک پایه در مگا8

                          مثل اینکه مجبورم از i2c نرم افزاری استفاده کنم ولی باید ببینم سرعتش چطوره کسی می دونه سرعت سخت افزاری بیشتره یا نرم افزاری ؟ چون سرعت خیلی برا من مهمه

                          دیدگاه


                            #14
                            پاسخ : استفاده از دو کاربرد یک پایه در مگا8

                            نوشته اصلی توسط n340
                            اگه adc کم داری
                            از مگا 8 اس ام دی استفاده کن 2 تا adc بیشتر داره
                            کاملا تایید میشه
                            مشکل شما چیه؟از چند ADC باید استفاده کنید؟اگر یکی نیاز دارید خوب ADC رو روی یک پایه دیگه ببرید ولی اگر به تمامADC ها نیاز دارید از مگا هشت SMD استفاده کنید

                            مگا 8 SMD دوتا نسبت به DIP بیشتر داره که مخصوص ADC هست و کار دیگه ای انجام نمیده
                            درضمن I2C کلا سرعتش کمه و طبیعتا سرعت سخت افزاری باید بیشتر باشه ولی در کل فکر نکنم تفاوت چندانی داشته باشه!
                            پروردگارا: به من زيستني عطا کن که در لحظه مرگ بر بي ثمري لحظه اي که براي زيستن گذشته است حسرت نخورم، و مردني عطا کن که بر بيهودگيش سوگوار نباشم. بگذار تا آن را خود انتخاب کنم، اما آنچنان که تو دوست ميداري

                            دیدگاه


                              #15
                              پاسخ : استفاده از دو کاربرد یک پایه در مگا8

                              دوست عزیز شما یه مراجعه به Datasheet ای سی ATmega8 داشته باش
                              در قسمت ADC کاملا در مورد استفاده همزمان ADC و I2C توضیح داده
                              اگر مواردی رو که گفتم رعایت کنی مطمئن باش اشکالی پیش نمیاد

                              دیدگاه

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