基于51单片机的宠物自动喂食语音播报,有实物

  1. 51仿真:

LCD第一屏显示食物重量,当前时间,温湿度。第二屏显示喂食时间,第三屏显示喂食重量。可通过点击查看喂食时间翻转屏幕显示。

点击查看喂食时间后,显示喂食时间,可以设置三个时间,再点击设置,可以设置喂食时间。

主程序片段:

cpp 复制代码
void main()
{
	  unsigned int count,dj_count;
	  short temperature;//温度
	  short humidity;//湿度
	  bit flag = 0;

	  lcd_init();//1602初始化
	  Timer_Init();//定时器初始化
	  To_Zero();//找回零点
	  lcd_write_str(0,0,"W:  .   kg T:  C");//第一行显示的内容
	  lcd_write_str(0,1,"  :  :     H:  %");//第二行显示的内容
	  while(1)
      {
		 keyscan();//按键扫描

		 if(count++>=50 && setN == 0 && see_nz == 0)//延时一段时间,进入下面函数
		 {
			  count=0;

			  get_weight();//获取重量
			  RH();//读取温湿度
				humidity = U8RH_data_H;
				temperature = U8T_data_H;

			  display_weight();//显示重量
			  display_time();//显示时间

		    lcd_write_char(13,0,temperature/10+0x30);//显示温度
  		  lcd_write_char(14,0,temperature%10+0x30);
		   	lcd_write_char(13,1,humidity/10+0x30);//显示湿度
  		  lcd_write_char(14,1,humidity%10+0x30);
			  
			  if((shi == n1_shi && fen == n1_fen && miao == n1_miao)||
					 (shi == n2_shi && fen == n2_fen && miao == n2_miao)||
				   (shi == n3_shi && fen == n3_fen && miao == n3_miao)
					)
			  {
					//三个喂食时间,任意一个时间到,则开启电机
					if(weight < food_weight)open_flag = 1;//必须小于设定重量,才能开启
			  }

			  if(open_flag==1)//电机标志位开启
			  {
						 if(dj_count++ > 100)//喂食完成,关闭电机
						 {
								dj_count = 0;//电机延时清零
								open_flag = 0;//开启电机标志位清零
								flag = 0; //电机反转标志清零
							  MotorStop();//关闭电机
						 }   
									 
						 if(dj_count < 50)//计数值小于50,电机正转
						 {
								 MotorCW();//电机正转
						 }
						 else//等于或超过50
						 {
								if(weight >= food_weight)//投食重量达标后,开启电机反转标志
								{
									flag = 1;
								}
								if(flag == 1)//重量达标电机反转
								 MotorCCW();
								else
								 dj_count = 50;//重量不达标,电机不动作,dj_count赋值为50
						
						 }
			  }	

		 }
	  
	 }
}
  1. 实物制作

lcd原理图:

重量传感器使用hx711:

语音模块使用WT588D:

  1. 整理资料:

需要资料或者事物的加🐧qq🐧: 2711326046

相关推荐
desssq1 小时前
SPI通信协议
单片机·嵌入式硬件
飞翔的佩奇2 小时前
Java项目:基于SSM框架实现的忘忧小区物业管理系统【ssm+B/S架构+源码+数据库+毕业论文+开题报告】
java·数据库·mysql·vue·毕业设计·ssm框架·小区物业管理系统
星辰pid4 小时前
STM32实现四自由度机械臂(SG90舵机)多功能控制(软件篇freertos)
stm32·单片机·嵌入式硬件·机械臂
森焱森9 小时前
水下航行器外形分类详解
c语言·单片机·算法·架构·无人机
小殷学长11 小时前
【单片机毕业设计17-基于stm32c8t6的智能倒车监测系统】
stm32·单片机·课程设计
沧海一笑-dj12 小时前
【51单片机】51单片机学习笔记-课程简介
笔记·学习·51单片机·江科大·江科大学习笔记·江科大单片机·江科大51单片机
TESmart碲视13 小时前
HKS201-M24 大师版 8K60Hz USB 3.0 适用于 2 台 PC 1台显示器 无缝切换 KVM 切换器
单片机·嵌入式硬件·物联网·游戏·计算机外设·电脑·智能硬件
small_wh1te_coder13 小时前
硬件嵌入式学习路线大总结(一):C语言与linux。内功心法——从入门到精通,彻底打通你的任督二脉!
linux·c语言·汇编·嵌入式硬件·算法·c
花落已飘14 小时前
STM32中实现shell控制台(shell窗口输入实现)
stm32·单片机·嵌入式硬件
牵牛老人16 小时前
Qt处理USB摄像头开发说明与QtMultimedia与V4L2融合应用
stm32·单片机·qt