下你所需,载你所想!
汇集开发技术源码资料

5kg电子秤1602显示单片机程序代码

:56.62KB :1 :2022-10-12 15:35:21

部分简介

5kg电子秤1602显示单片机程序代码如果开发者对于本文件有需要的可以参考。
├── 5kg配套源程序
│ ├── HX711.H
│ ├── HX711.LST
│ ├── HX711.OBJ
│ ├── HX711.c
│ ├── LCD1602.LST
│ ├── LCD1602.OBJ
│ ├── LCD1602.c
│ ├── LCD1602.h
│ ├── MAIN.H
│ ├── lcd12864.LST
│ ├── lcd12864.OBJ
unsigned char flag = 0;
bit Flag_ERROR = 0;
//校准参数
//因为不同的传感器特性曲线不是很一致,因此,每一个传感器需要矫正这里这个参数才能使测量值很准确。
//当发现测试出来的重量偏大时,增加该数值。
//如果测试出来的重量偏小时,减小改数值。
//该值可以为小数
#define GapValue 440//不同量程的传感器此参数值大小不同,参数值的推导参考本店提供的原理教程说明部分
//****************************************************
//主函数
//****************************************************
void main()
{
Uart_Init();
Send_Word("Welcome to use!\n"); //串口初始化输出内容
Init_LCD1602();
LCD1602_write_com(0x80);
LCD1602_write_word("Welcome to use!"); //液晶初始化界面显示
Delay_ms(1000); //延时,等待传感器稳定
Get_Maopi(); //称毛皮重量
Delay_ms(1000); //延时,等待传感器稳定
Get_Maopi(); //称毛皮重量
while(1)
{
EA = 0;
Get_Weight(); //称重
EA = 1;
//显示当前重量
if( Flag_ERROR == 1) //超重或者负重情况下输出error
{
Send_Word("ERROR\n");
LCD1602_write_com(0x80 0x40);
LCD1602_write_word("ERROR ");
}
else //以下是重量显示各个位对应值进行换算
{ //串口输出
Send_ASCII(Weight_Shiwu/1000 0X30);
Send_ASCII(Weight_Shiwu%1000/100 0X30);
Send_ASCII(Weight_Shiwu%100/10 0X30);
Send_ASCII(Weight_Shiwu%10 0X30);
Send_Word(" g\n");
//LCD1602液晶显示
LCD1602_write_com(0x80 0x40);
LCD1602_write_data(Weight_Shiwu/1000 0X30);
LCD1602_write_data(Weight_Shiwu%1000/100 0X30);
LCD1602_write_data(Weight_Shiwu%100/10 0X30);
LCD1602_write_data(Weight_Shiwu%10 0X30);
LCD1602_write_word(" g");
}
}
}

5kg电子秤1602显示单片机程序代码

热门推荐

相关文章