Example #1
0
/**
  * @brief  使用esp8266模块和EDP协议向ONENET平台发送开发板四个LED指示灯的实时状态,并通过平台或者开发板按键控制LED。
**/
int main(void)
{	
		//SystemInit();
		LED_Init();    //LED指示灯初始化函数
		KEY_Init();	   //按键初始化函数
		USART1_Init(); //USART1串口初始化函数
		USART2_Init(); //USART2串口初始化函数
		while(1)
		{		
				LED_Switch(LED_ON,LED_R|LED_G|LED_Y|LED_B);	   //点亮开发板四个指示灯,表示程序进入主流程
				ESP8266_Init();    //ESP8266初始化
				ESP8266_DevLink(DEVICEID,APIKEY,20);    //和平台建立设备连接
				LED_Switch(LED_OFF,LED_R|LED_G|LED_Y|LED_B); //熄灭开发板四个指示灯,表示程序完成设备连接,进入数据发送循环
			
				while(1)
				{								
						if(!(ESP8266_CheckStatus(30)))    //检测ESP8266模块连接状态
						{
								ESP8266_SendDat();     //向平台发送数据
						}
						else
						{
								break;
						}
				}
		}	
}
Example #2
0
int main(void)
{
    USART1_Init();
    USART2_Init();
    mDelay(1000);
    Hal_I2C_Init();
    /*初始化8266,并连接CWJAP配置的AP,与MQTT_CIPSTART配置的服务器建立TCP连接*/
    ESP8266_Init((int8_t *)MQTT_CIPSTART, (int8_t *)CWJAP);
    /*进入MQTT协议测试主循环*/
    MQTT_Loop();
}
Example #3
0
int main(void)
{
    uint16_t temp, humi;    //温湿度
    char HTTP_Buf[400];     //HTTP报文缓存区
    char tempStr[5];       //字符串格式温度
    char humiStr[5];       //字符串格式湿度
    int len;

    USART1_Config();        //USART1作为调试串口
    USART2_Config();        //USART2用于连接ESP8266模块
    Hal_I2C_Init();			//I2C初始化,用于连接温湿度传感器

    ESP8266_Init();         //ESP8266初始化
		printf("ESP8266 init over\r\n");
    //SHT20_loop();         //
	
    while(1)
    {
        /* 获取温湿度 */
        SHT2x_MeasureHM(SHT20_Measurement_T_HM, &temp);
        mDelay(500);
        SHT2x_MeasureHM(SHT20_Measurement_RH_HM, &humi);

        /* 转化为字符串形式 */
        sprintf(tempStr, "%d", temp);
        sprintf(humiStr, "%d", humi);

        //printf("%s   %s\r\n", tempStr, humiStr);

        USART2_Clear();
        len = HTTP_PostPkt(HTTP_Buf, API_KEY, DEV_ID, "temp", tempStr); //HTTP组包
        USART2_Write(USART2, (unsigned char *)(HTTP_Buf), len);			//报文发送
        printf("send HTTP msg:\r\n%s\r\n", HTTP_Buf);

        mDelay(1000);
        printf("rcv response:\r\n%s\r\n", usart2_rcv_buf);

        USART2_Clear();
        len = HTTP_PostPkt(HTTP_Buf, API_KEY, DEV_ID, "humi", humiStr); //HTTP组包
        USART2_Write(USART2, (unsigned char *)(HTTP_Buf), len);			//报文发送
        printf("send HTTP msg:\r\n%s\r\n", HTTP_Buf);

        mDelay(1000);
        printf("rcv response:\r\n%s\r\n", usart2_rcv_buf);

        mDelay(5000);
    }
}
Example #4
0
int main() {
	u16 PM25Val;
	short temperature;
	
	SysTick_Init();	
	pc1.baud(115200);
	ESP8266_Init();
	while(1){
		PM25Val=GP2Y1010auGetPM25();		
		pc1.printf("Dust Value is: %d ug/m3\r\n",PM25Val);
		ESP8266_Ds18b20UpdateLeWei50(PM25Val);
	}
	pc1.printf("Start DS18B20 Init ...");
	while(DS18B20_Init())
		{
		wait_ms(1000); 
		pc1.printf("DS18B20 Init Ing...");
	}
	while(1){
	temperature=DS18B20_Get_Temp();	
			pc1.printf("Get Temperature : %.1f\n",temperature/10.0);
		wait_ms(1000);
	}
}
int main(void) {
	/* Init system */
	TM_RCC_InitSystem();
	
	/* Init HAL layer */
	HAL_Init();
	
	/* Init leds */
	TM_DISCO_LedInit();
	
	/* Init button */
	TM_DISCO_ButtonInit();
	
	/* Init delay */
	TM_DELAY_Init();
	
	/* Init debug USART */
	TM_USART_Init(USART2, TM_USART_PinsPack_1, 921600);
	
	/* Display message */
	printf("ESP8266 AT commands parser\r\n");
	
	/* Init ESP module */
	while (ESP8266_Init(&ESP8266, 115200) != ESP_OK) {
		printf("Problems with initializing module!\r\n");
	}
	
	/* Set mode to STA+AP */
	while (ESP8266_SetMode(&ESP8266, ESP8266_Mode_STA_AP) != ESP_OK);
	
	/* Enable server on port 80 */
	while (ESP8266_ServerEnable(&ESP8266, 80) != ESP_OK);
	
	/* Module is connected OK */
	printf("Initialization finished!\r\n");
	
	/* Disconnect from wifi if connected */
	ESP8266_WifiDisconnect(&ESP8266);
	
#if ESP8266_USE_APSEARCH
	/* Get a list of all stations */
	ESP8266_ListWifiStations(&ESP8266);
#endif
	
	/* Wait till finishes */
	ESP8266_WaitReady(&ESP8266);
	
	/* Connect to wifi and save settings */
	ESP8266_WifiConnect(&ESP8266, "YOUR SSID", "SSID PASSWORD");
	
	/* Wait till finish */
	ESP8266_WaitReady(&ESP8266);
	
	/* Get connected devices */
	ESP8266_WifiGetConnected(&ESP8266);
	
	while (1) {
		/* Update ESP module */
		ESP8266_Update(&ESP8266);
		
		/* Check for button */
		if (TM_DISCO_ButtonOnPressed()) {
			/* Starting with connection to web */
			while (ESP8266_StartClientConnection(&ESP8266, "stm32f4_discovery", "stm32f4-discovery.com", 80, NULL));
		}
	}
}
Example #6
0
int main(void){  
	char* lab_greeting = "Smart \"Mirror\"!";
	
	
  DisableInterrupts();
  PLL_Init(Bus80MHz);
  Output_Init();       // UART0 only used for debugging
	ST7735_Output_Init(); 
	PortF_Init();
	PortE_Init();
  printf("\n\r-----------\n\rSystem starting...\n\r");
	
	
  ESP8266_Init(115200);      // connect to access point, set up as client
  ESP8266_GetVersionNumber();
	
  while(1){
		if(last_mode != mode){
			refresh =1;
			last_mode = mode;
			memset(ResponseJson, 0, SERVER_RESPONSE_SIZE * sizeof(ResponseJson[0]));
		}
		
		if(mode==0&&refresh){
			refresh = 0;
			ST7735_FillScreen(0);
			ST7735_DrawString(0,0, lab_greeting, ST7735_WHITE);
			ST7735_DrawString(0,1, "MODE: WEATHER", ST7735_GREEN);
			ESP8266_GetStatus();
			if(ESP8266_MakeTCPConnection("kylepolansky.dyndns.org")){ // open socket in server
				LED_GreenOn();
				ESP8266_SendTCP(Fetch_Kyle);
			}
			ESP8266_CloseTCPConnection(); 				
			ParseWeather(ResponseJson);
			printf("START RESPONSE\n");
			printf(ResponseJson);
			printf("STOP RESPONSE\n");
			
		}
		else if(mode==1&&refresh){
			refresh = 0;
			ST7735_FillScreen(0);
			ST7735_DrawString(0,0, lab_greeting, ST7735_WHITE);
			ST7735_DrawString(0,1, "MODE: TIME", ST7735_GREEN);
			ESP8266_GetStatus();
			if(ESP8266_MakeTCPConnection("kylepolansky.dyndns.org")){ // open socket in server
				LED_GreenOn();
				ESP8266_SendTCP(Fetch_Kyle);
			}
			ESP8266_CloseTCPConnection(); 				
			ParseTime(ResponseJson);
			printf("START RESPONSE\n");
			printf(ResponseJson);
			printf("STOP RESPONSE\n");
			
		}
		else if(mode==2&&refresh){
			refresh = 0;
		ST7735_FillScreen(0);
			ST7735_DrawString(0,0, lab_greeting, ST7735_WHITE);
			ST7735_DrawString(0,1, "MODE: REMINDERS", ST7735_GREEN);
		ESP8266_GetStatus();
			if(ESP8266_MakeTCPConnection("kylepolansky.dyndns.org")){ // open socket in server
				LED_GreenOn();
				ESP8266_SendTCP(Fetch_Kyle);
			}
			ESP8266_CloseTCPConnection(); 				
			ParseReminders(ResponseJson);
			printf("START RESPONSE\n");
			printf(ResponseJson);
			printf("STOP RESPONSE\n");
		}	
		else if(mode==3&&refresh){
			refresh = 0;
		ST7735_FillScreen(0);
			ST7735_DrawString(0,0, lab_greeting, ST7735_WHITE);
			ST7735_DrawString(0,1, "MODE: NEWS", ST7735_GREEN);
		ESP8266_GetStatus();
			if(ESP8266_MakeTCPConnection("kylepolansky.dyndns.org")){ // open socket in server
				LED_GreenOn();
				ESP8266_SendTCP(Fetch_Kyle);
			}
			ESP8266_CloseTCPConnection(); 				
			ParseHeadline(ResponseJson);
			printf("START RESPONSE\n");
			printf(ResponseJson);
			printf("STOP RESPONSE\n");
		}
		else if(mode==4&&refresh){
			refresh = 0;
		ST7735_FillScreen(0);
			ST7735_DrawString(0,0, lab_greeting, ST7735_WHITE);
			ST7735_DrawString(0,1, "MODE: STOCK", ST7735_GREEN);
		ESP8266_GetStatus();
			if(ESP8266_MakeTCPConnection("kylepolansky.dyndns.org")){ // open socket in server
				LED_GreenOn();
				ESP8266_SendTCP(Fetch_Kyle);
			}
			ESP8266_CloseTCPConnection(); 				
			ParseStock(ResponseJson);
			printf("START RESPONSE\n");
			printf(ResponseJson);
			printf("STOP RESPONSE\n");
		}
		

  }
}