毕业设计 基于STM32单片机无线ZIGBEE智能大棚土壤湿度光照检测

Posted 嵌入式基地

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了毕业设计 基于STM32单片机无线ZIGBEE智能大棚土壤湿度光照检测相关的知识,希望对你有一定的参考价值。

基于STM32单片机无线ZIGBEE智能大棚土壤湿度光照检测

1、项目简介

1.1 系统构成

  • 本系统由主机和从机组成。主从机通过zigbee模块CC2530实现数据通讯。
  • 主机由STM32F103C8T6单片机、光照采集、DS18B20温度检测、土壤湿度采集、zigbee模块组成。
  • 从机由STM32F103C8T6单片机、LCD1602液晶显示、zigbee模块组成。

1.2 系统功能

  • 1、主机检测温度、光照(0-100)和土壤湿度(0-100),然后通过zigbee模块将数据传输给从机。
  • 2、在从机接收到数据后,在液晶上实时显示温度、光照(0-100)和土壤湿度(0-100)。
  • 3、液晶显示具有实时性,如果主机停止发送数据,从机液晶将显示xx表示数据无效链接断开。

2、部分电路设计

2.1 STM32F103C8T6核心系统电路设计

STM32F103C8T6单片机最小系统电路由复位电路、时钟电路和电源电路。拥有这三部分电路后,单片机即可正常工作。

单片机最小系统原理图如下图所示:

实物图:

2.2 光敏采集电路设计

其具体电路原理图如下图所示:

实物图如下图所示:

2.3 温度采集电路设计

DS18B20是一款常用的高精度的单总线数字温度测量芯片。具有体积小,硬件开销低,抗干扰能力强,精度高的特点。

  • 电路设计
  • 实物图

3、部分代码展示

3.1 读取DS18B20温度值

short DS18B20_Get_Temp(void)

    u8 temp;
    u8 TL,TH;
	short tem;
    DS18B20_Start ();                    // ds1820 start convert
    DS18B20_Rst();
    DS18B20_Check();	 
    DS18B20_Write_Byte(0xcc);// skip rom
    DS18B20_Write_Byte(0xbe);// convert	    
    TL=DS18B20_Read_Byte(); // LSB   
    TH=DS18B20_Read_Byte(); // MSB  
	    	  
    if(TH>7)
    
        TH=~TH;
        TL=~TL; 
        temp=0;//温度为负  
    else temp=1;//温度为正	  	  
    tem=TH; //获得高八位
    tem<<=8;    
    tem+=TL;//获得底八位
    tem=(float)tem*0.625;//转换     
	if(temp)return tem; //返回温度值
	else return -tem;    
 

3.2 定时器初始化

void TIM3_Int_Init(u16 arr,u16 psc)

  TIM_TimeBaseInitTypeDef  TIM_TimeBaseStructure;
	NVIC_InitTypeDef NVIC_InitStructure;

	RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM3, ENABLE); //时钟使能

	TIM_TimeBaseStructure.TIM_Period = arr; //设置在下一个更新事件装入活动的自动重装载寄存器周期的值	 计数到5000为500ms
	TIM_TimeBaseStructure.TIM_Prescaler =psc; //设置用来作为TIMx时钟频率除数的预分频值  10Khz的计数频率  
	TIM_TimeBaseStructure.TIM_ClockDivision = 0; //设置时钟分割:TDTS = Tck_tim
	TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up;  //TIM向上计数模式
	TIM_TimeBaseInit(TIM3, &TIM_TimeBaseStructure); //根据TIM_TimeBaseInitStruct中指定的参数初始化TIMx的时间基数单位
 
	TIM_ITConfig(  //使能或者失能指定的TIM中断
		TIM3, //TIM2
		TIM_IT_Update ,
		ENABLE  //使能
		);
	NVIC_InitStructure.NVIC_IRQChannel = TIM3_IRQn;  //TIM3中断
	NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0;  //先占优先级0级
	NVIC_InitStructure.NVIC_IRQChannelSubPriority = 3;  //从优先级3级
	NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE; //IRQ通道被使能
	NVIC_Init(&NVIC_InitStructure);  //根据NVIC_InitStruct中指定的参数初始化外设NVIC寄存器

	TIM_Cmd(TIM3, ENABLE);  //使能TIMx外设
							 

以上是关于毕业设计 基于STM32单片机无线ZIGBEE智能大棚土壤湿度光照检测的主要内容,如果未能解决你的问题,请参考以下文章

基于STM32单片机智能RFID刷卡汽车位锁设计(开题报告)

基于STM32单片机智能RFID刷卡汽车位锁设计(开题报告)

基于STM32单片机大棚环境参数无线蓝牙检测设计(论文)

毕业设计:基于单片机的超声波智能跟随小车 - 物联网 智能小车 嵌入式单片机 stm32 跟随小车

基于STM32单片机大棚环境参数无线蓝牙检测设计(开题报告)

基于STM32单片机大棚环境参数无线蓝牙检测设计(开题报告)