20260117:支持以json格式向mqtt服务器发布数据。

This commit is contained in:
2026-01-18 02:44:38 +08:00
parent 7708a22a6e
commit dd946595c4
19 changed files with 580 additions and 4350 deletions

View File

@@ -39,68 +39,66 @@
* See http://www.freertos.org/a00110.html
*----------------------------------------------------------*/
#define configUSE_PREEMPTION 1
#define configUSE_IDLE_HOOK 0
#define configUSE_TICK_HOOK 0
#define configCPU_CLOCK_HZ ( ( unsigned long ) 72000000 )
#define configTICK_RATE_HZ ( ( TickType_t ) 1000 )
#define configMAX_PRIORITIES ( 5 )
#define configMINIMAL_STACK_SIZE ( ( unsigned short ) 128 )
#define configTOTAL_HEAP_SIZE ( ( size_t ) ( 17 * 1024 ) )
#define configMAX_TASK_NAME_LEN ( 16 )
#define configUSE_TRACE_FACILITY 0
#define configUSE_PREEMPTION 1
#define configUSE_IDLE_HOOK 0
#define configUSE_TICK_HOOK 0
#define configCPU_CLOCK_HZ ( ( unsigned long ) 72000000 )
#define configTICK_RATE_HZ ( ( TickType_t ) 1000 )
#define configMAX_PRIORITIES ( 5 )
#define configMINIMAL_STACK_SIZE ( ( unsigned short ) 128 )
#define configTOTAL_HEAP_SIZE ( ( size_t ) ( 17 * 1024 ) )
#define configMAX_TASK_NAME_LEN ( 16 )
#define configUSE_TRACE_FACILITY 0
/* ϵͳ<CFB5><CDB3><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>1<EFBFBD><31>ʾΪ16λ<36>޷<EFBFBD><DEB7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Σ<EFBFBD>0<EFBFBD><30>ʾΪ32λ<32>޷<EFBFBD><DEB7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
#define configUSE_16_BIT_TICKS 0
#define configUSE_16_BIT_TICKS 0
/* 1<><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>CPUʹ<55><CAB9>Ȩ,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͬ<EFBFBD><CDAC><EFBFBD>ȼ<EFBFBD><C8BC><EFBFBD><EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD> 2<><32><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȼ<EFBFBD><C8BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȼ<EFBFBD><C8BC><EFBFBD>ͬ<EFBFBD><CDAC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2<EFBFBD><32><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9>1 */
#define configIDLE_SHOULD_YIELD 1
#define configIDLE_SHOULD_YIELD 1
/* <20><><EFBFBD>ӵIJ<D3B5><C4B2><EFBFBD> */
/* ʱ<><CAB1>Ƭ<EFBFBD><C6AC><EFBFBD>ȣ<EFBFBD><C8A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȼ<EFBFBD><C8BC><EFBFBD>ͬʱִ<CAB1><D6B4> */
#define configUSE_TIME_SLICING 1
#define configUSE_TIME_SLICING 1
/* <20><><EFBFBD>С<EFBFBD>Ϊ1<CEAA><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ0<CEAA>ر<EFBFBD> */
#define configUSE_QUEUE_SETS 1
/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֪ͨ<CDA8><D6AA><EFBFBD>ܣ<EFBFBD>Ĭ<EFBFBD>Ͽ<EFBFBD><CFBF><EFBFBD> */
#define configUSE_TASK_NOTIFICATIONS 1
#define configUSE_QUEUE_SETS 0
/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֪ͨ<CDA8><D6AA><EFBFBD>ܣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֪ͨ<EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD>Ĭ<EFBFBD>Ͽ<EFBFBD><EFBFBD><EFBFBD> */
#define configUSE_TASK_NOTIFICATIONS 1
/* <20><><EFBFBD><EFBFBD><EFBFBD>ź<EFBFBD><C5BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
#define configUSE_MUTEXES 0
#define configUSE_MUTEXES 0
/* ʹ<>õݹ黥<DDB9><E9BBA5><EFBFBD>ź<EFBFBD><C5BA><EFBFBD> */
#define configUSE_RECURSIVE_MUTEXES 0
#define configUSE_RECURSIVE_MUTEXES 0
/* Ϊ1ʱʹ<CAB1>ü<EFBFBD><C3BC><EFBFBD><EFBFBD>ź<EFBFBD><C5BA><EFBFBD> */
#define configUSE_COUNTING_SEMAPHORES 0
#define configUSE_COUNTING_SEMAPHORES 0
/* <20><><EFBFBD>ÿ<EFBFBD><C3BF><EFBFBD>ע<EFBFBD><D7A2><EFBFBD><EFBFBD><EFBFBD>ź<EFBFBD><C5BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD>и<EFBFBD><D0B8><EFBFBD> */
#define configQUEUE_REGISTRY_SIZE 10
#define configUSE_APPLICATION_TASK_TAG 0
#define configQUEUE_REGISTRY_SIZE 10
#define configUSE_APPLICATION_TASK_TAG 0
/* FreeRTOS<4F><53><EFBFBD>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>й<EFBFBD><D0B9><EFBFBD><EFBFBD><EFBFBD>ѡ<EFBFBD><D1A1> */
/* ֧<>ֶ<EFBFBD>̬<EFBFBD>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD>ö<EFBFBD><EFBFBD>С<EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD>ź<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>õ<EFBFBD><EFBFBD><EFBFBD> */
#define configSUPPORT_DYNAMIC_ALLOCATION 1
/* ֧<>ֶ<EFBFBD>̬<EFBFBD>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD><EFBFBD> */
#define configSUPPORT_DYNAMIC_ALLOCATION 1
/* ֧<>־<EFBFBD>̬<EFBFBD>ڴ<EFBFBD> */
#define configSUPPORT_STATIC_ALLOCATION 0
#define configSUPPORT_STATIC_ALLOCATION 0
/*
* <20><><EFBFBD><EFBFBD><30><CAB1><EFBFBD>ö<EFBFBD>ջ<EFBFBD><D5BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܣ<EFBFBD><DCA3><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD>ô˹<C3B4><CBB9><EFBFBD>
* <20>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<E1B9A9><D2BB>ջ<EFBFBD><D5BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӻ<EFBFBD><D3BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD>õĻ<C3B5>
* <20><>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD>Ϊ1<CEAA><31><EFBFBD><EFBFBD>2<EFBFBD><32><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ջ<EFBFBD><D5BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E2B7BD> */
#define configCHECK_FOR_STACK_OVERFLOW 0
#define configCHECK_FOR_STACK_OVERFLOW 0
/* FreeRTOS<4F><53><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬<D7B4>ռ<EFBFBD><D5BC>йص<D0B9><D8B5><EFBFBD><EFBFBD><EFBFBD>ѡ<EFBFBD><D1A1> */
/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>ͳ<EFBFBD>ƹ<EFBFBD><C6B9><EFBFBD> */
#define configGENERATE_RUN_TIME_STATS 0
#define configUSE_STATS_FORMATTING_FUNCTIONS 0
#define configRECORD_STACK_HIGH_ADDRESS 0
#define configGENERATE_RUN_TIME_STATS 0
/* Co-routine definitions. */
/* <20><><EFBFBD><EFBFBD>Э<EFBFBD>̣<EFBFBD><CCA3><EFBFBD><EFBFBD><EFBFBD>Э<EFBFBD><D0AD><EFBFBD>Ժ<EFBFBD><D4BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>croutine.c */
#define configUSE_CO_ROUTINES 0
#define configUSE_CO_ROUTINES 0
/* Э<>̵<EFBFBD><CCB5><EFBFBD>Ч<EFBFBD><D0A7><EFBFBD>ȼ<EFBFBD><C8BC><EFBFBD>Ŀ */
#define configMAX_CO_ROUTINE_PRIORITIES ( 2 )
#define configMAX_CO_ROUTINE_PRIORITIES ( 2 )
/* <20><><EFBFBD>ӵIJ<D3B5><C4B2><EFBFBD> */
/* FreeRTOS<4F><53><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD>йص<D0B9><D8B5><EFBFBD><EFBFBD><EFBFBD>ѡ<EFBFBD><D1A1> */
/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1> */
#define configUSE_TIMERS 0
#define configUSE_TIMERS 0
/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD>ȼ<EFBFBD> */
#define configTIMER_TASK_PRIORITY (configMAX_PRIORITIES-1)
#define configTIMER_TASK_PRIORITY (configMAX_PRIORITIES-1)
/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD>г<EFBFBD><D0B3><EFBFBD> */
#define configTIMER_QUEUE_LENGTH 10
#define configTIMER_QUEUE_LENGTH 10
/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ջ<EFBFBD><D5BB>С */
#define configTIMER_TASK_STACK_DEPTH (configMINIMAL_STACK_SIZE*2)
#define configTIMER_TASK_STACK_DEPTH (configMINIMAL_STACK_SIZE*2)
/*
* ijЩ<C4B3><D0A9><EFBFBD><EFBFBD>FreeRTOs<4F><73>Ӳ<EFBFBD><D3B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD>һ<EFBFBD><D2BB>Ҫִ<D2AA>е<EFBFBD><D0B5><EFBFBD><EFBFBD><EFBFBD>:
*
@@ -118,7 +116,7 @@
* 4.һ<><D2BB>ǿ<EFBFBD><C7BF><EFBFBD>޶<EFBFBD><DEB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȼ<EFBFBD><C8BC><EFBFBD>ĿΪ32
* һ<><D2BB><EFBFBD><EFBFBD>Ӳ<EFBFBD><D3B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>ָ<EFBFBD><EFBFBD><EEA3AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD>õģ<C3B5>MCUû<55><C3BB><EFBFBD><EFBFBD>ЩӲ<D0A9><D3B2>ָ<EFBFBD><D6B8><EFBFBD>Ļ<EFBFBD><C4BB>˺<EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ0 !
*/
#define configUSE_PORT_OPTIMISED_TASK SELECTION 1
#define configUSE_PORT_OPTIMISED_TASK_SELECTION 1
/*
* configUSE_TICKLESS_IDLE
@@ -134,49 +132,48 @@
* 1.ʹ<><CAB9>FlyMcu<63><75><EFBFBD><EFBFBD>һ<EFBFBD><D2BB>оƬ,Ȼ<><C8BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>STMISP -><3E><><EFBFBD><EFBFBD>оƬ(z)
*
*/
#define configUSE_TICKLESS_IDLE 0
#define configUSE_TICKLESS_IDLE 0
/* ȡ<><C8A1>ԭ<EFBFBD>е<EFBFBD><D0B5>жϺ<D0B6><CFBA><EFBFBD> */
#define xPortPendSVHandler PendSV_Handler
#define vPortSVCHandler SVC_Handler
#define INCLUDE_xTaskGetSchedulerState 1
#define xPortPendSVHandler PendSV_Handler
#define vPortSVCHandler SVC_Handler
#define INCLUDE_xTaskGetSchedulerState 1
/* Set the following definitions to 1 to include the API function, or zero
to exclude the API function. */
#define INCLUDE_vTaskPrioritySet 1
#define INCLUDE_uxTaskPriorityGet 1
#define INCLUDE_vTaskDelete 1
#define INCLUDE_vTaskCleanUpResources 0
#define INCLUDE_vTaskSuspend 1
#define INCLUDE_vTaskDelayUntil 1
#define INCLUDE_vTaskDelay 1
#define INCLUDE_vTaskPrioritySet 1
#define INCLUDE_uxTaskPriorityGet 1
#define INCLUDE_vTaskDelete 1
#define INCLUDE_vTaskCleanUpResources 0
#define INCLUDE_vTaskSuspend 1
#define INCLUDE_vTaskDelayUntil 1
#define INCLUDE_vTaskDelay 1
/* <20><><EFBFBD>ӵIJ<D3B5><C4B2><EFBFBD> */
#define INCLUDE_eTaskGetState 1
#define INCLUDE_xTimerPendFunctionCall 0
#define INCLUDE_xTaskGetSchedulerState 1
#define INCLUDE_eTaskGetState 1
#define INCLUDE_xTimerPendFunctionCall 0
#define INCLUDE_xTaskGetSchedulerState 1
/* FreeRTOS<4F><53><EFBFBD>ж<EFBFBD><D0B6>йص<D0B9><D8B5><EFBFBD><EFBFBD><EFBFBD>ѡ<EFBFBD><D1A1> */
#ifdef __NVIC_PRIO_BITS
#define configPRIO_BITS __NVIC_PRIO_BITS
#define configPRIO_BITS __NVIC_PRIO_BITS
#else
#define configPRIO_BITS 4
#define configPRIO_BITS 4
#endif
/* <20>ж<EFBFBD><D0B6><EFBFBD><EFBFBD>ȼ<EFBFBD><C8BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>5-15<31><35>FreeRTOS<4F><53><EFBFBD>Թ<EFBFBD><D4B9><EFBFBD><EFBFBD>ģ<EFBFBD>0-4<><34>FreeRTOS<4F><53><EFBFBD><EFBFBD><EFBFBD>Թ<EFBFBD><D4B9><EFBFBD><EFBFBD>ġ<EFBFBD> */
/* <20>ж<EFBFBD><D0B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȼ<EFBFBD> */
#define configLIBRARY_LOWEST_INTERRUPT_PRIORITY 15
#define configLIBRARY_LOWEST_INTERRUPT_PRIORITY 15
/* ϵͳ<CFB5>ɹ<EFBFBD><C9B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><D0B6><EFBFBD><EFBFBD>ȼ<EFBFBD> */
#define configLIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY 5
#define configLIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY 5
/* This is the raw value as per the Cortex-M3 NVIC. Values can be 255
(lowest) to 0 (1?) (highest). */
#define configKERNEL_INTERRUPT_PRIORITY 255
#define configKERNEL_INTERRUPT_PRIORITY 255
/* !!!! configMAX_SYSCALL_INTERRUPT_PRIORITY must not be set to zero !!!!
See http://www.FreeRTOS.org/RTOS-Cortex-M3-M4.html. */
#define configMAX_SYSCALL_INTERRUPT_PRIORITY 191 /* equivalent to 0xb0, or priority 11. */
#define configMAX_SYSCALL_INTERRUPT_PRIORITY 191 /* equivalent to 0xb0, or priority 11. */
/* This is the value being used as per the ST library which permits 16
priority values, 0 to 15. This must correspond to the
configKERNEL_INTERRUPT_PRIORITY setting. Here 15 corresponds to the lowest
NVIC value of 255. */
#define configLIBRARY_KERNEL_INTERRUPT_PRIORITY 15
#define configLIBRARY_KERNEL_INTERRUPT_PRIORITY 15
#endif /* FREERTOS_CONFIG_H */

File diff suppressed because one or more lines are too long

View File

@@ -1,6 +1,6 @@
#include "App_MQTT.h"
bool bMqttNormalSubscribe(char *pcTopic, char *pcMessage)
bool bMqttDefaultSubscribe(char *pcTopic, char *pcMessage)
{
char cCmd[256] = {0};
snprintf(cCmd, sizeof(cCmd), "AT+MQTT_SUBSCRIBE=\"%s\",\"%s\"", pcTopic, pcMessage);

View File

@@ -14,7 +14,7 @@ typedef enum
}eMqttMode_t;
bool bMqttSubMsgFormat(eMqttMode_t ucMode, char *pcReceivedMsg, char *pcTopic, char *pcMessage);
bool bMqttNormalSubscribe(char *pcTopic, char *pcMessage);
bool bMqttDefaultSubscribe(char *pcTopic, char *pcMessage);
bool bMqttNormalPublish(char *pcTopic, char *pcMessage);
#endif /* __APP_MQTT_H__ */

View File

@@ -54,13 +54,12 @@ void vEsp8266Rst ( void )
*/
bool bEsp8266Command ( char * pcCmd, char * pcAck1, char * pcAck2, uint32_t ulWaittime )
{
xSerialFrameRecord .Bits_t .usFrameLength = 0; //<2F><><EFBFBD>¿<EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD>µ<EFBFBD><C2B5><EFBFBD><EFBFBD>ݰ<EFBFBD>
xSerialFrameRecord .Bits_t .usFrameLength = 0; //<2F><><EFBFBD>¿<EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD>µ<EFBFBD><C2B5><EFBFBD><EFBFBD>ݰ<EFBFBD>
vUsartPrintf ( USART2, "%s\r\n", pcCmd );
if ( ( pcAck1 == 0 ) && ( pcAck2 == 0 ) ) //<2F><><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
if ( ( pcAck1 == 0 ) && ( pcAck2 == 0 ) ) //<2F><><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
return true;
vDelayMs( ulWaittime ); //<2F><>ʱ
vDelayMs( ulWaittime ); //<2F><>ʱ
xSerialFrameRecord .cSerialReceivedBuffer [ xSerialFrameRecord .Bits_t .usFrameLength ] = '\0';
// macPC_Usart ( "%s", xSerialFrameRecord .cSerialReceivedBuffer );
if ( ( pcAck1 != 0 ) && ( pcAck2 != 0 ) )
return ( ( bool ) strstr ( xSerialFrameRecord .cSerialReceivedBuffer, pcAck1 ) ||
( bool ) strstr ( xSerialFrameRecord .cSerialReceivedBuffer, pcAck2 ) );
@@ -138,8 +137,8 @@ bool bEsp8266JoinAp ( char * pcSsid, char * pcPassWord )
* @retval 0<><30><EFBFBD><EFBFBD>ʼ<EFBFBD><CABC>ʧ<EFBFBD><CAA7>
*/
bool bEsp8266MqttInit ( char * pcMqttUserName, char * pcMqttPassword, char * pcMqttClientId,
char * pcMqttServerIp, uint16_t usMqttServerPort,
char * pcMqttSubscribeTopic )
char * pcMqttServerIp, uint16_t usMqttServerPort,
char * pcMqttSubscribeTopic )
{
char cCmd[512] = {0};

View File

@@ -50,29 +50,42 @@ typedef enum{
#define macESP8266_CH_PD_CLK RCC_APB2Periph_GPIOA
#define macESP8266_CH_PD_PORT GPIOA
#define macESP8266_CH_PD_PIN GPIO_Pin_5
#define macESP8266_RST_CLK RCC_APB2Periph_GPIOA
#define macESP8266_RST_PORT GPIOA
#define macESP8266_RST_PIN GPIO_Pin_6
#define macESP8266_USART_BAUD_RATE 115200
#define macESP8266_USART USART2
#define macESP8266_USART_CLK RCC_APB1Periph_USART2
#define macESP8266_USART_GPIO_CLK RCC_APB2Periph_GPIOA
#define macESP8266_USART_TX_PORT GPIOA
#define macESP8266_USART_TX_PIN GPIO_Pin_2
#define macESP8266_USART_RX_PORT GPIOA
#define macESP8266_USART_RX_PIN GPIO_Pin_3
/* ESP8266 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EAB6A8> */
// #define vEsp8266Printf(*format, ...) vUsartPrintf(macESP8266_USART, *format, ...)
#define macESP8266_CH_ENABLE() GPIO_SetBits ( macESP8266_CH_PD_PORT, macESP8266_CH_PD_PIN )
#define macESP8266_CH_DISABLE() GPIO_ResetBits ( macESP8266_CH_PD_PORT, macESP8266_CH_PD_PIN )
#define macESP8266_RST_HIGH_LEVEL() GPIO_SetBits ( macESP8266_RST_PORT, macESP8266_RST_PIN )
#define macESP8266_RST_LOW_LEVEL() GPIO_ResetBits ( macESP8266_RST_PORT, macESP8266_RST_PIN )
/* <20>û<EFBFBD><C3BB><EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD>õIJ<C3B5><C4B2><EFBFBD> */
#define ESP8266_APSSID "CMCC-5bjx" // Ҫ<><D2AA><EFBFBD>ӵ<EFBFBD><D3B5>ȵ<EFBFBD><C8B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
// #define ESP8266_APSSID "TESTAP"
#define ESP8266_APPWD "jp7qpqn3" // Ҫ<><D2AA><EFBFBD>ӵ<EFBFBD><D3B5>ȵ<EFBFBD><C8B5><EFBFBD><EFBFBD><EFBFBD>Կ
#define ALIYUN 0
#define EMQX 1
#define ESP8266_MQTT_SERVER_MODE ALIYUN // ѡ<><D1A1>MQTT<54><54><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģʽ<C4A3><CABD>ALIYUN/EMQX
#define ESP8266_EMQX_MQTT_SERVER_IP "121.36.104.9" // MQTT<54><54><EFBFBD><EFBFBD><EFBFBD><EFBFBD>IP<49><50>ַ
#define ESP8266_EMQX_MQTT_SERVER_PORT 1883 // MQTT<54><54><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˿ں<CBBF>
#define ESP8266_EMQX_MQTT_CLIENTID "LoRaEnvAssistant&stm32" // MQTT<54>ͻ<EFBFBD><CDBB><EFBFBD>ID
#define ESP8266_EMQX_MQTT_USERNAME "stm32" // MQTT<54>û<EFBFBD><C3BB><EFBFBD>
#define ESP8266_EMQX_MQTT_PASSWORD "123456789" // MQTT<54><54><EFBFBD><EFBFBD>
#define ESP8266_EMQX_MQTT_SUBSCRIBE_TOPIC "/LoRaEnvAssistant/LoRaEnvAssistant&mqttfx/topics" // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define ESP8266_EMQX_MQTT_PUBLISH_TOPIC "/LoRaEnvAssistant/LoRaEnvAssistant&stm32/topics" // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define ESP8266_ALIYUN_MQTT_IP "iot-06z00by9al78fmz.mqtt.iothub.aliyuncs.com"
#define ESP8266_ALIYUN_MQTT_PORT 1883
#define ESP8266_ALIYUN_MQTT_CLIENTID "k11ilqnf8mF.GATEWAY_STM32_ESP8266|securemode=2\\,signmethod=hmacsha256\\,timestamp=1768415322303|"
#define ESP8266_ALIYUN_MQTT_USERNAME "GATEWAY_STM32_ESP8266&k11ilqnf8mF"
#define ESP8266_ALIYUN_MQTT_PASSWORD "a74261b04d7dda672342776b88e956f26f74f4d9d104461f8b65cbf544ab9c03"
#define ESP8266_ALIYUN_MQTT_SUBSCRIBE_TOPIC "/k11ilqnf8mF/GATEWAY_STM32_ESP8266/user/get"
#define ESP8266_ALIYUN_MQTT_PUBLISH_TOPIC "/k11ilqnf8mF/GATEWAY_STM32_ESP8266/user/update"
/* ESP8266 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
void vEsp8266GpioConfig ( void );
void vEsp8266Rst ( void );
@@ -97,31 +110,6 @@ bool bEsp8266SendString ( FunctionalState xE
uint32_t ulStrLength, eIdNo_t xId );
char * pcEsp8266ReceiveString ( FunctionalState xEnumEnUnvarnishTx );
/* <20>û<EFBFBD><C3BB><EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD>õIJ<C3B5><C4B2><EFBFBD> */
// #define ESP8266_APSSID "CMCC-5bjx" // Ҫ<><D2AA><EFBFBD>ӵ<EFBFBD><D3B5>ȵ<EFBFBD><C8B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define ESP8266_APSSID "TESTAP"
#define ESP8266_APPWD "jp7qpqn3" // Ҫ<><D2AA><EFBFBD>ӵ<EFBFBD><D3B5>ȵ<EFBFBD><C8B5><EFBFBD><EFBFBD><EFBFBD>Կ
#define ALIYUN 0
#define EMQX 1
#define ESP8266_MQTT_SERVER_MODE ALIYUN // ѡ<><D1A1>MQTT<54><54><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģʽ<C4A3><CABD>ALIYUN/EMQX
#define ESP8266_EMQX_MQTT_SERVER_IP "121.36.104.9" // MQTT<54><54><EFBFBD><EFBFBD><EFBFBD><EFBFBD>IP<49><50>ַ
#define ESP8266_EMQX_MQTT_SERVER_PORT 1883 // MQTT<54><54><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˿ں<CBBF>
#define ESP8266_EMQX_MQTT_CLIENTID "LoRaEnvAssistant&stm32" // MQTT<54>ͻ<EFBFBD><CDBB><EFBFBD>ID
#define ESP8266_EMQX_MQTT_USERNAME "stm32" // MQTT<54>û<EFBFBD><C3BB><EFBFBD>
#define ESP8266_EMQX_MQTT_PASSWORD "123456789" // MQTT<54><54><EFBFBD><EFBFBD>
#define ESP8266_EMQX_MQTT_SUBSCRIBE_TOPIC "/LoRaEnvAssistant/LoRaEnvAssistant&mqttfx/topics" // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define ESP8266_EMQX_MQTT_PUBLISH_TOPIC "/LoRaEnvAssistant/LoRaEnvAssistant&stm32/topics" // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define ESP8266_ALIYUN_MQTT_IP "iot-06z00by9al78fmz.mqtt.iothub.aliyuncs.com"
#define ESP8266_ALIYUN_MQTT_PORT 1883
#define ESP8266_ALIYUN_MQTT_CLIENTID "k11ilqnf8mF.GATEWAY_STM32_ESP8266|securemode=2\\,signmethod=hmacsha256\\,timestamp=1768415322303|"
#define ESP8266_ALIYUN_MQTT_USERNAME "GATEWAY_STM32_ESP8266&k11ilqnf8mF"
#define ESP8266_ALIYUN_MQTT_PASSWORD "a74261b04d7dda672342776b88e956f26f74f4d9d104461f8b65cbf544ab9c03"
#define ESP8266_ALIYUN_MQTT_SUBSCRIBE_TOPIC "/k11ilqnf8mF/GATEWAY_STM32_ESP8266/user/get"
#define ESP8266_ALIYUN_MQTT_PUBLISH_TOPIC "/k11ilqnf8mF/GATEWAY_STM32_ESP8266/user/update"
/* <20>ⲿȫ<E2B2BF>ֱ<EFBFBD><D6B1><EFBFBD> */
#endif /* __ESP8266_H */

View File

@@ -39,66 +39,66 @@
* See http://www.freertos.org/a00110.html
*----------------------------------------------------------*/
#define configUSE_PREEMPTION 1
#define configUSE_IDLE_HOOK 0
#define configUSE_TICK_HOOK 0
#define configCPU_CLOCK_HZ ( ( unsigned long ) 72000000 )
#define configTICK_RATE_HZ ( ( TickType_t ) 1000 )
#define configMAX_PRIORITIES ( 5 )
#define configMINIMAL_STACK_SIZE ( ( unsigned short ) 128 )
#define configTOTAL_HEAP_SIZE ( ( size_t ) ( 17 * 1024 ) )
#define configMAX_TASK_NAME_LEN ( 16 )
#define configUSE_TRACE_FACILITY 0
#define configUSE_PREEMPTION 1
#define configUSE_IDLE_HOOK 0
#define configUSE_TICK_HOOK 0
#define configCPU_CLOCK_HZ ( ( unsigned long ) 72000000 )
#define configTICK_RATE_HZ ( ( TickType_t ) 1000 )
#define configMAX_PRIORITIES ( 5 )
#define configMINIMAL_STACK_SIZE ( ( unsigned short ) 128 )
#define configTOTAL_HEAP_SIZE ( ( size_t ) ( 17 * 1024 ) )
#define configMAX_TASK_NAME_LEN ( 16 )
#define configUSE_TRACE_FACILITY 0
/* ϵͳ<CFB5><CDB3><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>1<EFBFBD><31>ʾΪ16λ<36>޷<EFBFBD><DEB7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Σ<EFBFBD>0<EFBFBD><30>ʾΪ32λ<32>޷<EFBFBD><DEB7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
#define configUSE_16_BIT_TICKS 0
#define configUSE_16_BIT_TICKS 0
/* 1<><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>CPUʹ<55><CAB9>Ȩ,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͬ<EFBFBD><CDAC><EFBFBD>ȼ<EFBFBD><C8BC><EFBFBD><EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD> 2<><32><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȼ<EFBFBD><C8BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȼ<EFBFBD><C8BC><EFBFBD>ͬ<EFBFBD><CDAC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2<EFBFBD><32><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9>1 */
#define configIDLE_SHOULD_YIELD 1
#define configIDLE_SHOULD_YIELD 1
/* <20><><EFBFBD>ӵIJ<D3B5><C4B2><EFBFBD> */
/* ʱ<><CAB1>Ƭ<EFBFBD><C6AC><EFBFBD>ȣ<EFBFBD><C8A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȼ<EFBFBD><C8BC><EFBFBD>ͬʱִ<CAB1><D6B4> */
#define configUSE_TIME_SLICING 1
#define configUSE_TIME_SLICING 1
/* <20><><EFBFBD>С<EFBFBD>Ϊ1<CEAA><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ0<CEAA>ر<EFBFBD> */
#define configUSE_QUEUE_SETS 0
#define configUSE_QUEUE_SETS 0
/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֪ͨ<CDA8><D6AA><EFBFBD>ܣ<EFBFBD><DCA3><EFBFBD><EFBFBD><EFBFBD>֪ͨ<CDA8><D6AA>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD>Ĭ<EFBFBD>Ͽ<EFBFBD><CFBF><EFBFBD> */
#define configUSE_TASK_NOTIFICATIONS 1
#define configUSE_TASK_NOTIFICATIONS 1
/* <20><><EFBFBD><EFBFBD><EFBFBD>ź<EFBFBD><C5BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
#define configUSE_MUTEXES 0
#define configUSE_MUTEXES 0
/* ʹ<>õݹ黥<DDB9><E9BBA5><EFBFBD>ź<EFBFBD><C5BA><EFBFBD> */
#define configUSE_RECURSIVE_MUTEXES 0
#define configUSE_RECURSIVE_MUTEXES 0
/* Ϊ1ʱʹ<CAB1>ü<EFBFBD><C3BC><EFBFBD><EFBFBD>ź<EFBFBD><C5BA><EFBFBD> */
#define configUSE_COUNTING_SEMAPHORES 0
#define configUSE_COUNTING_SEMAPHORES 0
/* <20><><EFBFBD>ÿ<EFBFBD><C3BF><EFBFBD>ע<EFBFBD><D7A2><EFBFBD><EFBFBD><EFBFBD>ź<EFBFBD><C5BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD>и<EFBFBD><D0B8><EFBFBD> */
#define configQUEUE_REGISTRY_SIZE 10
#define configUSE_APPLICATION_TASK_TAG 0
#define configQUEUE_REGISTRY_SIZE 10
#define configUSE_APPLICATION_TASK_TAG 0
/* FreeRTOS<4F><53><EFBFBD>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>й<EFBFBD><D0B9><EFBFBD><EFBFBD><EFBFBD>ѡ<EFBFBD><D1A1> */
/* ֧<>ֶ<EFBFBD>̬<EFBFBD>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD><EFBFBD> */
#define configSUPPORT_DYNAMIC_ALLOCATION 1
#define configSUPPORT_DYNAMIC_ALLOCATION 1
/* ֧<>־<EFBFBD>̬<EFBFBD>ڴ<EFBFBD> */
#define configSUPPORT_STATIC_ALLOCATION 0
#define configSUPPORT_STATIC_ALLOCATION 0
/*
* <20><><EFBFBD><EFBFBD><30><CAB1><EFBFBD>ö<EFBFBD>ջ<EFBFBD><D5BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܣ<EFBFBD><DCA3><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD>ô˹<C3B4><CBB9><EFBFBD>
* <20>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<E1B9A9><D2BB>ջ<EFBFBD><D5BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӻ<EFBFBD><D3BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD>õĻ<C3B5>
* <20><>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD>Ϊ1<CEAA><31><EFBFBD><EFBFBD>2<EFBFBD><32><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ջ<EFBFBD><D5BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E2B7BD> */
#define configCHECK_FOR_STACK_OVERFLOW 0
#define configCHECK_FOR_STACK_OVERFLOW 0
/* FreeRTOS<4F><53><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬<D7B4>ռ<EFBFBD><D5BC>йص<D0B9><D8B5><EFBFBD><EFBFBD><EFBFBD>ѡ<EFBFBD><D1A1> */
/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>ͳ<EFBFBD>ƹ<EFBFBD><C6B9><EFBFBD> */
#define configGENERATE_RUN_TIME_STATS 0
#define configGENERATE_RUN_TIME_STATS 0
/* Co-routine definitions. */
/* <20><><EFBFBD><EFBFBD>Э<EFBFBD>̣<EFBFBD><CCA3><EFBFBD><EFBFBD><EFBFBD>Э<EFBFBD><D0AD><EFBFBD>Ժ<EFBFBD><D4BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>croutine.c */
#define configUSE_CO_ROUTINES 0
#define configUSE_CO_ROUTINES 0
/* Э<>̵<EFBFBD><CCB5><EFBFBD>Ч<EFBFBD><D0A7><EFBFBD>ȼ<EFBFBD><C8BC><EFBFBD>Ŀ */
#define configMAX_CO_ROUTINE_PRIORITIES ( 2 )
#define configMAX_CO_ROUTINE_PRIORITIES ( 2 )
/* <20><><EFBFBD>ӵIJ<D3B5><C4B2><EFBFBD> */
/* FreeRTOS<4F><53><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD>йص<D0B9><D8B5><EFBFBD><EFBFBD><EFBFBD>ѡ<EFBFBD><D1A1> */
/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1> */
#define configUSE_TIMERS 0
#define configUSE_TIMERS 0
/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD>ȼ<EFBFBD> */
#define configTIMER_TASK_PRIORITY (configMAX_PRIORITIES-1)
#define configTIMER_TASK_PRIORITY (configMAX_PRIORITIES-1)
/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD>г<EFBFBD><D0B3><EFBFBD> */
#define configTIMER_QUEUE_LENGTH 10
#define configTIMER_QUEUE_LENGTH 10
/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ջ<EFBFBD><D5BB>С */
#define configTIMER_TASK_STACK_DEPTH (configMINIMAL_STACK_SIZE*2)
#define configTIMER_TASK_STACK_DEPTH (configMINIMAL_STACK_SIZE*2)
/*
* ijЩ<C4B3><D0A9><EFBFBD><EFBFBD>FreeRTOs<4F><73>Ӳ<EFBFBD><D3B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD>һ<EFBFBD><D2BB>Ҫִ<D2AA>е<EFBFBD><D0B5><EFBFBD><EFBFBD><EFBFBD>:
*
@@ -116,7 +116,7 @@
* 4.һ<><D2BB>ǿ<EFBFBD><C7BF><EFBFBD>޶<EFBFBD><DEB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȼ<EFBFBD><C8BC><EFBFBD>ĿΪ32
* һ<><D2BB><EFBFBD><EFBFBD>Ӳ<EFBFBD><D3B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>ָ<EFBFBD><EFBFBD><EEA3AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD>õģ<C3B5>MCUû<55><C3BB><EFBFBD><EFBFBD>ЩӲ<D0A9><D3B2>ָ<EFBFBD><D6B8><EFBFBD>Ļ<EFBFBD><C4BB>˺<EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ0 !
*/
#define configUSE_PORT_OPTIMISED_TASK SELECTION 1
#define configUSE_PORT_OPTIMISED_TASK_SELECTION 1
/*
* configUSE_TICKLESS_IDLE
@@ -132,48 +132,48 @@
* 1.ʹ<><CAB9>FlyMcu<63><75><EFBFBD><EFBFBD>һ<EFBFBD><D2BB>оƬ,Ȼ<><C8BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>STMISP -><3E><><EFBFBD><EFBFBD>оƬ(z)
*
*/
#define configUSE_TICKLESS_IDLE 0
#define configUSE_TICKLESS_IDLE 0
/* ȡ<><C8A1>ԭ<EFBFBD>е<EFBFBD><D0B5>жϺ<D0B6><CFBA><EFBFBD> */
#define xPortPendSVHandler PendSV_Handler
#define vPortSVCHandler SVC_Handler
#define INCLUDE_xTaskGetSchedulerState 1
#define xPortPendSVHandler PendSV_Handler
#define vPortSVCHandler SVC_Handler
#define INCLUDE_xTaskGetSchedulerState 1
/* Set the following definitions to 1 to include the API function, or zero
to exclude the API function. */
#define INCLUDE_vTaskPrioritySet 1
#define INCLUDE_uxTaskPriorityGet 1
#define INCLUDE_vTaskDelete 1
#define INCLUDE_vTaskCleanUpResources 0
#define INCLUDE_vTaskSuspend 1
#define INCLUDE_vTaskDelayUntil 1
#define INCLUDE_vTaskDelay 1
#define INCLUDE_vTaskPrioritySet 1
#define INCLUDE_uxTaskPriorityGet 1
#define INCLUDE_vTaskDelete 1
#define INCLUDE_vTaskCleanUpResources 0
#define INCLUDE_vTaskSuspend 1
#define INCLUDE_vTaskDelayUntil 1
#define INCLUDE_vTaskDelay 1
/* <20><><EFBFBD>ӵIJ<D3B5><C4B2><EFBFBD> */
#define INCLUDE_eTaskGetState 1
#define INCLUDE_xTimerPendFunctionCall 0
#define INCLUDE_xTaskGetSchedulerState 1
#define INCLUDE_eTaskGetState 1
#define INCLUDE_xTimerPendFunctionCall 0
#define INCLUDE_xTaskGetSchedulerState 1
/* FreeRTOS<4F><53><EFBFBD>ж<EFBFBD><D0B6>йص<D0B9><D8B5><EFBFBD><EFBFBD><EFBFBD>ѡ<EFBFBD><D1A1> */
#ifdef __NVIC_PRIO_BITS
#define configPRIO_BITS __NVIC_PRIO_BITS
#define configPRIO_BITS __NVIC_PRIO_BITS
#else
#define configPRIO_BITS 4
#define configPRIO_BITS 4
#endif
/* <20>ж<EFBFBD><D0B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȼ<EFBFBD> */
#define configLIBRARY_LOWEST_INTERRUPT_PRIORITY 15
#define configLIBRARY_LOWEST_INTERRUPT_PRIORITY 15
/* ϵͳ<CFB5>ɹ<EFBFBD><C9B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><D0B6><EFBFBD><EFBFBD>ȼ<EFBFBD> */
#define configLIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY 5
#define configLIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY 5
/* This is the raw value as per the Cortex-M3 NVIC. Values can be 255
(lowest) to 0 (1?) (highest). */
#define configKERNEL_INTERRUPT_PRIORITY 255
#define configKERNEL_INTERRUPT_PRIORITY 255
/* !!!! configMAX_SYSCALL_INTERRUPT_PRIORITY must not be set to zero !!!!
See http://www.FreeRTOS.org/RTOS-Cortex-M3-M4.html. */
#define configMAX_SYSCALL_INTERRUPT_PRIORITY 191 /* equivalent to 0xb0, or priority 11. */
#define configMAX_SYSCALL_INTERRUPT_PRIORITY 191 /* equivalent to 0xb0, or priority 11. */
/* This is the value being used as per the ST library which permits 16
priority values, 0 to 15. This must correspond to the
configKERNEL_INTERRUPT_PRIORITY setting. Here 15 corresponds to the lowest
NVIC value of 255. */
#define configLIBRARY_KERNEL_INTERRUPT_PRIORITY 15
#define configLIBRARY_KERNEL_INTERRUPT_PRIORITY 15
#endif /* FREERTOS_CONFIG_H */

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -925,8 +925,8 @@
</Group>
<Group>
<GroupName>System</GroupName>
<tvExp>1</tvExp>
<GroupName>BSP</GroupName>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<cbSel>0</cbSel>
<RteFlg>0</RteFlg>
@@ -937,7 +937,7 @@
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>.\System\Delay.c</PathWithFileName>
<PathWithFileName>.\BSP\Delay.c</PathWithFileName>
<FilenameWithoutPath>Delay.c</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
@@ -949,7 +949,7 @@
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>.\System\Delay.h</PathWithFileName>
<PathWithFileName>.\BSP\Delay.h</PathWithFileName>
<FilenameWithoutPath>Delay.h</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
@@ -961,7 +961,7 @@
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>.\System\USART.c</PathWithFileName>
<PathWithFileName>.\BSP\USART.c</PathWithFileName>
<FilenameWithoutPath>USART.c</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
@@ -973,7 +973,7 @@
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>.\System\USART.h</PathWithFileName>
<PathWithFileName>.\BSP\USART.h</PathWithFileName>
<FilenameWithoutPath>USART.h</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
@@ -982,7 +982,7 @@
<Group>
<GroupName>Drivers</GroupName>
<tvExp>1</tvExp>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<cbSel>0</cbSel>
<RteFlg>0</RteFlg>

View File

@@ -341,7 +341,7 @@
<MiscControls>--no-multibyte-chars</MiscControls>
<Define>USE_STDPERIPH_DRIVER</Define>
<Undefine></Undefine>
<IncludePath>.\SystemFiles;.\Libraries\inc;.\User;.\System;.\Drivers;.\FreeRTOS\inc;.\FreeRTOS\portable\RVDS\ARM_CM3;.\FreeRTOS\config;.\Application\NetFIFO</IncludePath>
<IncludePath>.\SystemFiles;.\Libraries\inc;.\User;.\BSP;.\Drivers;.\FreeRTOS\inc;.\FreeRTOS\portable\RVDS\ARM_CM3;.\FreeRTOS\config;.\Application\NetFIFO</IncludePath>
</VariousControls>
</Cads>
<Aads>
@@ -678,27 +678,27 @@
</Files>
</Group>
<Group>
<GroupName>System</GroupName>
<GroupName>BSP</GroupName>
<Files>
<File>
<FileName>Delay.c</FileName>
<FileType>1</FileType>
<FilePath>.\System\Delay.c</FilePath>
<FilePath>.\BSP\Delay.c</FilePath>
</File>
<File>
<FileName>Delay.h</FileName>
<FileType>5</FileType>
<FilePath>.\System\Delay.h</FilePath>
<FilePath>.\BSP\Delay.h</FilePath>
</File>
<File>
<FileName>USART.c</FileName>
<FileType>1</FileType>
<FilePath>.\System\USART.c</FilePath>
<FilePath>.\BSP\USART.c</FilePath>
</File>
<File>
<FileName>USART.h</FileName>
<FileType>5</FileType>
<FilePath>.\System\USART.h</FilePath>
<FilePath>.\BSP\USART.h</FilePath>
</File>
</Files>
</Group>

View File

@@ -109,27 +109,31 @@ void vTaskMqttPublishTest(void *pvParameters)
{
/* <20><><EFBFBD><EFBFBD>֪ͨ<CDA8><D6AA><EFBFBD>պ<EFBFBD><D5BA><EFBFBD> */
ulTaskNotifyTake(pdTRUE, portMAX_DELAY);
char cCmd[256] = {0};
char pcCmd[256] = {0};
char *pcJsonMsg = "{\"temperature\":23,\"humidity\":60}";
while (1)
{
/* code */
#if (ESP8266_MQTT_SERVER_MODE == ALIYUN)
const char* pcMsg = "test";
sprintf(cCmd, "AT+MQTTPUB=0,\"%s\",\"%s\",1,0",
ESP8266_ALIYUN_MQTT_PUBLISH_TOPIC, pcMsg);
if (bEsp8266Command(cCmd, "OK", NULL, 3000) == pdTRUE)
uint8_t ucLen = strlen(pcJsonMsg);
snprintf(pcCmd, sizeof(pcCmd), "AT+MQTTPUBRAW=0,\"%s\",%d,1,0",
ESP8266_ALIYUN_MQTT_PUBLISH_TOPIC, ucLen);
if (bEsp8266Command(pcCmd, "OK", ">", 3000) == pdTRUE &&
bEsp8266Command(pcJsonMsg, "OK", NULL, 3000) == pdTRUE)
{
/* code */
vUsartSendString(USART1, "Aliyun MQTT Publish Successfully.\r\n");
} else
{
/* code */
vUsartSendString(USART1, "Aliyun MQTT Publish Failed.\r\n");
}
vTaskDelay(500);
#elif (ESP8266_MQTT_SERVER_MODE == EMQX)
const char* pcMsg = "test";
sprintf(cCmd, "AT+MQTTPUB=0,\"%s\",\"%s\",0,0", ESP8266_EMQX_MQTT_PUBLISH_TOPIC, pcMsg);
if (bEsp8266Command(cCmd, "OK", NULL, 3000) == pdTRUE)
uint8_t ucLen = strlen(pcJsonMsg);
snprintf(pcCmd, sizeof(pcCmd), "AT+MQTTPUBRAW=0,\"%s\",%d,1,0",
ESP8266_EMQX_MQTT_PUBLISH_TOPIC, ucLen);
if (bEsp8266Command(pcCmd, "OK", ">", 3000) == pdTRUE &&
bEsp8266Command(pcJsonMsg, "OK", NULL, 3000) == pdTRUE)
{
vUsartSendString(USART1, "EMQX MQTT Publish Successfully.\r\n");
} else