[STM32F1] 基于stm32f103与涂鸦智能的智能蜜蜂养殖系统

初中有幸与蜜蜂结缘,但是由于要读书,或者平时没在家,而蜜蜂对生成环境计较苛刻,喜欢安静,干燥,并且在黑暗的环境中,如果管理不好就会造成蜜蜂逃的逃,跑的跑,不仅没有产量反而蜜蜂都跑完了,目前就在想有没有可以远程监控蜂箱的方法。
   我的方案使采用stm32f103c8t6作为主控,然后用涂鸦的三明治开发板VWXR2接入涂鸦云。

#include "dect.h"

#include "adc.h"

#include "dht11.h"

#include "wifi.h"

#include "led.h"

#include "UltrasonicWave.h"



 void Detect_Read(void)

         

 {

        

          Dht11_read();

          get_voit_d();

          get_voit_g();

          UltrasonicWave_StartMeasure();

          chaoshengbo();

         

         

 }

 //采集光敏电阻转换为亮度值 A1引脚

 void get_voit_d(void)

 {

         float  light;

         

         light =Get_Adc(1) ; 

         if(light<2600)

         {

         mcu_dp_enum_update(DPID_COVER_STATE,0); //当前蜂箱盖状态枚举型数据上报;

        GPIOC ->BRR =GPIO_Pin_13;         

         }

         else 

         {

     mcu_dp_enum_update(DPID_COVER_STATE,1); //当前蜂箱盖状态枚举型数据上报;

        GPIOC ->BSRR =GPIO_Pin_13;

         }                 

//         printf ("%f\r\n",light);

 }







//采集电源电压 A0引脚

void get_voit_g(void )

        

{

        

        float voit;

        voit=Get_Adc(0) /4096.0*3.3;

        voit=voit/3.3*100;

        mcu_dp_value_update(DPID_BATTERY_PERCENTAGE,voit); //当前电池电量VALUE型数据上报;

//        printf ("%f\r\n",voit);

}



/**********************超声波距离计算***************************/

void chaoshengbo(void)

{  

         float juli;

      juli=TIM_GetCounter(TIM1)*5*34/200.0;

        if(juli<8&&juli!=0)        

        {

        mcu_dp_bool_update(DPID_CHECK,1); // 当前巢虫检测 BOOL型数据上报;

        GPIOB ->BRR =GPIO_Pin_4;        

        }                

     else 

        {                

     mcu_dp_bool_update(DPID_CHECK,0); // 当前巢虫检测 BOOL型数据上报;

     GPIOB ->BSRR =GPIO_Pin_4;

        }                

 }

 void Dht11_read(void)



{

        u8 temperature;              

        u8 humidity; 

        DHT11_Read_Data(&temperature,&humidity);

     mcu_dp_value_update(DPID_NOW_TEMP,temperature ); //当前温度检测VALUE型数据上报;

     mcu_dp_value_update(DPID_HUM,humidity); //当前湿度检测VALUE型数据上报;        

//        printf("temperature=%d\r\n",temperature);

//     printf("humidity=%d\r\n",humidity);

        

        

        

}
#include "sys.h"

#include "usart.h"

#include "usart2.h"        

#include "led.h"

#include "delay.h"

#include "wifi.h"

#include "adc.h"

#include "dht11.h"

#include "dect.h"

#include "timer.h"

#include "UltrasonicWave.h"

 int main(void)

 {        

        

        delay_init();                     //延时函数初始化        

        NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);// 设置中断优先级分组2

     DHT11_Init();

        uart_init(9600);//用于WiFi模块通信

     uart2_init(115200);//用于串口通信

        LED_Init();//用于报警模拟

     Adc_Init();

        Timerx_Init(5000,7199);

     wifi_protocol_init();

        UltrasonicWave_Configuration();

//        mcu_reset_wifi();

//        delay_ms (10);

//        mcu_set_wifi_mode(SMART_CONFIG );

        

        while(1)

        {

                wifi_uart_service();

                Detect_Read();

        }         

}

---------------------
作者:18785275440
链接:https://bbs.21ic.com/icview-3122888-1-1.html
来源:21ic.com
此文章已获得原创/原创奖标签,著作权归21ic所有,任何人未经允许禁止转载。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值