اطلاعیه

Collapse
No announcement yet.

راه اندازی max6675

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

    راه اندازی max6675

    سلام
    الآن چند روزه میخوام این آی سی رو راه بندازم نمیشه که نمیشه
    سیگنال هاشو که میگیرم
    درسته فقط هیچ دیتایی به سمت میکرو ارسال نمیکنه
    چند تا هم برنامه و پروژه آماده تو اینترنت پیدا کردم حتی اونا هم جواب نمیدن
    تو پروتئوس درست جواب میده فقط
    گفتم شاید آی سیم سوخته باشه رفتم یکی دیگه گرفتم بازم نشد
    پروتکلشم spi هست
    کسی نظری نداره؟
    نــــ_ـــمـــ_ــــیــــ_ـــدونـــــ_ــم.....

    #2
    پاسخ : راه اندازی max6675

    مشکلم حل شد
    خییییل نکته ظریفی داره
    باید بین هر بار خوندن یه تاخیر مثلا 500 میلی ثانیه ای بذاریم
    خیلی درگیرش بودم هر کی مشکل داشت با این آی سی همین کارو کنه درست میشه


    این مشکل به خاطر سرعت پایینشه ای کاش تو دیتاشیتش بهش اشاره میکرد
    نــــ_ـــمـــ_ــــیــــ_ـــدونـــــ_ــم.....

    دیدگاه


      #3
      پاسخ : راه اندازی max6675

      این مشکل توی بقیه ی ماژول هاهم هست
      مثلاhx711یا10شمابایدیه تاخیر100میلی ثانیه بذاری که بتونی اطلاعات روازای تودی بخونی
      درعجبم ازمردمی که به دنیایی مشتاقندکه ازآن دورمیشوندوگریزان ازآخرتیکه که روزبه روزبه آن نزدیک میشوند.

      دیدگاه


        #4
        پاسخ : راه اندازی max6675

        نوشته اصلی توسط mjs1990s نمایش پست ها
        مشکلم حل شد
        خییییل نکته ظریفی داره
        باید بین هر بار خوندن یه تاخیر مثلا 500 میلی ثانیه ای بذاریم
        خیلی درگیرش بودم هر کی مشکل داشت با این آی سی همین کارو کنه درست میشه


        این مشکل به خاطر سرعت پایینشه ای کاش تو دیتاشیتش بهش اشاره میکرد

        سلام
        داداش میشه نمونه کد با کدویژن بزاری برا راه اندازیش من هر کاری میکنم نمیتونم راش بندازم.

        دیدگاه


          #5
          پاسخ : راه اندازی max6675

          نوشته اصلی توسط mjs1990s نمایش پست ها
          مشکلم حل شد
          خییییل نکته ظریفی داره
          باید بین هر بار خوندن یه تاخیر مثلا 500 میلی ثانیه ای بذاریم
          خیلی درگیرش بودم هر کی مشکل داشت با این آی سی همین کارو کنه درست میشه


          این مشکل به خاطر سرعت پایینشه ای کاش تو دیتاشیتش بهش اشاره میکرد
          توی دیتاشیت نوشته که هر 230 میلی ثانیه باید دیتا بخونی
          اینم نمونه کد

          #define SCK 7 //SCK (serial clock) pin number
          #define CS 6 //CS (chip select) pin number
          #define SO 5 //SO (serial out, also MISO) pin number


          #define SCK_Port PORTE //SCK port name
          #define CS_Port PORTE //CS port name
          #define SO_Pin PINE //SO pin name
          #define SO_Port PORTE //so pin name


          #define SCK_DDR DDRE //SCK DDR name
          #define CS_DDR DDRE //CS DDR name
          #define SO_DDR DDRE //SO DDR name






          float gettemp(void);
          void init_6675(void);
          //char getTC(void);


          float gettemp(void){ //Temperatur holen.
          char bite = 0, bitnr = 12; //Variablen
          char foo1 = 0;
          int so_data = 0;
          float TC;

          CS_Port &= ~(1 << CS);
          for(foo1 = 0 ; foo1 < 16 ; foo1++){
          bite = 15 - foo1;
          SCK_Port |= (1 << SCK),delay_us(100);
          if((bite <= 14) && (bite >= 3)){
          if((SO_Pin & (1 << SO))){ //WENN SO 1 ist, dann...
          bitnr--; //z�hlen wir runter...
          so_data |= (1 << bitnr); // und schieben eine 1 an bit x
          }else{ //WENN dem NICHT so ist, dann...
          bitnr--; //z�hlen wir runter...
          so_data &= ~(1 << bitnr); //und schieben eine 0 an bit x
          }
          }else{ //weis au nimmer, was das soll.
          bitnr = 12;
          }
          SCK_Port &= ~(1 << SCK),delay_us(100); //SCK LO
          }
          CS_Port |= (1 << CS);
          TC=so_data*0.25;
          TC-=40.0;
          return TC; //Das ist doch mal was ;D
          }




          // getTC() returns 0 if Thermocouple is not connected, 255 if thermocuple is connected
          // (to enable this feature T- must be connected to GND)
          //char getTC(void){ //Temperatur holen. //Variablen
          // char TC = 0;
          // char foo1 = 0;
          // CS_Port &= ~(1 << CS); //Chip select anlegen
          // for(foo1 = 0 ; foo1 < 16 ; foo1++){ //16 Bits einlesen //Die Aktuelle Bitnr berechnen.
          // SCK_Port |= (1 << SCK); //SCK hi
          // if(foo1 == 2){ //das 3. bit ist f�r uns relevant.
          // if((SO_Pin & (1 << SO))){ //WENN SO 1 ist, dann...
          // TC = 0;
          // }else{ //WENN dem NICHT so ist, dann...
          // TC = 255;
          // }
          // }
          // SCK_Port &= ~(1 << SCK); //SCK LO
          // }
          // CS_Port |= (1 << CS); //CS HI //Alles auf Standardkonfig.
          // return TC; //Das ist doch mal was ;D
          //}
          //


          //Initiates the MAX6675 and IO-pins
          void init_6675(void){ //AVR initialisieren


          SO_DDR &= ~(1 << SO);
          CS_DDR |= (1 << CS);
          SCK_DDR |= (1 << SCK); //IOs setzen

          SO_Port |= (1<<SO); //Pullups an. (Wichtig f�r MAX6675, der kann nicht anders, hab ich festgestellt...


          CS_Port |= (1 << CS); //CS HI //Alles auf Standardkonfig.
          SCK_Port &= ~(1 << SCK); //SCK LO
          }




          float GET_TEMP(){
          float TEMP;



          TEMP=gettemp();
          TEMP+=25;
          if(TEMP>500 && TEMP<0)TEMP=0;
          return TEMP;


          }




          //++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++








          دیدگاه


            #6
            پاسخ : راه اندازی max6675

            سلام. تشکر بابت برنامه. برنامه چی دمای بدست آمده رو TC-=40.0; و بعد جای دیگه باز TEMP+=25 انجام دادی. برنامه تو پروتءوس جواب نمیده

            دیدگاه


              #7
              پاسخ : راه اندازی max6675

              پروتئوس ولش کن . بعضی قطعات داخلش اکتیو نیستند . عملی ببند و به پروتئوس هم اصلا اطمینان نکن

              دیدگاه


                #8
                پاسخ : راه اندازی max6675

                باشه. قطعاتش رو میخرم میبندم. دستت درد نکنه

                دیدگاه


                  #9
                  پاسخ : راه اندازی max6675

                  با سلام ، اگر ممکنه برای 1768 هم توابع رو بنویسید

                  دیدگاه


                    #10
                    پاسخ : راه اندازی max6675

                    سلام
                    کار با این ic بسیار جالب و راحت هست
                    برای جواب دهی بهتر بعد از هر بار خوندن دیتا 1 ثانیه صب کنید.و انجمن رو سرچ کنین یکی از دوستان براش کدی گذاشته بودن که خیلی عالی کار میکرد.

                    دیدگاه


                      #11
                      پاسخ : راه اندازی max6675

                      تشکر بابت پاسختون.بنده نیاز به کد به زبان زی کیل برای میکرو ارم 1768 دارم. دوستان اگر امکانش هست کمک کنند.حاضر به پرداخت هزینه هم هستم. تشکر

                      دیدگاه


                        #12
                        پاسخ : راه اندازی max6675

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

                        دیدگاه


                          #13
                          پاسخ : راه اندازی max6675

                          نوشته اصلی توسط pouria1997 نمایش پست ها
                          سلام
                          میشه لطف کنید یه نمونه کد یا مثال از راه اندازی max6675 بزارید ؟
                          من هیچ جوره نتونستم راه اندازیش کنم متاسفانه
                          سلام. کار زیاد سختی نیست SPI هست شما پایه CS رو از 1 به 0 ببرید چیپ آماده ارسال رجیستر دما میشه و با هر پالس کلاک بیت به بیت دیتا در خروجی می زاره.البته من بصورت عملی چک نکردم ولی امدم در پروتئوس راه اندازی کنم کار نکرد به احتما زیاد از پروتئوس هست ولی توی پروژه ای پروتئوس نگاه کنید یه پروژه هست

                          دلیل: ادغام دو پست برای جلوگیری از اسپم

                          الان پروتئوس 8.8 رو چک کردم آیسی توی کار می کنه مشکلی نداره می تونید راه بندازید 12 بیت دیتا دما طبق دیتاشیت با میکرو دریافت کن بعد 12 بیت یه بیت به راست شیفت بده(اون یه بیت مربوط قسمت اعشاری دما هست) میشه قسمت صحیح دما.موفق باشید
                          جدیدترین ویرایش توسط MM320; ۱۵:۳۴ ۱۳۹۸/۰۵/۱۹.

                          دیدگاه


                            #14
                            پاسخ : راه اندازی max6675

                            سلام من تو نمایش در حالت رفرش دارم کسی میتونه کمکی کنه؟حالت استاتیک دما رو قشنگ نشون میده وخوبه ولی تو رفرش اعداد بهم میریزه
                            { خلاف قوانین - پاک شد }

                            دیدگاه

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