系列文章目录
第一章ESP8266的java软件仿真测试
第二章ESP8266硬件与软件测试
第三章ESP8266客户端与Java后台服务器联调
前言
daodanjishui物联网核心原创技术之ESP8266客户端与Java服务器通信实战
一、这次要做的是什么?
在上期分享的 “ESP8266作为客户端连上网络调试助手服务器”的资料中,也就是第二章的内容,上期的分享有几点缺陷,代码是寄存器版本的,不利于开发,这次花了不少时间把代码全部改成库函数了,其次上次的分享只上传了hello字符串给网络调试助手,这次改成dht11的温湿度数据,移植了别人zet6的驱动,1秒上传一次温湿度数据给eclipse写的java私有服务器,服务器只在后台控制台打印数据,3秒检测一次与服务器的链接,如果断线可以重连服务器,运行相当稳定。 效果图如下: (1)java版Eclipse服务器截图
(2)网络调试助手调试图
(3)硬件全家福截图
二、使用步骤
1.下载源码
下载链接:https://www.cirmall.com/circuit/18385/
直接跳转过去
代码如下(示例):
#include “led.h”
#include “delay.h”
#include “key.h”
#include “sys.h”
#include “usart.h”
#include “uart2.h”
#include “uart3.h”
#include “common.h”
#include “bsp_dht11.h”
/************************************************
daodanjishui
************************************************/
//2019/3/14
int main(void)
{
// DHT11_Data_TypeDef DHT11_Data;
//u8 t=0;
delay_init();
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2); //
uart_init(115200); //
uart2_Init(115200);
// uart3_Init(115200);
LED_Init();
// DHT11_Init();
DHT11_GPIO_Config();
while(1)
{
// uart1_test();
// uart2_test();
// uart3_test();
delay_ms(5);
atk_8266_test();
}
}
2.读入DHT11数据
代码如下(示例):
void DHT11_GPIO_Config(void)
{
GPIO_InitTypeDef GPIO_InitStructure;
RCC_APB2PeriphClockCmd(DHT11_CLK, ENABLE);
GPIO_InitStructure.GPIO_Pin = DHT11_PIN;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_Init(DHT11_PORT, &GPIO_InitStructure);
GPIO_SetBits(DHT11_PORT, DHT11_PIN);
}