我在我的产品中使用分离 GPT 计时器。 启动时、配置如下:
TimerConfigure(GPT2_BASE, TIMER_CFG_A_CAP_TIME | TIMER_CFG_B_CAP_TIME | TIMER_CFG_SPLIT_PAIR);
TimerEventControl(GPT2_BASE, TIMER_BOTH, TIMER_EVENT_BOTH_EDGES);
TimerPrescaleSet(GPT2_BASE, TIMER_BOTH, 0xFF);
TimerLoadSet(GPT2_BASE, TIMER_BOTH, 0xFFFF);
IOCPortConfigureSet(CHANNEL_DIO_C0, IOC_PORT_MCU_PORT_EVENT4, IOC_STD_INPUT);
EventRegister(EVENT_O_GPT2ACAPTSEL, EVENT_GPT2ACAPTSEL_EV_PORT_EVENT4);
IOCPortConfigureSet(CHANNEL_DIO_C1, IOC_PORT_MCU_PORT_EVENT5, IOC_STD_INPUT);
EventRegister(EVENT_O_GPT2BCAPTSEL, EVENT_GPT2BCAPTSEL_EV_PORT_EVENT5);
TimerIntEnable(GPT2_BASE, TIMER_CAPA_EVENT | TIMER_CAPB_EVENT);
TimerEnable(GPT2_BASE, TIMER_BOTH);
在我的应用中的某个点、我需要重新配置 TIMER_A 以停止捕获、而是以比较模式运行。
在 x ms 超时后、它应该将引脚拉高 x ms。
如何 使用计时器 API 在运行时重新配置计时器?