اطلاعیه

Collapse
No announcement yet.

کتابخانهآ‌ای برای چیپ AD7780-AD7730

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

    پاسخ : کتابخانهآ‌ای برای چیپ AD7780-AD7730

    سلام
    ورودی های 7780 ات رو اتصال کوتاه کن. اگه حدود 32768 نبود بدون داری اشتباه می کنی

    اما برنامه

    تنظیمات SPI

    // SPI initialization
    // SPI Type: Master
    // SPI Clock Rate: 2*1228.800 kHz
    // SPI Clock Phase: Cycle Half
    // SPI Clock Polarity: High
    // SPI Data Order: MSB First
    SPCR=0x5C;
    SPSR=0x01;



    اینم تکه های اصلی برنامه


    while(1)
    {
    if(PINB.4==0)
    {
    force= FORCE_READ_DATA();

    };
    };


    unsigned int FORCE_READ_DATA(void)
    {
    unsigned int adc_val;
    adc_val= spi(0);
    adc_val= adc_val*256 + spi(0);
    spi(0);
    spi(0);
    return(adc_val);
    };

    موفق باشی

    این برنامه برای ATmega48 و کلا تراشه هایی که مثل اون اند نوشته شده.
    اگه تراشه تون چیز دیگه ای هست، باید بجای PINB.4 ، پایه MISO تراشه خودتون رو داخل اش معرفی کنید.
    موفق باشید
    برای کاری در حوزه اربعین نیاز به نیروی داوطلب هستیم.
    http://hosseinwalkingday.com

    دیدگاه


      پاسخ : کتابخانهآ‌ای برای چیپ AD7780-AD7730

      ممنون ک جواب دادین
      اقا یک سوال فنی چرا از چیپ که 24 بیت هست 16 بیتی استفاده کردین؟؟
      و چرا باید حدودا روی 32768 باشه؟؟
      انجام پروژه هاي برنامه نويسي اندرويد
      [glow=red,2,300]نرم افزار نقشه هاي پاور کامپيوتر اندوريد[/glow]
      http://cafebazaar.ir/app/?id=com.atxdroid

      دیدگاه


        پاسخ : کتابخانهآ‌ای برای چیپ AD7780-AD7730

        یک سوال دیگه
        اطلاعات ریجستر رو چطوری میشه خوند؟؟
        انجام پروژه هاي برنامه نويسي اندرويد
        [glow=red,2,300]نرم افزار نقشه هاي پاور کامپيوتر اندوريد[/glow]
        http://cafebazaar.ir/app/?id=com.atxdroid

        دیدگاه


          پاسخ : کتابخانهآ‌ای برای چیپ AD7780-AD7730

          نوشته اصلی توسط محسن فاریابی
          ممنون ک جواب دادین
          اقا یک سوال فنی چرا از چیپ که 24 بیت هست 16 بیتی استفاده کردین؟؟
          و چرا باید حدودا روی 32768 باشه؟؟
          داده ها تو این تراشه ها به صورت هشت بیتی ارسال می شوند.

          یعنی اگه دقت ADC ات 18 بیت باشه، تراشه مجبوره سه تا عدد هشت بیتی بفرسته و می شه 24 بیت

          البته دقت 7780 تو شرایط ایده آل پونزده بیت هست و من هنوز نتونستم به گفته آنالوگ دیوایس (18 بیت) برسم.


          اگه اختلاف ولتاژ ورودی های 7780 صفر ولت باشه، عدد 2 بتوان 15 بهت نشون می ده.
          یعنی 32768

          اگه ولتاژ ورودی منفی ات خیلی بشتر از ورودی مثبت باشه، بهت عدد 0 می ده.
          و اگه ولتاژ ورودی مثبت ات خیلی بیشتر از ورودی منفی باشه، عدد حداکثر رو می ده، 65536 یعنی 2 بتوان 16

          برای کاری در حوزه اربعین نیاز به نیروی داوطلب هستیم.
          http://hosseinwalkingday.com

          دیدگاه


            پاسخ : کتابخانهآ‌ای برای چیپ AD7780-AD7730

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

            بیت اول اش که پرارزشه MSB
            بیت دوم اش کم ارزشهLSB
            بیت سوم اش از دید من فقط حرف مفت هست :biggrin:
            بیت چهارم اش استاتوس هست.

            اگه گین 128 برابر روشن باشه و سرعت خوندن هم ده نمونه در ثانیه باشه، استاتوس مقدار 73 رو باید به خودش بگیره.


            دستور خوندن اش هم خیلی ساده است

            msb = spi(0) ;
            lsb = spi(0);
            harfmoft = spi(0);
            status = spi(0);
            برای کاری در حوزه اربعین نیاز به نیروی داوطلب هستیم.
            http://hosseinwalkingday.com

            دیدگاه


              پاسخ : کتابخانهآ‌ای برای چیپ AD7780-AD7730

              مال من دارم باهاش دیتا رو میخونم و تغیرات رو هم دقیق نشون میده
              وقتی اتصال کوتاه میکنم عدد 1020 رو نشون میده و من هر 24 بیت رو میخونم!!!!
              یک سوال
              گین ب چه دردی میخوره؟؟
              انجام پروژه هاي برنامه نويسي اندرويد
              [glow=red,2,300]نرم افزار نقشه هاي پاور کامپيوتر اندوريد[/glow]
              http://cafebazaar.ir/app/?id=com.atxdroid

              دیدگاه


                پاسخ : کتابخانهآ‌ای برای چیپ AD7780-AD7730

                نوشته اصلی توسط محسن فاریابی
                مال من دارم باهاش دیتا رو میخونم و تغیرات رو هم دقیق نشون میده
                وقتی اتصال کوتاه میکنم عدد 1020 رو نشون میده و من هر 24 بیت رو میخونم!!!!
                یک سوال
                گین ب چه دردی میخوره؟؟
                برنامه و شماتیک ات رو بذار
                خیلی عجیبه.


                گین برای بزرگنمایی هست.
                اگه ولتاژ رفرنس ات 5 ولت باشه
                و اختلاف ولتاژ ورودی هایت هم کمتر 40 میلی ولت باشه

                گین رو که روشن کنی 128 برابر دقیق تر اندازه گیری می کنی
                اکثر لودسل ها و pt100 ها و دمای کمتر از هزار درجه در ترموکوپل ها و ... می شه گین رو روشن کرد.
                برای کاری در حوزه اربعین نیاز به نیروی داوطلب هستیم.
                http://hosseinwalkingday.com

                دیدگاه


                  پاسخ : کتابخانهآ‌ای برای چیپ AD7780-AD7730

                  اقا ما هرچی صبر کردیم که پین ردی رو صفر کنه که دیتا اماده هست صفر نکرد که نکرد!! چکارش کنم؟؟





                  unsigned int AD_readCont24(void){
                  int i;
                  unsigned long data = 0;
                  unsigned char x,x1,x2;

                  DOUT_LOW;





                  for(i=23; i>=0; i--){
                  SCLK_HIGH;
                  SCLK_HIGH;
                  SCLK_HIGH;
                  SCLK_LOW;
                  SCLK_LOW;
                  SCLK_LOW;




                  if( AD_PIN & ( AD_DIN_PIN) ){
                  data |= (1<<i);
                  }else{
                  data &= ~(1<<i);
                  }
                  }


                  for(i=0; i<7; i++){
                  SCLK_HIGH;
                  SCLK_HIGH;
                  SCLK_HIGH;
                  SCLK_HIGH;
                  SCLK_LOW;
                  SCLK_LOW;
                  SCLK_LOW;

                  }

                  data&=0x00FFFFFF;


                  return data;
                  }
                  void AD_stopReadCont(void){
                  AD_writeData(AD_REG_w_STOP, 8);
                  }


                  انجام پروژه هاي برنامه نويسي اندرويد
                  [glow=red,2,300]نرم افزار نقشه هاي پاور کامپيوتر اندوريد[/glow]
                  http://cafebazaar.ir/app/?id=com.atxdroid

                  دیدگاه


                    پاسخ : کتابخانهآ‌ای برای چیپ AD7780-AD7730

                    نوشته اصلی توسط محسن فاریابی
                    اقا ما هرچی صبر کردیم که پین ردی رو صفر کنه که دیتا اماده هست صفر نکرد که نکرد!! چکارش کنم؟؟





                    unsigned int AD_readCont24(void){
                    int i;
                    unsigned long data = 0;
                    unsigned char x,x1,x2;

                    DOUT_LOW;





                    for(i=23; i>=0; i--){
                    SCLK_HIGH;
                    SCLK_HIGH;
                    SCLK_HIGH;
                    SCLK_LOW;
                    SCLK_LOW;
                    SCLK_LOW;




                    if( AD_PIN & ( AD_DIN_PIN) ){
                    data |= (1<<i);
                    }else{
                    data &= ~(1<<i);
                    }
                    }


                    for(i=0; i<7; i++){
                    SCLK_HIGH;
                    SCLK_HIGH;
                    SCLK_HIGH;
                    SCLK_HIGH;
                    SCLK_LOW;
                    SCLK_LOW;
                    SCLK_LOW;

                    }

                    data&=0x00FFFFFF;


                    return data;
                    }
                    void AD_stopReadCont(void){
                    AD_writeData(AD_REG_w_STOP, 8);
                    }
                    پس چطور دیتا می خوندی؟
                    پایه RDY رو با یه مقاومت ده کیلو اهم باید پول پ کنی.

                    صفر نکردن این پایه به دلیل اشتباه تعریف شدن پایه های میکرو ات هست.
                    شما بایستی پایه ای که به RDY وصل هست رو ورودی تعریف کنی
                    پایه SCLK رو خروجی.
                    خودت رو هم درگیر پایه PDRST نکن، این پایه رو مستقیما به پنج ولت وصل کن. پایه ی PDRST تراشه 7780 که برای من خیلی بازی در آورد و خیلی با احتیاط ازش کار می کشیدم.

                    برای چک کردن کار هم کافیه با مولتی متر ات، فرکانس پایه DOUT/RDY رو اندازه بگیری. اگه درست کار کرده باشی باید فرکانس ده هرتز باشه.

                    بجز پایه NC هیچ پایه دیگه ات تو مدار نباید آزاد باشه.


                    REF- رو وصل کن به زمین. اینقدر هم انقل منقل بهش نبند.
                    تکلیف پایه Gain رو مشخص کن، یا به زمین وصل بشه یا پنج ولت
                    BPDSW رو وصل کن به زمین

                    تکلیف پایه فیلتر ات رو مشخص کن، یا زمین اش کن یا وصل اش کن به پنج ولت

                    مدار خودت هم با اینقدر خازن شلوغ نکن، تویش گم می شی
                    فعلا برای شروع کافیه بین پنج ولت و صفر ولت ات، خازن صد نانو و یک میکرو بذاری، وقتی کارت راه افتاد و بهش مطمئن شدی، هرقدر دلت خواست رویش خازن بذار

                    موفق باشی
                    برای کاری در حوزه اربعین نیاز به نیروی داوطلب هستیم.
                    http://hosseinwalkingday.com

                    دیدگاه


                      پاسخ : کتابخانهآ‌ای برای چیپ AD7780-AD7730

                      ممنون جناب مرتضی م.
                      ولی در یک نمونه توسط انالوگ دیوایس گذاشته منابع مستقل هستند ولی 3 ولت هست در لینک زیر هست.تشکر اگر بررسی کنید.
                      http://www.analog.com/en/analog-to-digital-converters/ad-converters/ad7190/products/product.html

                      دیدگاه


                        پاسخ : کتابخانهآ‌ای برای چیپ AD7780-AD7730

                        نوشته اصلی توسط gigi
                        ممنون جناب مرتضی م.
                        ولی در یک نمونه توسط انالوگ دیوایس گذاشته منابع مستقل هستند ولی 3 ولت هست در لینک زیر هست.تشکر اگر بررسی کنید.
                        http://www.analog.com/en/analog-to-d...s/product.html
                        لینک درست از خود آنالوگ بذار.
                        و عکس ات برام باز نشد

                        در کل استفاده از دو رگلاتور مجزا پنج ولت تو مدارات کار اشتباهی هست
                        برای کاری در حوزه اربعین نیاز به نیروی داوطلب هستیم.
                        http://hosseinwalkingday.com

                        دیدگاه


                          پاسخ : کتابخانهآ‌ای برای چیپ AD7780-AD7730

                          نوشته اصلی توسط gigi
                          ممنون جناب مرتضی م.
                          ولی در یک نمونه توسط انالوگ دیوایس گذاشته منابع مستقل هستند ولی 3 ولت هست در لینک زیر هست.تشکر اگر بررسی کنید.
                          http://www.analog.com/en/analog-to-digital-converters/ad-converters/ad7190/products/product.html
                          الان لینک باز شد.

                          آنالوگ یکی رو سه ولت گذاشته و یکی رو پنج ولت

                          به هر حال من تجربه شخصی ام رو گفتم، قراردادن دو رگلاتور مجزا کار اشتباه و پر نویزی هست.
                          البته تاکید می کنم رگلاتور درست و حسابی مثل ADP3303 تا حالا زیر دستم نیومده، مطالبی که می نویسم در حد 7805 , LF50 و LM1117 و ... اعتبار داره.
                          برای کاری در حوزه اربعین نیاز به نیروی داوطلب هستیم.
                          http://hosseinwalkingday.com

                          دیدگاه


                            پاسخ : کتابخانهآ‌ای برای چیپ AD7780-AD7730

                            من از تغذیه کامپیوتر (USB) استفاده کردم، و حداکثر دقت ممکن با لودسلی که داشتم رسیدم.
                            500 کیلو رو با دقت 17 گرم خوندم. البته لودسل ام بیشتر از این دقت نداشت. دوستان از مسائل نویز هیولا نسازند.
                            برای کاری در حوزه اربعین نیاز به نیروی داوطلب هستیم.
                            http://hosseinwalkingday.com

                            دیدگاه


                              پاسخ : کتابخانهآ‌ای برای چیپ AD7780-AD7730

                              تشکر جناب مرتضی م از اینکه وقت میگذارید و پاسخ می دهید.
                              به این دلیل پرسیدم که فرکانس ایجاد شده توسط spi روی خط مثبت dvdd باعث نویز روی avdd نمی شود ؟ اگه امکان دارد شماتیک و pcb این مدار که با لودسل 500 کیلوگرمی راه اندازی کردید قرار دهید. ممنونم

                              دیدگاه


                                پاسخ : کتابخانهآ‌ای برای چیپ AD7780-AD7730

                                نوشته اصلی توسط gigi
                                تشکر جناب مرتضی م از اینکه وقت میگذارید و پاسخ می دهید.
                                به این دلیل پرسیدم که فرکانس ایجاد شده توسط spi روی خط مثبت dvdd باعث نویز روی avdd نمی شود ؟ اگه امکان دارد شماتیک و pcb این مدار که با لودسل 500 کیلوگرمی راه اندازی کردید قرار دهید. ممنونم
                                شماتیک شرمنده :biggrin:
                                چون اصلا شماتیکی وجود نداره که بخوام برایت بذارم. مستقیما PCB می کشم.

                                این فرکانسی که روی خط SPI ایجاد می شه هیچ مشکلی ایجاد نمی کنه،دقت کنی میکرو Master تعریف می شه و کلاک SPI از سمت خود میکرو تامین می شه؛خود درگیری که تو میکرو نداریم!!!
                                برای کاری در حوزه اربعین نیاز به نیروی داوطلب هستیم.
                                http://hosseinwalkingday.com

                                دیدگاه

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