基于51单片机智能电子秤

实物显示效果:

https://www.bilibili.com/video/BV1Wb4y1A7Aw/?vd_source=6ff7cd03af95cd504b60511ef9373a1d

功能介绍:

1 用键盘设计单价;

(2)称重后同时显示该物品的重量、单价和总额;

(3)称重完之后有去皮功能;

(4)能够实现总额的累加功能;

(5)预存多种商品的单价并随意调出适用;

(6)该系统能实现电子秤的基本称重的功能,范围为0到10kg,重量误差在±0.001kg

(7)系统具备输入单价,计算总价以及语音报价的功能

(8)当称重的重量超过5kg时, led亮。(9)当 称重的 重量 超过 10 kg时,LED闪烁并报警。

10 )此次设计的电子秤在不称重的时候要能显示时钟日历(显示年月日及星期)

项目应用前景:

电子秤是电子衡器中的一种,衡器是国家法定计量器具,是国计民生、国防建设、科学研究、内外贸易不可缺少的计量设备,衡器产品技术水平的高低,将直接影响各行各业的现代化水平和社会经济效益的提高。称重装置不仅是提供重量数据的单体仪表,而且作为工业控制系统和商业管理系统的一个组成部分,推进了工业生产的自动化和管理的现代化,它起到了缩短作业时间、改善操作条件、降低能源和材料的消耗、提高产品质量以及加强企业管理、改善经营管理等多方面的作用。称重装置的应用已遍及到国民经济各领域,取得了显著的经济效益。因此,称重技术的研究和衡器工业的发展各国都非常重视。

国内外现状及水平:

50年代中期电子技术的渗入推动了衡器制造业的发展。60年代初期出现机电结合式电子衡器以来,经过40多年的不断改进与完善,我国电子衡器从最初的机电结合型发展到现在的全电子型和数字智能型。现今电子衡器制造技术及应用得到了新发展。电子称重技术从静态称重向动态称重发展:计量方法从模拟测量向数字测量发展;测量特点从单参数测量向多参数测量发展,特别是对快速称重和动态称重的研究与应用。通过分析近年来电子衡器产品的发展情况及国内外市场的需求,电子衡器总的发展趋势是小型化、模块化、集成化、智能化;其技术性能趋向是速率高、准确度高、稳定性高、可靠性高;其功能趋向是称重计量的控制信息和非控制信息并重的"智能化"功能;其应用性能趋向于综合性和组合性。电子秤是电子衡器中的一种,衡器是国家法定计量器具,是国计民生、国防建设、科学研究、内外贸易不可缺少的计量设备,衡器产品技术水平的高低,将直接影响各行各业的现代化水平和社会经济效益的。

近年来,电子秤已愈来愈多地参与到数据处理和过程控制中。现代称重技术和数据系统已经成为工艺技术、储运技术、预包装技术、收货业务及商业销售领域中不可缺少的组成部分。随着称重传感器各项性能的不断突破,为电子秤的发展奠定了其础,国外如美国、西欧等一些国家在2 0世纪6 0年代就出现了0 .1%称量准确度的电子秤,并在7 0年代中期约对75%的机械秤进行了机电结合式的电子化改造。

目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。单片机具有体积小、功耗低、控制功能强、扩展灵活、微型化和使用方便等优点,广泛应用于仪器仪表中,结合不同类型的传感器,可实现诸如电压、功率、频率、湿度、温度、流量、速度、厚度、角度、长度、硬度、元素、压力等物理量的测量。采用单片机控制使得仪器仪表数字化、智能化、微型化,且功能比起采用电子或数字电路更加强大。采用单片机设计的电子称会越来越适应社会的发展,响应经济的要求。

按键定义:

系统主框图展示:

原理图设计(Atium Designer):

Proteus仿真图:

时间显示界面:

计算单价界面:

部分源码程序:

论文目录:

论文所需程序流程图:

主程序设计:

void main()
{
    yyxp_rest=1;
	yyxp_data=1;
	init_eeprom();  //开始初始化保存的数据
	Init_LCD1602();									//初始化LCD1602
   EA = 0;
   Data_Init();
   Timer0_Init();
   //初中始化完成,开断
   EA = 1;
//	 Ds1302Init();
//	Get_Maopi();
	LCD1602_write_com(0x80);						//指针设置
   LCD1602_write_word(" Welcome To Use ");	//  
   LCD1602_write_com(0x80+0x40);						//指针设置
   LCD1602_write_word("Electronic Scale");
   Delay_ms(2000);
   Get_Maopi();
   LCD1602_write_com(0x80);						//指针设置
   LCD1602_write_word("WE:0.000 PR:00.0");
   LCD1602_write_com(0x80+0x40);				//指针设置
   LCD1602_write_word("S:  0.0  T:  0.0");
   Display_Price();
//	Get_Maopi();				//称毛皮重量
//	Weight_Shiwu = 9000;
	while(1)
	{
//每0.5秒称重一次
	  if (FlagTest==1&&keynum==0)
		{
	    	Get_Weight();
	     }			
	
	  if(Weight_Shiwu<10)
	  {
	  keyscan();
	  if(keynum==0)
	  display();
	   	 if(key2==0)
		{
		 Delay_ms(5);
		 if(key2==0)
		 {
		    speak(41);
			if(qupi==0)
				qupi=Weight_Shiwu;
			else
				qupi=0;
		 
		    while(key2==0);
		 }
         }
	  }
	  else
	  {
	    keycode = Getkeyboard();
		if(K1==0)
		{
		 Delay_ms(5);
		 if(K1==0)
		 {
		  
		  total_money += money;
		  Display_Money();
		  bofang(1,total_money);
		  while(K1==0);
		 }
	 
		}
	   if(key1==0)
		{
		 Delay_ms(5);
		 if(key1==0)
		 {
		  
		  total_money = 0;
		  Display_Money();
		  bofang(1,total_money);
		  while(key1==0);
		 }
         }
		 if(key3==0)
		{
		 Delay_ms(5);
		 if(key3==0)
		 {
		  
		  total_money = 0;
		  Display_Money();
		  bofang(2,price);
		  bofang_zhongliang(Weight_Shiwu);
		  bofang(1,money);
		  while(key3==0);
		 }
         }
		
	  }
	  //有效键值0-15
	  if (keycode<16)
	  {
		 KeyPress(keycode);
		 Delay_ms(100);
		 while(keycode<16)
		 {
			if(keycode==12||keycode==13)
			{
				 Delay_ms(10);
				 KeyPress(keycode);
				 flag_key=1;
			}
			keycode = Getkeyboard();
		 }
		 write_eeprom();			   //保存数据
	  }
	}
}
相关推荐
重生之我是数学王子1 小时前
点亮核心板小灯 STM32U575
stm32·单片机·嵌入式硬件
end_SJ1 小时前
初学stm32 --- 定时器中断
stm32·单片机·嵌入式硬件
南城花随雪。1 小时前
单片机:实现数码管动态显示(0~99999999)74hc138驱动(附带源码)
单片机·嵌入式硬件
南城花随雪。4 小时前
单片机:实现信号发生器(附带源码)
单片机·嵌入式硬件
灵槐梦5 小时前
【速成51单片机】2.点亮LED
c语言·开发语言·经验分享·笔记·单片机·51单片机
三月七(爱看动漫的程序员)6 小时前
HiQA: A Hierarchical Contextual Augmentation RAG for Multi-Documents QA---附录
人工智能·单片机·嵌入式硬件·物联网·机器学习·语言模型·自然语言处理
新晨单片机设计6 小时前
【087】基于51单片机智能宠物喂食器【Proteus仿真+Keil程序+报告+原理图】
嵌入式硬件·51单片机·proteus·宠物·ad原理图
大风起兮127 小时前
STM32HAL库中RTC闹钟设置时分秒,年月日
stm32·嵌入式硬件
超能力MAX8 小时前
IIC驱动EEPROM
单片机·嵌入式硬件·fpga开发
QQ5471760528 小时前
stm32实现回调功能
stm32·单片机·嵌入式硬件