STM32项目分享:智能宠物喂食系统

目录

一、前言

二、项目简介

1.功能详解

2.主要器件

三、原理图设计

四、PCB硬件设计

1.PCB图

五、程序设计

六、实验效果

七、资料内容

项目分享


一、前言

项目成品图片:

哔哩哔哩视频链接:

https://www.bilibili.com/video/BV1zy411z751/?share_source=copy_web&vd_source=097fdeaf6b6ecfed8a9ff7119c32faf2

(资料分享见文末)

二、项目简介

1.功能详解

基于STM32的智能宠物喂食系统

功能如下:

  1. 使用STM32F103C8T6单片机做主控制器。
  2. 使用OLED屏实时显示宠物窝的温度、湿度,投喂食物次数。
  3. 使用DHT11检测宠物窝的温湿度。
  4. 使用光敏电阻检测环境变化情况。
  5. 使用步进电机控制投食。
  6. 使用蓝牙模块实现手机通讯,可以使用手机控制投食、开关灯、模式切换

2.主要器件

  • STM32F103C8T6最小系统板
  • DHT11温湿度传感器
  • OLED显示屏(7针SPI协议)
  • BT04A蓝牙模块
  • 步进电机
  • 光敏传感器
  • LED灯

三、原理图设计

四、PCB硬件设计

1.PCB图

五、程序设计

cpp 复制代码
int main(void)
 {  	    
	u8 temperature=0;  	    
	u8 humidity=0;
    extern  u8 foodnum;  //设置温度
    extern int auto_flag; 
	delay_init();	    	 //延时函数初始化	  
	uart_init(9600);	 	//串口初始化为9600
	LED_Init();		  		//初始化与LED连接的硬件接口
	TIM5_PWM_Init(9999,143); 
    //TIM4_CH_Init(200); 
	//SystemInit();
	 
	DHT11_Init();
	KEY_Init();
	EXTIX_Init();
	OLED_Init();
	OLED_Clear();	
 	//Adc_Init();		  		//ADC初始化
	Moto_Init();	   			//电机
    //delay_init();	    	 //延时函数初始化	  
	
	OLED_ShowCHinese(0,0,0);	
	OLED_ShowCHinese(16,0,2);
	OLED_ShowString(32,0,":      C"); 
	
	OLED_ShowCHinese(0,2,1);	
	OLED_ShowCHinese(16,2,2);
	OLED_ShowString(32,2,":      %"); 
	
	OLED_ShowCHinese(0,4,3);	
	OLED_ShowCHinese(16,4,4);
	OLED_ShowString(32,4,":"); 
	OLED_ShowCHinese(84,4,5);	
	
//  OLED_ShowString(0,2,"NowTemp:  C"); 
//  OLED_ShowString(0,4,"Foodnum:  ");	 
 	SetJointAngle(90);
	while(1)
	{ 
	   DHT11_Read_Data(&temperature,&humidity);
	   KEY_Scan();//调用按键函数
	// SetJointAngle(90);
	   OLED_ShowInt(64,0,temperature);
       OLED_ShowInt(64,2,humidity);
	   OLED_ShowInt(64,4,foodnum);
	   printf("温度: %d  湿度: %d  喂食次数: %d \r\n",temperature,humidity,foodnum);
	   //printf("kcal:%d\r\n",temperature);
	   delay_ms(1000);	
	}											    
}	

六、实验效果

七、资料内容

项目分享

相关推荐
云卓SKYDROID5 分钟前
无人机三叶螺旋桨概述
单片机·无人机·遥控器·云卓科技·精准降落·螺旋桨
Do vis8246 分钟前
STM32第十九天 ESP8266-01S和电脑实现串口通信(2)
stm32·单片机·嵌入式硬件
书山有路勤为径~2 小时前
3 STM32单片机-delay延时驱动
stm32·单片机
吃货界的硬件攻城狮3 小时前
【显示模块】嵌入式显示与触摸屏技术理论
stm32·单片机·嵌入式硬件·学习
leo030813 小时前
图像硬解码和软解码
单片机·嵌入式硬件
Wythzhfrey13 小时前
单片机总复习
单片机·嵌入式硬件
源远流长jerry13 小时前
STM32F103ZET6按键中断控制灯
stm32·单片机·嵌入式硬件
搬砖的小码农_Sky14 小时前
单片机STM32F103:DMA的原理以及应用
stm32·单片机
不想学习\??!16 小时前
STM32-待机唤醒实验
stm32·单片机·嵌入式硬件
不想学习\??!16 小时前
STM32-中断
单片机·嵌入式硬件