基于stm32单片机的土壤检测仪系统设计
最新推荐文章于 2024-09-01 13:18:47 发布

MCUFANS123 于 2024-06-27 21:45:35 发布
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本设计的硬件构成:
STM32F103C8T6单片机最小系统板(包含+3.3V稳压电路+时钟晶振电路+复位电路(上电自复位,手动复位)),温度传感器、PH传感器、OLED显示屏、按键、蜂鸣器、语音播报模块、蓝牙模块等电路构成;

功能介绍:
1、单片机采集土壤的湿度值、温度值、PH值。
2、采用OLED显示器显示土壤信息。
3、按键设置土壤湿度、温度、PH值阈值,当湿度触发阈值时,语音播报:湿度低,自动启动水泵补水。温度、PH触发阈值时,蜂鸣器报警。按键能手动控制水泵。
4、通过蓝牙连接手机APP,实时显示数据,接收报警信息,并能远程控制水泵的开关。
5、按键可调整报警值阈值,可切换手自动模式,控制水泵的开关。
PCB图:

程序源码:
int main(void)
{
vu8 key=0;
delay_init(); //延时函数初始化
BEEP_Init(); //初始化蜂鸣器端口
KEY_Init(); //初始化与按键连接的硬件接口
uart_init(9600);
usart2_Init(9600);
TIM2_Int_Init(999,7199);//10Khz的计数频率,计数到5000为500ms
Adc_Init();
FAN_Init();
OLED_Init();
OLED_ColorTurn(0);//0正常显示,1 反色显示
OLED_DisplayTurn(0);//0正常显示 1 屏幕翻转显示
display_refresh();
BEEP=1;
PUMP=1;
Delay_ms(500);
while(1)
{
key=KEY_Scan(1); //得到键值
KEY_Handle(key);
APP_Handle();
if(T_1s>45)
{
T_1s=0;
if(mode==AUTO)
{
if((warn_flag==2))
{
play_voice(1);
}
}
}
if(T_100ms>=10)
{
T_100ms = 0;
if(refresh==1)
APP_refresh();
if(people_flag>0)
people_flag--;
//采集湿度、PH值
ALValue = (u16)Humi();
PH = Get_PH();
//采集温度值
Temp=((u16)DS18B20_Get_Temp());
if(set==0) //set为0,说明现在不是设置状态
{
display_refresh(); //显示AD数值和报警值
if(warn_flag>0)
{
BEEP=~BEEP;
}
else
BEEP=1;
if((Temp>setTemp))
{
warn_flag=1;
}
else if(ALValue<WARNING)
{
warn_flag=2;
}
else if(PH>setPH)
{
warn_flag=3;
}
else
{
warn_flag=0;
}
if(mode==AUTO)
{
if((warn_flag==2))
{
if(PUMP_state==1)
PUMP=0;
}
else
{
PUMP=1;
}
}
}
}
}
}
资料链接:https://pan.baidu.com/s/1j1N-Vf8JcQFP5ozN0Q6Bdw
提取码:gb4z
相关知识
基于STM32单片机的鲜花售卖机系统设计
基于STM32单片机远程浇花花盆GSM短信浇水补光灌溉系统
基于STM32单片机的智能清扫小车清扫机器人
基于STM32的土壤湿度检测自动浇水系统proteus仿真设计(仿真+程序+设计报告+讲解视频)
基于STM32单片机的疫苗箱系统
基于STM32的智能花盆浇水系统设计
基于STM32的智能水质监测系统设计
基于STM32的植物浇水系统开发
基于51单片机的可变调音乐演奏系统
课题名称基于 stm32 的鲜花温室环境监测系统的设计与实现.pdf
原文链接: 基于stm32单片机的土壤检测仪系统设计 https://m.huajiangbk.com/newsview511373.html
| 上一篇: 基于STM32单片机智能大棚土壤... | 下一篇: 一种带土壤湿度监控功能的园林用花... |



