本帖最后由 ytmingg 于 2020-9-17 22:41 编辑
Arduino 10kg电子秤程序(hx711+oled12864屏幕)
1.程序
#include <HX711.h>
#include "U8glib.h"
U8GLIB_SSD1306_128X64 u8g(U8G_I2C_OPT_NONE);
#define AR_SIZE( a ) sizeof( a ) / sizeof( a[0] )
int Weight = 0;
char str[4]; //定义重量值存储数组,5位,其中4位为数字,1位为小数点
int temp =0; //定义重量值中间变量,,用于将获取的float型重量值转变为unsigned char数组
void draw(void) {
u8g.setFont(u8g_font_8x13); //使用8x13大小的字符
u8g.setPrintPos(0, 20); // 对应 x,y 轴值
u8g.print(" weight:");
u8g.setPrintPos(60, 50);
u8g.print(Weight);
u8g.setPrintPos(100, 50); // 对应 x,y 轴值
u8g.print("g");
}
void setup() {
Serial.begin(9600);
Init_Hx711();//初始化HX711模块连接的IO设置
Get_Maopi(); //获取毛皮
delay(200);
Get_Maopi(); //获取毛皮
}
void loop()
{
Weight = Get_Weight();//计算放在传感器上的重物重量
temp =Get_Weight();
if(temp<0){ temp =0; }
dtostrf(temp,4,0,str);
Serial.print("W="); //串口显示重量
Serial.print(Weight); //串口显示重量
Serial.print(" g\n"); //显示单位
delay(200);
u8g.firstPage();
do
{
draw();
}
while ( u8g.nextPage() );
}
2.附件
10kg.zip
(999 Bytes, 下载次数: 31)
U8glib.zip
(1.01 MB, 下载次数: 28)
10kg.zip
(999 Bytes, 下载次数: 21)
|