天天看点

STM32F103json格式发送数据

STM32F103json格式发送数据

在startup中设置Stack_Size合适的值,Heap_size同理;

#define FREE(p) myfree((void **)&p)
 

void myfree(void ** point)
{
  if(*point != NULL)
  {
    free(*point);
    *point = NULL;
  }
}
 char* out;

void create_json()
{	 	 	    		 
   		cJSON * root =  cJSON_CreateObject();
  		cJSON * item =  cJSON_CreateObject();
		cJSON_AddItemToObject(item, "lng", cJSON_CreateNumber(120.000001));
		cJSON_AddItemToObject(item, "NS", cJSON_CreateString("N"));    
		cJSON_AddItemToObject(item, "lat", cJSON_CreateNumber(31.111));
		cJSON_AddItemToObject(item, "WE", cJSON_CreateString("E"));  
		cJSON_AddItemToObject(root, "g",item);	
		cJSON_AddItemToObject(root, "times", cJSON_CreateNumber(count));
     	cJSON_AddItemToObject(root, "tem", cJSON_CreateNumber(temp));
	  	cJSON_AddItemToObject(root, "x", cJSON_CreateNumber(x));
		cJSON_AddItemToObject(root, "y", cJSON_CreateNumber(y));
		cJSON_AddItemToObject(root, "z", cJSON_CreateNumber(z));
	  	cJSON_AddItemToObject(root, "rh", cJSON_CreateNumber(0.1));
		cJSON_AddItemToObject(root, "time", cJSON_CreateNumber(timestamp));		
    out= cJSON_Print(root);cJSON_Delete(root);
		 printf("%s",out);
		   if(out)
		 {
			 FREE(out);			
		 }
		

}