اطلاعیه

Collapse
No announcement yet.

راه اندازی ماژول HX711 با بسکام

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

    راه اندازی ماژول HX711 با بسکام

    با سلام خدمت همه دوستان بنده تازه ماژول لودسل HX711 رو خریداری کردم و خیلی راحت تونستم راه اندازیش کنم دیدم بعضی از دوستان تو این زمینه مشکل دارن برنامه رو گذاشتم تا اگه کسی مشکی داره ازش استفاده کنه

    '---------------------- HX711 LoadCell Madule ----------------------------------


    $regfile = "m16def.dat"
    $crystal = 8000000
    '-------------------------------------------------------------------------------

    Config Lcd = 16 * 2
    Config Lcdpin = Pin , Rs = Portc.0 , E = Portc.1 , Db4 = Portc.2 , Db5 = Portc.3 , Db6 = Portc.4 _
    , Db7 = Portc.5

    Cls

    Lcd "morteza"
    Waitms 3000
    Cls

    Config Portb.0 = Output
    Config Pinb.1 = Input

    Sck Alias Portb.0
    Datain Alias Pinb.1

    Sck = 0
    Datain = 1

    Dim Weight As Long
    Dim I As Byte

    Do

    While Datain = 0

    For I = 1 To 24

    Sck = 1
    Rotate Weight , Left
    If Datain <> 0 Then Incr Weight
    Sck = 0

    Next I

    Sck = 1
    Weight = Weight Xor &H800000
    Sck = 0

    Wend

    Cls
    Lcd Weight
    Waitms 2000

    Loop

    End
    www.ElectronShop.ir

    #2
    پاسخ : راه اندازی ماژول HX711 با بسکام

    ممنون از برنامه ای که گذاشتید، خدا خیرت بده.این برنامه ای که گذاشتید 24bit راه اندازی کردید؟اگر بخوام از دو ورودی ماژول برای دو لودسل استفاده کنم باید چیکار کنم؟

    دیدگاه


      #3
      پاسخ : راه اندازی ماژول HX711 با بسکام

      نوشته اصلی توسط ali_elect62
      ممنون از برنامه ای که گذاشتید، خدا خیرت بده.این برنامه ای که گذاشتید 24bit راه اندازی کردید؟اگر بخوام از دو ورودی ماژول برای دو لودسل استفاده کنم باید چیکار کنم؟
      با توجه به دیتاشیت اگه 25 کلاک ارسال کنی از کانال A با با گین 128 اطلاعات رو دریافت میکنی اگه 26 کلاک ارسال کنی با گین 32 از کانال B اطلاعات رو دریافت میکنی و اگر 27 کلاک ارسال کنی با گین 64 از کانال A اطلاعات رو دریافت خواهید کرد
      در هر صورت اطلاعات دریافت شده با توجه به دیتاشیت 24 بیت است فقط گین در واقع گستره کاری تغییر میکند و دقت تغییر میکند

      برنامه ای که در پست اول قرار دادم کانال A با گین 128 است که اگر پس دستور به صورت زیر نوشته شود از کانال B با گین 32 خوانده میشود

      .
      .
      .
      Sck = 1
      Weight = Weight Xor &H800000
      Sck = 0

      Sck=1
      Sck=0

      WEND
      .
      .
      و اگر به صورت زیر باشد کانال A با گین 64 خوانده میشود
      .
      .
      .
      Sck = 1
      Weight = Weight Xor &H800000
      Sck = 0

      SCK=1
      SCK=0

      SCK=1
      SCK=0

      WEND

      .
      .
      .

      ا
      www.ElectronShop.ir

      دیدگاه


        #4
        پاسخ : راه اندازی ماژول HX711 با بسکام

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

        دیدگاه


          #5
          پاسخ : راه اندازی ماژول HX711 با بسکام

          نوشته اصلی توسط ali_elect62
          ممنون از پاسخ که دادید.من متوجه نشدم چطوری کانال ورودی انتخاب می کنید.اگر امکان داره توضیح مختصری بدید
          توضیح دادم .شما اگه 26 کلاک ارسال کنید دیتای کانال B رو دریافت خواهید کرد و اگر 25 یا 27 کلاک کانال A
          24 کلاک برای دریافت 24 بیت اطلاعات و 3 کلاک دیگر برای انتخاب کانال و گین ماژول است
          ببین اگه میخای یه بار کانال A و یه بار کانال B رو بخونید همون برنامه ای که نوشتم رو باید به صورت زیر بنویسید

          $regfile = "m16def.dat"
          $crystal = 8000000
          '-------------------------------------------------------------------------------

          Config Lcd = 16 * 2
          Config Lcdpin = Pin , Rs = Portc.0 , E = Portc.1 , Db4 = Portc.2 , Db5 = Portc.3 , Db6 = Portc.4 _
          , Db7 = Portc.5

          Cls

          Lcd "morteza"
          Waitms 3000
          Cls

          Config Portb.0 = Output
          Config Pinb.1 = Input

          Sck Alias Portb.0
          Datain Alias Pinb.1

          Sck = 0
          Datain = 1

          Dim Weight As Long
          Dim I As Byte

          Do

          While Datain = 0

          For I = 1 To 24

          Sck = 1
          Rotate Weight , Left
          If Datain <> 0 Then Incr Weight
          Sck = 0

          Next I

          Sck = 1
          Weight = Weight Xor &H800000
          Sck = 0

          Wend

          Cls
          Lcd Weight
          Waitms 1000
          Weight =0

          While Datain = 0

          For I = 1 To 24

          Sck = 1
          Rotate Weight , Left
          If Datain <> 0 Then Incr Weight
          Sck = 0

          Next I

          Sck = 1
          Weight = Weight Xor &H800000
          Sck = 0


          Sck = 1
          Sck =0

          Wend

          home l
          Lcd Weight
          Waitms 1000
          Weight =0
          Loop

          End
          www.ElectronShop.ir

          دیدگاه


            #6
            پاسخ : راه اندازی ماژول HX711 با بسکام

            من برنامه اجراء کردم، لودسل به ماژول وصل کردم اعدای که دریافت می کنم دائم در حال تغییر زیادی هستش.عدها یا 9 رقمی یا 10 و 11 در حال تغییر هستش و یا منفی می شود.چطوری می شود اعداد اصلی که می توانم به وزن تبدیل کنم از این اعداد استخراج کنم؟

            دیدگاه


              #7
              پاسخ : راه اندازی ماژول HX711 با بسکام

              نوشته اصلی توسط ali_elect62
              من برنامه اجراء کردم، لودسل به ماژول وصل کردم اعدای که دریافت می کنم دائم در حال تغییر زیادی هستش.عدها یا 9 رقمی یا 10 و 11 در حال تغییر هستش و یا منفی می شود.چطوری می شود اعداد اصلی که می توانم به وزن تبدیل کنم از این اعداد استخراج کنم؟
              با ولتمتر میلی ولت کانالی که لودسل وصل کردی رو بگیر همچنین ولتاژ ورودی لودسلارو (EX)
              معمولا وقتی کانال باز باشه همچین حالتی داره
              www.ElectronShop.ir

              دیدگاه


                #8
                پاسخ : راه اندازی ماژول HX711 با بسکام

                با ولتمتر میلی ولت کانالی که لودسل وصل کردی رو بگیر همچنین ولتاژ ورودی لودسلارو (EX)
                معمولا وقتی کانال باز باشه همچین حالتی داره
                ولتاژ ها رو گرفتم مشکلی نداشت. EX=4.2 V و A=0-15 MV
                نمی دونم چرا اعداد بی ربط می ده! شما که راه اندازیش کردید رنج اعدادی که می داد به چه صورتی بود؟چند رقمی بود؟چطوری اعداد اصلی از این ارقام جدا کردید؟

                دیدگاه


                  #9
                  پاسخ : راه اندازی ماژول HX711 با بسکام

                  نوشته اصلی توسط ali_elect62
                  ولتاژ ها رو گرفتم مشکلی نداشت. EX=4.2 V و A=0-15 MV
                  نمی دونم چرا اعداد بی ربط می ده! شما که راه اندازیش کردید رنج اعدادی که می داد به چه صورتی بود؟چند رقمی بود؟چطوری اعداد اصلی از این ارقام جدا کردید؟
                  اون قسمت xor رو حذف کن و اطلاعات رو بخون ببین چی میشه ؟
                  www.ElectronShop.ir

                  دیدگاه


                    #10
                    پاسخ : راه اندازی ماژول HX711 با بسکام

                    بین 16000 تا 150000 تغییر داشت
                    اون قسمت xor رو حذف کن و اطلاعات رو بخون ببین چی میشه ؟
                    یادت باشه باارزش ترین بیت یعنی بیت 23 بیت علامت منفی یا مثبت است که باید اونو جدا کنی بعد بقیه بیتارو به دسیمال تبدیل کنی
                    این عددی که میده از چه نوعی هستش؟ دسیمال نیست؟چطوری باید بیت 23 حذف کنم؟میشه در برنامه ای که دادید این اصلاحیات انجام بدید؟من در برنامه نوسی خیلی ضعیفم.واقعا از شما ممنونم

                    دیدگاه


                      #11
                      پاسخ : راه اندازی ماژول HX711 با بسکام

                      xor هم حذف کردم درست نشد

                      دیدگاه


                        #12
                        پاسخ : راه اندازی ماژول HX711 با بسکام

                        این برنامه اجرا کردم برای لحظاتی درست کار کرد و بعد عدد صفر داد.اگر امکان داره این برنامه را برسی کنید اشکال این برنامه کجاست؟
                        regfile = "m16def.dat"
                        $crystal = 8000000
                        '-------------------------------------------------------------------------------

                        Config Lcd = 16 * 2
                        Config Lcdpin = Pin , Rs = Portc.0 , E = Portc.1 , Db4 = Portc.2 , Db5 = Portc.3 , Db6 = Portc.4 _
                        , Db7 = Portc.5
                        Dim X As Byte , Cnt As Byte
                        Dim Sn(4) As Byte , I As Byte
                        Dim A As Word , Er As Word , O As Long
                        Config Portb.0 = Output
                        Config Pinb.1 = Input
                        Din Alias Pinb.1
                        Sck Alias Portb.0
                        Cls
                        Locate 1 , 1
                        Lcd "F="
                        Reset Sck
                        set Din

                        Do
                        Cls
                        Set Sck
                        For X = 1 To 4
                        A = 0
                        Reset Sck
                        Set Sck
                        For Cnt = 1 To 6


                        If Din = 1 Then
                        Shift A , Left
                        A = A + 1
                        Else
                        Shift A , Left
                        End If
                        Reset Sck
                        Next
                        Sn(x) = A
                        Locate 1 , 1
                        Lcd "F=" ; O ; Sn(2)
                        Reset Sck
                        Next
                        Set Sck
                        If A <> 73 And A <> 9 Then Incr Er
                        O = Sn(1)
                        Shift O , Left , 8
                        O = O Or Sn(2)
                        Shift O , Left , 8
                        O = O Or Sn(3)
                        Reset Sck
                        Locate 2 , 1
                        Lcd "F=" ; Sn(3) ; O
                        Sn(4) = 0
                        O = 0
                        X = 0
                        Cnt = 0
                        A = 0
                        Wait 2
                        Loop

                        دیدگاه


                          #13
                          پاسخ : راه اندازی ماژول HX711 با بسکام

                          کسی نیست تو راه اندازی این ماژول کمک کنه؟ :angry:

                          دیدگاه


                            #14
                            پاسخ : راه اندازی ماژول HX711 با بسکام

                            نوشته اصلی توسط ali_elect62
                            کسی نیست تو راه اندازی این ماژول کمک کنه؟ :angry:
                            اینم اصلاحیه برنامه راه اندازی ماژول Hx711 من با این جواب گرفتم اگه با اینم نتونی جواب منطقی بگیری باید جای دیگه دنبال مشکلت باشی

                            '--------------------- hx711 by morteza pourhasan 09158875113 ------------------


                            $regfile = "m32def.dat"
                            $crystal = 1000000
                            $hwstack = 40
                            $swstack = 60
                            $framesize = 32

                            '-------------------------------------------------------------------------------

                            '-------------------------------------------------------------------------------
                            Config Lcd = 16 * 2
                            Config Lcdpin = Pin , Rs = Porta.5 , E = Porta.4 , Db4 = Porta.3 , _
                            Db5 = Porta.2 , Db6 = Porta.1 , Db7 = Porta.0

                            Cursor Off
                            Cls

                            Config Portd.2 = Output
                            Ddrd.3 = 0 : Portd.3 = 1


                            '-------------------------------------------------------------------------------


                            Sck Alias Portd.2
                            Datain Alias Pind.3

                            '-------------------------------------------------------------------------------



                            Dim Weight As Long
                            Dim I As Byte

                            Sck = 0
                            Weight = 0


                            '-------------------------------------------------------------------------------


                            Do


                            While Datain = 0

                            For I = 1 To 24

                            Sck = 1
                            Rotate Weight , Left
                            Sck = 0
                            If Datain <> 0 Then Incr Weight

                            Next I

                            Sck = 1
                            Weight = Weight Xor &H800000
                            Sck = 0

                            'Sck = 1
                            'Sck = 0 'for chanal B select

                            'Sck = 1
                            'Sck = 0 'for chanal A select by gain 64

                            Wend


                            Cls
                            Lcd Weight

                            Weight = 0
                            Waitms 2000


                            Loop

                            End
                            www.ElectronShop.ir

                            دیدگاه


                              #15
                              پاسخ : راه اندازی ماژول HX711 با بسکام

                              سلام
                              به نظرم برنامه شما مشکل داره .
                              چطوری ماژول اول دیتارو میده بعد شما بهش میگید کانال A یا B رو میخواید.

                              من برنامه خود دیتاشیت رو نوشتم ولی بازم مشکل داشت.برنامه اگه کانال B رو به زمین وصل کنم عدد ثابت میشه و دیگه تغییر نمیکنه.ولی اگه کانال B به جایی وصل نباشه با تغییر در وردی A عدد تغییرات داره و درست هم هست.فقط مشکلی که داره اینه که هم به ورودی B بستگی داره و هم اینکه عدد 15 بیتی هست هر کاری میکنم 24 بیت نمیشه.

                              دیدگاه

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