I am wanting to write some arduino code that interprets the output of a HX711 ADC (This will be the output voltage from a Wheatstone bridge with strain gauges in 2's compliment form). I know that there are libraries available but I want to have a crack at it myself so I know exactly how it works and as the project matures I can be in a better position to develop on it.
How much time do you have to give between conversion periods so that the HX711 applies the correct gain and doesn't apply the wrong gain and start the new conversion period sooner than was wanted? I am looking at the data sheet but can't see where this information is given.
Here is what I am thinking the basic logic of the program would be (assuming that I am wanting a gain of 128 on Input channel A):
1. Apply 2.7~5.5V to DVDD, VSUP, BASE, VFB, VAVDD & Load Cell - I.e provide power to the circuit
2. Pulse PD_SCK on for 1 micro second and then off for 1 micro second
3. Read and store bit that is shifted out of DOUT output pin
4. Repeat 2 and 3 for 25 pulses
5. Combine the bits into one binary number with the first being the most significant bit and the last being the least significant.
Seen as this is 24-bits would anything be outputted on the 25th pulse? If so would you just discount this from the 2's compliment number?
6. Convert 2's complement back to voltage value
7. Apply relationship to turn voltage reading into a value for force. This will be multiplied by a correction factor that will be determined through experimentation.
Is there anything that I have misunderstood or missed out? I appreciate that 6 and 7 each involve a few steps.
Thanks a lot for your time and help.
How much time do you have to give between conversion periods so that the HX711 applies the correct gain and doesn't apply the wrong gain and start the new conversion period sooner than was wanted? I am looking at the data sheet but can't see where this information is given.
Here is what I am thinking the basic logic of the program would be (assuming that I am wanting a gain of 128 on Input channel A):
1. Apply 2.7~5.5V to DVDD, VSUP, BASE, VFB, VAVDD & Load Cell - I.e provide power to the circuit
2. Pulse PD_SCK on for 1 micro second and then off for 1 micro second
3. Read and store bit that is shifted out of DOUT output pin
4. Repeat 2 and 3 for 25 pulses
5. Combine the bits into one binary number with the first being the most significant bit and the last being the least significant.
Seen as this is 24-bits would anything be outputted on the 25th pulse? If so would you just discount this from the 2's compliment number?
6. Convert 2's complement back to voltage value
7. Apply relationship to turn voltage reading into a value for force. This will be multiplied by a correction factor that will be determined through experimentation.
Is there anything that I have misunderstood or missed out? I appreciate that 6 and 7 each involve a few steps.
Thanks a lot for your time and help.
Last edited: