3s喂狗
This commit is contained in:
parent
6e21243b34
commit
1de684d1f7
|
@ -197,61 +197,22 @@ int main(void)
|
|||
|
||||
BSP_BlockSleep();
|
||||
BSP_RequestBoost();
|
||||
DelayMs(10);
|
||||
DelayMs(100);
|
||||
|
||||
ShowLed();
|
||||
BEEP_ON;
|
||||
|
||||
DelayMs(500 * 1);
|
||||
|
||||
// BSP_BAT_Init();
|
||||
|
||||
// tmos_set_event(Peripheral_TaskID, SBP_REPLY_CMD_EVT);
|
||||
#if 0
|
||||
// GPIOA_ModeCfg(GPIO_Pin_2, GPIO_ModeIN_Floating);
|
||||
|
||||
// TMR3功能引脚映射选择位:
|
||||
// 1:TMR3_/PWM3_/CAP3_映射到PA[2];
|
||||
R16_PIN_ALTERNATE |= (1 << 3);
|
||||
logDebug("TMR3_CapInit 0");
|
||||
|
||||
TMR3_CapInit(FallEdge_To_FallEdge);
|
||||
// (1 / 62.4MHz) * 2的26次方 = 0.01602564102564102564102564102564 us * 67108864 约等于 1.0754625641025641025641025641025 S
|
||||
// TMR3_CAPTimeoutCfg(FREQ_SYS ); // 设置捕捉超时时间
|
||||
TMR3_CAPTimeoutCfg(GetSysClock() / 100); // 设置捕捉超时时间 10ms
|
||||
|
||||
// TMR3_CAPTimeoutCfg(0x3FFFFFF); // 设置捕捉超时时间
|
||||
TMR3_DMACfg(ENABLE, (uint16_t)(uint32_t)&CapBuf[0], (uint16_t)(uint32_t)&CapBuf[20], Mode_Single);
|
||||
TMR3_ITCfg(ENABLE, TMR0_3_IT_DMA_END); // 开启DMA完成中断
|
||||
PFIC_EnableIRQ(TMR3_IRQn);
|
||||
|
||||
logDebug("TMR3_CapInit");
|
||||
while(capFlag == 0);
|
||||
capFlag = 0;
|
||||
for(uint8_t i = 0; i < 20; i++)
|
||||
{
|
||||
logDebug("%08ld ", CapBuf[i] & 0x1ffffff); // 26bit, 最高位表示 高电平还是低电平
|
||||
uint16_t t = ((CapBuf[i] & 0x1ffffff) * 1.0f) / FREQ_SYS * 1000000;
|
||||
uint16_t f = 1000000 / t;
|
||||
logDebug("T = %04d us, f = %04d Hz", t, f);
|
||||
BSP_UART1_TxLoop();
|
||||
}
|
||||
|
||||
// DelayMs(1000 * 30);
|
||||
|
||||
#endif
|
||||
DelayMs(500);
|
||||
|
||||
LED_ALL_OFF_DEINIT;
|
||||
BEEP_OFF_DEINIT;
|
||||
|
||||
BSP_NoNeedBoost();
|
||||
BSP_RequestSleep();
|
||||
|
||||
IWDG_Init(IWDG_TIMEOUT_MS);
|
||||
|
||||
logDebug("123");
|
||||
logDebug("BSP_Get_Tick1 %d", BSP_Get_Tick());
|
||||
DelayMs(1000);
|
||||
logDebug("456");
|
||||
logDebug("BSP_Get_Tick2 %d", BSP_Get_Tick());
|
||||
|
||||
// 在连接间隔和广播间隔到来时,会进入回调中喂狗
|
||||
// LL_AdvertiseEventRegister(BLE_AdvertiseEventCB);
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
* @Author : stark1898y 1658608470@qq.com
|
||||
* @Date : 2024-12-15 16:13:37
|
||||
* @LastEditors : stark1898y 1658608470@qq.com
|
||||
* @LastEditTime : 2025-05-16 17:31:12
|
||||
* @LastEditTime : 2025-05-21 13:36:03
|
||||
* @FilePath : \BLE_TYQ_CH584M\BSP\inc\bsp_iwdg.h
|
||||
* @Description :
|
||||
*
|
||||
|
@ -22,7 +22,7 @@
|
|||
#define RB_IWDG_EN 0x80000000 // RO, watch-dog enable
|
||||
|
||||
#define IWDG_TIMEOUT_MS (10000)
|
||||
#define IWDG_FEED_MS (1000)
|
||||
#define IWDG_FEED_MS (3000)
|
||||
|
||||
#define IWIG_FEED_EVENT (0x01 << 0)
|
||||
|
||||
|
|
|
@ -36,9 +36,9 @@ extern tmosTaskID vavle_task_id;
|
|||
|
||||
|
||||
|
||||
#define VALVE_LOW_VBAT_ALARM_PERIOD_MS (1600 * 60 * 10)
|
||||
#define VALVE_LOW_VBAT_ALARM_PERIOD_MS (1000 * 60 * 10)
|
||||
|
||||
#define VALVE_DECT_PERIOD_MS (1600 * 60 * 10)
|
||||
#define VALVE_DECT_PERIOD_MS (1000 * 60 * 10)
|
||||
|
||||
|
||||
#define CHARGE_TIME_MS (1500)
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
* @Author : stark1898y 1658608470@qq.com
|
||||
* @Date : 2024-12-15 16:13:41
|
||||
* @LastEditors : stark1898y 1658608470@qq.com
|
||||
* @LastEditTime : 2025-05-16 18:35:06
|
||||
* @LastEditTime : 2025-05-21 13:11:02
|
||||
* @FilePath : \BLE_TYQ_CH584M\BSP\src\bsp_iwdg.c
|
||||
* @Description :
|
||||
*
|
||||
|
@ -34,11 +34,11 @@ uint16_t IWDG_ProcessEvent(uint8_t task_id, uint16_t events)
|
|||
// seconds = CH5XX_GetTimeStamp(&tick_1sec);
|
||||
// logDebug("seconds = %d.%d", seconds, tick_1sec * 1000 / 32768);
|
||||
FEED_IWDG();
|
||||
logDebug("IWDG feed");
|
||||
// logDebug("IWDG feed");
|
||||
// 获取tmos系统堆的剩余内存大小
|
||||
// uint8_t* a = tmos_msg_allocate(1);
|
||||
logDebug("tmos_memory_getlen = %d" , tmos_memory_getlen());
|
||||
tmos_start_task(task_id, IWIG_FEED_EVENT, MS1_TO_SYSTEM_TIME(IWDG_FEED_MS));
|
||||
// tmos_start_task(task_id, IWIG_FEED_EVENT, MS1_TO_SYSTEM_TIME(IWDG_FEED_MS));
|
||||
return (events ^ IWIG_FEED_EVENT);
|
||||
}
|
||||
return 0;
|
||||
|
@ -80,7 +80,7 @@ void IWDG_Init(uint16_t ms)
|
|||
|
||||
IWDGTaskId = TMOS_ProcessEventRegister(IWDG_ProcessEvent);
|
||||
// tmos_set_event(IWDGTaskId, IWIG_FEED_EVENT);
|
||||
tmos_start_task(IWDGTaskId, IWIG_FEED_EVENT, MS1_TO_SYSTEM_TIME(IWDG_FEED_MS));
|
||||
tmos_start_reload_task(IWDGTaskId, IWIG_FEED_EVENT, MS1_TO_SYSTEM_TIME(IWDG_FEED_MS));
|
||||
}
|
||||
|
||||
// #define RB_RESET_FLAG 0x07 // RO: recent reset flag
|
||||
|
|
|
@ -702,3 +702,37 @@ void TMR3_IRQHandler(void) // TMR3 定时中断
|
|||
cap_flag = 1;
|
||||
}
|
||||
}
|
||||
|
||||
#if 0
|
||||
// GPIOA_ModeCfg(GPIO_Pin_2, GPIO_ModeIN_Floating);
|
||||
|
||||
// TMR3功能引脚映射选择位:
|
||||
// 1:TMR3_/PWM3_/CAP3_映射到PA[2];
|
||||
R16_PIN_ALTERNATE |= (1 << 3);
|
||||
logDebug("TMR3_CapInit 0");
|
||||
|
||||
TMR3_CapInit(FallEdge_To_FallEdge);
|
||||
// (1 / 62.4MHz) * 2的26次方 = 0.01602564102564102564102564102564 us * 67108864 约等于 1.0754625641025641025641025641025 S
|
||||
// TMR3_CAPTimeoutCfg(FREQ_SYS ); // 设置捕捉超时时间
|
||||
TMR3_CAPTimeoutCfg(GetSysClock() / 100); // 设置捕捉超时时间 10ms
|
||||
|
||||
// TMR3_CAPTimeoutCfg(0x3FFFFFF); // 设置捕捉超时时间
|
||||
TMR3_DMACfg(ENABLE, (uint16_t)(uint32_t)&CapBuf[0], (uint16_t)(uint32_t)&CapBuf[20], Mode_Single);
|
||||
TMR3_ITCfg(ENABLE, TMR0_3_IT_DMA_END); // 开启DMA完成中断
|
||||
PFIC_EnableIRQ(TMR3_IRQn);
|
||||
|
||||
logDebug("TMR3_CapInit");
|
||||
while(capFlag == 0);
|
||||
capFlag = 0;
|
||||
for(uint8_t i = 0; i < 20; i++)
|
||||
{
|
||||
logDebug("%08ld ", CapBuf[i] & 0x1ffffff); // 26bit, 最高位表示 高电平还是低电平
|
||||
uint16_t t = ((CapBuf[i] & 0x1ffffff) * 1.0f) / FREQ_SYS * 1000000;
|
||||
uint16_t f = 1000000 / t;
|
||||
logDebug("T = %04d us, f = %04d Hz", t, f);
|
||||
BSP_UART1_TxLoop();
|
||||
}
|
||||
|
||||
// DelayMs(1000 * 30);
|
||||
|
||||
#endif
|
||||
|
|
|
@ -3,7 +3,7 @@ ENTRY( _start )
|
|||
MEMORY
|
||||
{
|
||||
FLASH (rx) : ORIGIN = 0x00000000, LENGTH = 448K
|
||||
RAM (xrw) : ORIGIN = 0x20000000, LENGTH = 128K
|
||||
RAM (xrw) : ORIGIN = 0x20000000, LENGTH = 96K
|
||||
}
|
||||
|
||||
SECTIONS
|
||||
|
|
Loading…
Reference in New Issue