stm32—BC26连接onenet

这一段时间在干嘛呢:智能奶瓶oled调试,移动onenet平台;myp找房东拿住房补贴材料,她室友来面试苏宁通过了,华为人事内推她室友不知道能不能进。

1,OneNET是由中国移动打造的PaaS物联网开放平台。平台能够帮助开发者轻松实现设备接入与设备连接,快速完成产品开发部署,为智能硬件、智能家居产品提供完善的物联网解决方案。其实就是一个网站平台。

stm32代码:设备ID要改一下改为平台的id

void    Per1msTask(void)
{
    static u8 P10msReq = 0;
     if (P10msReq < 10) P10msReq++;//100msÒ»´Îʼþ
    else P10msReq = 0;  
      switch(P10msReq)
            {
                case 0:
                     switch(BC26init.status)//¶ÔÉ豸½øÐгõʼ»¯
                    {
                        case 0:  printf_CPIN();usart1_sendstr("²éѯ¿¨µÄ״̬£¡\r\n");break;//»ñÈ¡ÊÖ»ú¿¨
                        case 1:  printf_CGATT();usart1_sendstr("×¢²áÍøÂç\r\n");break;//È¥×¢²áÍøÂç
                        case 2:  printf_GetCGATT();usart1_sendstr("»ñȡעÍøÇé¿ö\r\n");break; //»ñȡעÍø״̬     
                        case 3:  printf_CSQ();break; //»ñȡעÍø״̬     
                       case 4:  printf_CLSTCP();break; //¹Ø±ÕÉÏÒ»´ÎÁ¬½Ó
                    }
              
                    break;
                    case 1:
                            SCOM_RecieveAT(&m_com);//×öÊý¾Ý²»¶ÏɨÃè»úÖÆ
                    break;
                        case 2:
                       switch(BC26init.status)
                    {
       
                       case 5:  printf_ConTCP();usart1_sendstr("Á¬½ÓONENTT·þÎñÆ÷ TCPģʽ\r\n");break;
                                                                 //0xff´ú±í¿ÕÏÐBC26init.status=0xff
                    }                        
                        
         
                    break;
                            case 3:
                            if (BC26init.status==6)
                                 BC26init.tcpcount++;
                            if(    BC26init.tcpcount>=5)//¹¹½¨Êý¾Ý°ü×¼±¸·¢ËÍÊý¾Ý
                            {
                            mqtt_data.len=mqtt_connect_message(mqtt_data.mqtt_msg,"42655698",PROD_ID,SN);//¹¹½¨·¢ËÍÊý¾Ý°ü
                            hextostr();//µ÷Óú¯Êý½«Ê®Áù½øÖÆת³É×Ö·ûÐÍ
                            printf_Sendata(mqtt_data.lenstr,mqtt_data.mqtt_strmsg);//ʵÏÖMQTTµÇ¼·þÎñÆ÷
                            usart1_sendstr("µÇ¼ONENET,ÀûÓÃMQTT·½Ê½\r\n");
                            BC26init.tcpcount=0;
                            BC26init.status=0x0f;//¿ÕÏÐ
                            }

                    break;
                        case 4://±£ÁôTCPÊý¾ÝÏ·¢½Ó¿Ú
                            if(BC26init.status==7)
                                 BC26init.tcpcount++;
                            if(    BC26init.tcpcount>=5)//¹¹½¨Êý¾Ý°ü×¼±¸·¢ËÍÊý¾Ý
                            {
                                mqtt_data.json_len=MqttOnenet_Savedata(mqtt_data.t_payload,temp,humi);//Ìá½»JSONÊý¾Ý
                                mqtt_data.len=mqtt_onenetpublish_message(mqtt_data.mqtt_msg,"$dp",mqtt_data.t_payload,mqtt_data.json_len,1);//¹¹½¨MQTT·¢ËÍÊý¾Ý°
                                hextostr();
                                printf_Sendata(mqtt_data.lenstr,mqtt_data.mqtt_strmsg);//Êý¾Ý·¢²¼ 
                                usart1_sendstr("·¢²¼ÏûÏ¢µ½ONENET\r\n");
                                BC26init.tcpcount=0;
                            }
                    
                                break;
                                case 5:
                                         if(BC26init.status==0xFF)//µÈ´ýÁ¬½Ó·þÎñÆ÷
                                             LED=!LED;
                                    break;
                        
                                case 6:
                                    DHT11_Read_Data(&temp,&humi)   ;
                                  break;
                                    case 7:
                                    break;
                                    case 8:
                                    break;
                                    case 9:
                                    //     NETLED=!NETLED;
                                //        usart1_sendstr(RxBufferDMA);
                                    break;    
                    default:
                        break;
            }
    
    
}

登录的api不需要改,其他四个改成自己的产品的。








STM32和ESP8266可以通过串口通信进行连接并与OneNet云平台进行通信。 首先,确保你已经在STM32和ESP8266上分别烧录好了相应的固件,并设置好了他们的串口通信参数,例如波特率和数据位数。然后,准备一个可用的OneNet云平台账户,并创建一个设备以接收来自STM32和ESP8266的数据。 要在STM32和ESP8266之间建立串口通信,你必须将他们的TX(发送)和RX(接收)引脚连接起来。可以通过在STM32和ESP8266之间连接一个USB转串口模块,并通过相应的杜邦线将它们的引脚连接起来。 接下来,你需要在STM32的代码中编写一段程序以将数据发送到ESP8266,并通过串口将其传递给OneNet云平台的服务器。你可以使用相关的STM32库函数或使用串口发送函数发送数据。确保将数据格式化为OneNet云平台要求的格式,并加入相应的身份验证信息或API密钥。 在ESP8266的代码中,你需要使用ESP8266库函数建立一个WiFi连接,并通过串口接收STM32传递过来的数据。然后,使用HTTP请求将数据发送到OneNet云平台的服务器。同样,确保数据格式正确并加入正确的身份验证信息或API密钥。 最后,你可以在OneNet云平台的控制台上查看接收到的数据,配置要展示的数据和图表,并设置相应的触发器和警报。你也可以通过OneNet的API获取数据,进行数据分析或进一步处理。 总之,通过串口通信,你可以在STM32和ESP8266之间建立连接,并将数据传递给OneNet云平台,实现数据的监测和远程控制。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值