Eugene Mwangi
/
mbed_blinky
A test program for hx711 built for mbed Os framework.
main.cpp@26:6e6f41635ff2, 2019-06-25 (annotated)
- Committer:
- Eugene0469
- Date:
- Tue Jun 25 15:17:21 2019 +0000
- Revision:
- 26:6e6f41635ff2
- Parent:
- 25:611277904537
Create a hx711 test code;
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
dan | 0:7dec7e9ac085 | 1 | #include "mbed.h" |
Eugene0469 | 25:611277904537 | 2 | #include "Hx711.h" |
Eugene0469 | 25:611277904537 | 3 | |
Eugene0469 | 25:611277904537 | 4 | |
dan | 0:7dec7e9ac085 | 5 | |
Eugene0469 | 25:611277904537 | 6 | float calibration_factor = -1.0f; // this calibration factor is adjusted according to my load cell |
Eugene0469 | 25:611277904537 | 7 | int32_t units_raw; |
Eugene0469 | 25:611277904537 | 8 | float units; |
Eugene0469 | 25:611277904537 | 9 | float ounces; |
Eugene0469 | 25:611277904537 | 10 | int offset = 0; |
Eugene0469 | 25:611277904537 | 11 | |
Eugene0469 | 25:611277904537 | 12 | Hx711 scale(D4, D5); |
Eugene0469 | 25:611277904537 | 13 | |
Eugene0469 | 25:611277904537 | 14 | //void delay(int delay){ |
Eugene0469 | 25:611277904537 | 15 | // for(int i=0; i<delay;i++) |
Eugene0469 | 25:611277904537 | 16 | //} |
dan | 0:7dec7e9ac085 | 17 | |
dan | 0:7dec7e9ac085 | 18 | int main() { |
Eugene0469 | 25:611277904537 | 19 | printf("HX711 calibration sketch\n"); |
Eugene0469 | 25:611277904537 | 20 | printf("Remove all weight from scale\n"); |
Eugene0469 | 25:611277904537 | 21 | printf("After readings begin, place known weight on scale\n"); |
Eugene0469 | 25:611277904537 | 22 | printf("Press + or a to increase calibration factor\n"); |
Eugene0469 | 25:611277904537 | 23 | printf("Press - or z to decrease calibration factor\n"); |
Eugene0469 | 25:611277904537 | 24 | |
Eugene0469 | 25:611277904537 | 25 | offset = (int)scale.read(); |
Eugene0469 | 25:611277904537 | 26 | scale.set_offset(offset); |
Eugene0469 | 25:611277904537 | 27 | printf("Reading: %d \n",offset); |
Eugene0469 | 25:611277904537 | 28 | scale.set_scale(calibration_factor); |
dan | 0:7dec7e9ac085 | 29 | while(1) { |
Eugene0469 | 25:611277904537 | 30 | wait_ms(1000); |
Eugene0469 | 25:611277904537 | 31 | |
Eugene0469 | 25:611277904537 | 32 | units_raw = scale.readRaw(); |
Eugene0469 | 25:611277904537 | 33 | units = scale.read(); |
Eugene0469 | 25:611277904537 | 34 | if (units < 0) |
Eugene0469 | 25:611277904537 | 35 | { |
Eugene0469 | 25:611277904537 | 36 | units = 0.00; |
Eugene0469 | 25:611277904537 | 37 | } |
Eugene0469 | 25:611277904537 | 38 | // ounces = units * 0.035274f; |
Eugene0469 | 25:611277904537 | 39 | printf("Raw reading: %d grams. \n",units_raw); |
Eugene0469 | 25:611277904537 | 40 | printf("Actual reading: %f grams. \n",units); |
Eugene0469 | 25:611277904537 | 41 | // printf("Calibration_factor: %f\n",calibration_factor); |
Eugene0469 | 25:611277904537 | 42 | wait_ms(10000); |
stevep | 4:81cea7a352b0 | 43 | } |
dan | 0:7dec7e9ac085 | 44 | } |
Eugene0469 | 25:611277904537 | 45 | |
Eugene0469 | 25:611277904537 | 46 | |
Eugene0469 | 25:611277904537 | 47 | |
Eugene0469 | 25:611277904537 | 48 | |
Eugene0469 | 25:611277904537 | 49 | |
Eugene0469 | 25:611277904537 | 50 | |
Eugene0469 | 25:611277904537 | 51 |