[其他ST产品] 基于STM32F103C8T6+ESP8266温室大棚远程监控系统

[复制链接]
1718|36
 楼主| 米多0036 发表于 2023-4-25 01:28 | 显示全部楼层
七、程序

部分程序


  1. void ESP8266_Station_Mode_yuanziyun_Test ( void )
  2. {
  3.         char i = 0;
  4.    uint8_t value1 = 0, value2 = 0;
  5.     uint8_t ucStatus;
  6.     char cStr [ 100 ] = { 0 };

  7.     uint8_t ucId;
  8.     char cStr1 [ 100 ] = { 0 };
  9.     char * pCh;

  10.     printf ( "\r\n正在配置 ESP8266 ......\r\n" );

  11.     //macESP8266_CH_ENABLE();                                                                                        //使能ESP8266   使用的模块默认被使能  所以词句代码不起作用 可以删除

  12.     //1、向模块发送测试指令 AT
  13.     ESP8266_AT_Test ();
  14.     //2、设置模块模式为STA模式 AT+CWMODE=1
  15.     ESP8266_Net_Mode_Choose ( STA );
  16.     //3、设置要连接路由器的 ID 和密码
  17.     while ( ! ESP8266_JoinAP ( macUser_ESP8266_ApSsid, macUser_ESP8266_ApPwd ) )
  18.         {
  19.                 Get_DHT11_Dat();
  20.                 Get_Soil_Light_CO2_Dat();
  21.                
  22.         }
  23.     //4、连接原子云 发送设备编号和密码
  24.     while ( ! ESP8266_ConnectYuanziyun ( yuanziyun_DeviceID, yuanziyun_DevicePassWord ) )
  25.         {
  26.                 Get_DHT11_Dat();
  27.                 Get_Soil_Light_CO2_Dat();
  28.         }

  29.     printf ( "\r\n配置 ESP8266 完毕\r\n" );
  30.     while ( 1 )
  31.     {
  32.                 Get_DHT11_Dat();
  33.                 Get_Soil_Light_CO2_Dat();
  34.                 alarm();
  35. //                sprintf ( cStr, "\r\10 20 30 40 50 \r\n");
  36. //        printf ( "%s", cStr );                                             //打印数据
  37.         ESP8266_SendString ( ENABLE, strtemp, 0, Single_ID_0 );               //通过透传模式 发送信息到原子云
  38.                 ESP8266_SendString ( ENABLE, "\r\n", 0, Single_ID_0 );
  39.          ESP8266_SendString ( ENABLE, strhumi, 0, Single_ID_0 );
  40.                 ESP8266_SendString ( ENABLE, "\r\n", 0, Single_ID_0 );
  41.                 ESP8266_SendString ( ENABLE, adcxstr, 0, Single_ID_0 );
  42.                 ESP8266_SendString ( ENABLE, "\r\n", 0, Single_ID_0 );
  43.                 ESP8266_SendString ( ENABLE, soilstr, 0, Single_ID_0 );
  44.                 ESP8266_SendString ( ENABLE, "\r\n", 0, Single_ID_0 );
  45.                 ESP8266_SendString ( ENABLE, co2str, 0, Single_ID_0 );
  46.                 ESP8266_SendString ( ENABLE, "\r\n", 0, Single_ID_0 );
  47.                 Delay_ms ( 100 );
  48.                 
  49.         
  50.     }
  51. }


 楼主| 米多0036 发表于 2023-4-25 01:29 | 显示全部楼层
八、资料清单 QQ截图20230425012911.jpg
wwppd 发表于 2023-5-5 13:17 | 显示全部楼层
现STM32F103C8T6与ESP8266模块结合的温室大棚远程控制需要考虑多方面因素了。
plsbackup 发表于 2023-5-5 18:20 | 显示全部楼层
esp8266WIFI模块怎么通过STM32自组网
maudlu 发表于 2023-5-5 20:30 | 显示全部楼层
可以使用HTTP或MQTT等协议来实现远程控制。
uptown 发表于 2023-5-5 20:42 | 显示全部楼层
使用STM32CubeMX和Keil等工具生成STM32F103C8T6的项目,并在主函数中编写相关控制逻辑。将ESP8266的AT指令封装成函数供主程序调用。
deliahouse887 发表于 2023-5-5 22:01 | 显示全部楼层
esp8266为什么还要stm32
hudi008 发表于 2023-5-5 22:48 | 显示全部楼层
将ESP8266模块通过串口连接至STM32F103C8T6。可以将ESP8266的TX引脚连接到STM32F103C8T6的RX引脚,将ESP8266的RX引脚连接到STM32F103C8T6的TX引脚。还需要将ESP8266的GND引脚连接到STM32F103C8T6的GND引脚,将ESP8266的VCC引脚连接到STM32F103C8T6的3.3V引脚。
everyrobin 发表于 2023-5-6 00:18 | 显示全部楼层
STM32和ESP8266哪个作为硬件比较简单?
janewood 发表于 2023-5-6 00:38 | 显示全部楼层
stm32+esp8266怎么将数据传给云平台
wangdezhi 发表于 2023-5-7 15:14 | 显示全部楼层
使用MQTT协议可以订阅一个主题,在手机APP或Web页面上向该主题发布消息,从而控制温室大棚。在STM32F103C8T6上可以使用MQTT客户端库实现与MQTT服务器的通信。
biechedan 发表于 2023-5-7 15:22 | 显示全部楼层
stm32+esp8266怎么将数据传给云平台
i1mcu 发表于 2023-5-7 15:32 | 显示全部楼层
esp32的io口能直接连stm32的io口来控制吗?
loutin 发表于 2023-5-7 16:01 | 显示全部楼层
stm32与串口WiFi模块ESP8266如何配置
ulystronglll 发表于 2023-5-7 18:33 | 显示全部楼层
esp32at开发方式中,哪种速度最快
Undshing 发表于 2023-5-9 23:19 | 显示全部楼层
可不可以直接用esp32来代替stm32?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 在线客服 返回列表 返回顶部