用arduino写一个HX711与1-8S蜂鸣器的代码,将物体放在HX711上,蜂鸣器不会报警,将物体离开HX711上,蜂鸣器报警
时间: 2024-03-14 17:45:39 浏览: 93
下面是一个使用HX711与1-8S蜂鸣器的Arduino代码,实现将物体放在HX711上时,蜂鸣器不会报警,将物体离开HX711上时,蜂鸣器报警的功能。
```
#include "HX711.h"
#define BuzzerPin 2
HX711 scale;
float calibration_factor = 1234.5; //校准系数
void setup() {
pinMode(BuzzerPin, OUTPUT); //将蜂鸣器引脚设为输出模式
Serial.begin(9600);
scale.begin(LOADCELL_DOUT_PIN, LOADCELL_SCK_PIN);
scale.set_scale(calibration_factor); //设置校准系数
scale.tare(); //调零
}
void loop() {
float weight = scale.get_units(); //读取重量值
Serial.print("Weight: ");
Serial.print(weight);
Serial.println(" kg");
if (weight > 0.1) { //如果重量大于0.1kg,蜂鸣器不报警
digitalWrite(BuzzerPin, LOW);
} else { //如果重量小于等于0.1kg,蜂鸣器报警
digitalWrite(BuzzerPin, HIGH);
delay(1000); //等待1秒钟
digitalWrite(BuzzerPin, LOW);
delay(1000); //等待1秒钟
}
}
```
在这段代码中,我们首先定义了蜂鸣器引脚为2号引脚,并在 `setup()` 函数中初始化了传感器,设置了校准系数并调零。在 `loop()` 函数中,我们读取传感器的输出值,并根据重量值来控制蜂鸣器的报警状态。如果重量大于0.1kg,蜂鸣器不报警;如果重量小于等于0.1kg,蜂鸣器报警,并在报警状态下每隔1秒钟交替发出高低电平信号。
阅读全文