اطلاعیه

Collapse
No announcement yet.

مشکل در برقراری ارتباط SPI بین میکرو و ADC 16bits

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

    مشکل در برقراری ارتباط SPI بین میکرو و ADC 16bits

    سلام به اساتید محترم ... یک سوال داشتم که حتما برای خیلی از اساتید ابتدایی به نظر میرسه ، ممنون میشم کمکم کنید
    میخوام از طریق ارتباط SPI داده ای رو از یک ADC که در خروجی خودش 16 بیت میده(چهار بیت0 +12 بیت دیتا) دریافت کنم . از میکرو( atmega128 ) و (َADC : AD7888) در این پروژه استفاده شده.
    سوالم اینه که وقتی از طریق MOSI دیتای مورد نظرم رو فرستادم و همزمان جواب برگشی از ADC رو از طریق MISO دریافت کردم، بعد از دریافت 8 بیتِ اول روی SPDR و برای دریافت 8 بیت دوم باید چه کار کنم؟ ... در واقع سوالم اینجاست که اگر به صورت همزمان با وارد شدن هشت بیت دوم به MISO به ترتیب ، بیتهای قبلی از طریق MOSI به ADC برگردند، برای ADC حکم یک ورودی جدید رو دارند و در این صورت ممکنه قبل از دریافت جواب 16 بیتیِ کامل مورد نظرم، ADC به ورودی جدیدی که داره دریافت میکنه جواب بده... اینطور نیست؟
    ممنون میشم راهنماییم کنید

    #2
    پاسخ : مشکل در برقراری ارتباط SPI بین میکرو و ADC 16bits

    کد زیر رو برای ارتباط با adc 24 بیت نوشتم :
    که شما باید 2 را به عنوان طول به تابع پاس کنی .
    کد:
    /***********************************************************
    *      Read data by SPI
    *                             */
    U32 Read_SPI(U8 len) {
    U8 i;
    U32 data=0;
    PORTB=(1<<PORTB3);    // Hold High DI during reading
       for(i=len;i>0;i--){ 
        data |= ( ((U32) spi(0) ) << 8*(i-1));
       } 
     return data; 
    }
    /*********************************************************/
    از جمله ی رفتگان این راه دراز
    باز آمده ای کو که به ما گوید راز
    هان بر سر این دو راهه از روی نیاز
    چیزی نگذاری که نمی آیی باز

    دیدگاه


      #3
      پاسخ : مشکل در برقراری ارتباط SPI بین میکرو و ADC 16bits

      مرسی دوست عزیز ... فقط اگر امکانش هست یه توضیح کوچیک هم بدی ممنون میشم ... البته میدونم تازه کارهایی مثل من ممکنه خستتون کنن ولی خب ممنون میشم ... من تازه کار با کدویژن رو شروع کردم بخاطر همون کمی نیاز به کمک دارم :rolleyes:

      دیدگاه


        #4
        پاسخ : مشکل در برقراری ارتباط SPI بین میکرو و ADC 16bits

        نوشته اصلی توسط saeednoo
        مرسی دوست عزیز ... فقط اگر امکانش هست یه توضیح کوچیک هم بدی ممنون میشم ... البته میدونم تازه کارهایی مثل من ممکنه خستتون کنن ولی خب ممنون میشم ... من تازه کار با کدویژن رو شروع کردم بخاطر همون کمی نیاز به کمک دارم :rolleyes:
        خواهش میکنم .
        در رابطه با spi ویدوهای آقای کینزاد رو ببنید مشکلی بود مطرح کنید .
        از جمله ی رفتگان این راه دراز
        باز آمده ای کو که به ما گوید راز
        هان بر سر این دو راهه از روی نیاز
        چیزی نگذاری که نمی آیی باز

        دیدگاه


          #5
          پاسخ : مشکل در برقراری ارتباط SPI بین میکرو و ADC 16bits

          در رابطه با spi ویدوهای آقای کینزاد رو ببنید مشکلی بود مطرح کنید .
          سلام،میشه بگید از کجا باید به این ویدوها دسترسی پیدا کنیم ؟؟

          دیدگاه


            #6
            پاسخ : مشکل در برقراری ارتباط SPI بین میکرو و ADC 16bits

            نوشته اصلی توسط AliShrz.13
            سلام،میشه بگید از کجا باید به این ویدوها دسترسی پیدا کنیم ؟؟
            http://knowledgeplus.ir/electronics/AVR.aspx?lang=Fa
            از جمله ی رفتگان این راه دراز
            باز آمده ای کو که به ما گوید راز
            هان بر سر این دو راهه از روی نیاز
            چیزی نگذاری که نمی آیی باز

            دیدگاه

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