“12.2:初步实现esp8266处理响应数据,暂不完善。”

This commit is contained in:
2025-12-02 20:19:38 +08:00
parent 948c1324e1
commit bd85b7395e
19 changed files with 811 additions and 580 deletions

View File

@@ -29,17 +29,10 @@ void vDelayUs(uint32_t ulNus)
SysTick->VAL =0x00; //<2F><><EFBFBD>ռ<EFBFBD><D5BC><EFBFBD><EFBFBD><EFBFBD>
}
//<2F><>ʱnms
//ע<><D7A2>nms<6D>ķ<EFBFBD>Χ
//SysTick->LOADΪ24λ<34>Ĵ<EFBFBD><C4B4><EFBFBD>,<2C><><EFBFBD><EFBFBD>,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱΪ:
//nms<=0xffffff*8*1000/SYSCLK
//SYSCLK<4C><4B>λΪHz,nms<6D><73>λΪms
//<2F><>72M<32><4D><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,nms<=1864
/**
* @brief <20><><EFBFBD><EFBFBD><EBBCB6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>
* @note <20><><EFBFBD><EFBFBD>Systick<63><6B>ʱ<EFBFBD><CAB1>Ϊ24λ<34><CEBB>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>װ<EFBFBD>ص<EFBFBD><D8B5><EFBFBD><EFBFBD><EFBFBD>ֵΪ0xFFFFFF<46><46>Ҳ<EFBFBD><D2B2><EFBFBD><EFBFBD>16777215<31><35><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ص<EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD>0xFFFFFF<46><46><EFBFBD><EFBFBD>ʵ<EFBFBD>ʼ<EFBFBD><CABC>ص<EFBFBD>ֵ<EFBFBD><D6B5>ȡģ<C8A1><C4A3><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱʱ<CAB1><CAB1><EFBFBD><EFBFBD><EFBFBD>̡<EFBFBD>
* <20><><EFBFBD>Գ<EFBFBD><EFBFBD><EFBFBD>1.864s<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>¼<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱΪxms-16777215<31>Ľ<EFBFBD><C4BD><EFBFBD><EFBFBD><EFBFBD>
* @note <20><><EFBFBD><EFBFBD>Systick<63><6B>ʱ<EFBFBD><CAB1>Ϊ24λ<34><CEBB>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>װ<EFBFBD>ص<EFBFBD><D8B5><EFBFBD><EFBFBD><EFBFBD>ֵΪ0xFFFFFF<46><46>Ҳ<EFBFBD><D2B2><EFBFBD><EFBFBD>16777215<31><35><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ص<EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD>0xFFFFFF<46><46><EFBFBD><EFBFBD>ʵ<EFBFBD>ʼ<EFBFBD><CABC>ص<EFBFBD>ֵ<EFBFBD><D6B5>ȡģ<C8A1><C4A3><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱʱ<CAB1><CAB1><EFBFBD><EFBFBD><EFBFBD>̣<EFBFBD>
* usNms<=0xFFFFFF*8*1000/SYSCLK<4C><4B><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>72M<32><4D><EFBFBD><EFBFBD><EFBFBD>£<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1.864s<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>¼<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱΪxms-16777215<31>Ľ<EFBFBD><C4BD><EFBFBD><EFBFBD><EFBFBD>
* @note <20><><EFBFBD>º<EFBFBD><C2BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><D0B6><EFBFBD>ʱ<EFBFBD>Ƿ񳬹<C7B7><F1B3ACB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֳɶ<D6B3><C9B6><EFBFBD>1000ms<6D><73><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* @param None
* @retval None
@@ -68,14 +61,9 @@ void vDelayMs(uint16_t usNms)
void vDelayInit(void)
{
//ʹ<><CAB9>DWT<57><54><EFBFBD><EFBFBD>
DEMCR |= (uint32_t)TRCENA;
//DWT CYCCNT<4E>Ĵ<EFBFBD><C4B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0
DWT_CYCCNT = (uint32_t)0u;
//ʹ<><CAB9>Cortex-M3 DWT CYCCNT<4E>Ĵ<EFBFBD><C4B4><EFBFBD>
DWT_CTRL |= (uint32_t)DWT_CTRL_CYCCNTENA;
DEMCR |= (uint32_t)TRCENA; // ʹ<EFBFBD><EFBFBD>DWT<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
DWT_CYCCNT = (uint32_t)0u; // DWT CYCCNT<4E>Ĵ<EFBFBD><C4B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0
DWT_CTRL |= (uint32_t)DWT_CTRL_CYCCNTENA; // ʹ<><CAB9>Cortex-M3 DWT CYCCNT<4E>Ĵ<EFBFBD><C4B4><EFBFBD>
}
// ΢<><CEA2><EFBFBD><EFBFBD>ʱ
@@ -89,19 +77,16 @@ void vDelayUs(uint32_t ulNus)
ulTicksDelay = ( ulNus * ( SystemCoreClock / (1000000) ) ); // <20><>΢<EFBFBD><CEA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɵδ<C9B5><CEB4><EFBFBD>
ulTicksEnd = ulTicksStart + ulTicksDelay;
// ulTicksEndû<64><C3BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
if ( ulTicksEnd >= ulTicksStart )
if ( ulTicksEnd >= ulTicksStart ) // ulTicksEndû<64><C3BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
{
// DWT_CYCCNT<4E><54><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
if(DWT_CYCCNT > ulTicksStart)
if(DWT_CYCCNT > ulTicksStart) // DWT_CYCCNT<4E><54><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
{
while( DWT_CYCCNT < ulTicksEnd );
}
// DWT_CYCCNT<4E><54><EFBFBD><EFBFBD>
else
{
// <20>Ѿ<EFBFBD><D1BE><EFBFBD>ʱ<EFBFBD><CAB1>ֱ<EFBFBD><D6B1><EFBFBD>˳<EFBFBD>
return;
return; // <20>Ѿ<EFBFBD><D1BE><EFBFBD>ʱ<EFBFBD><CAB1>ֱ<EFBFBD><D6B1><EFBFBD>˳<EFBFBD>
}
}
else // ulTicksEnd<6E><64><EFBFBD><EFBFBD>