| 1234567891011121314151617181920212223242526272829303132 |
- #ifndef __PROCESS_CONTROL_H
- #define __PROCESS_CONTROL_H
- #include <stdint.h>
- #include "Timer_Module.h"
- struct PCTRL_Struct
- {
- uint16_t current_step;
- char current_step_msg[40];
- uint16_t next_step;
- char next_step_msg[40];
- struct TIMER_Struct timer;
- uint32_t wait_time;
- uint16_t step_wait;
- uint16_t (* goto_step_listener)(uint16_t ns);
- };
- // 直接跳转到下一步
- // 不带日志
- void PCTRL_GotoStepNoLog(struct PCTRL_Struct * pctrl, uint16_t ns);
- // 带日志
- void PCTRL_GotoStep(struct PCTRL_Struct * pctrl, uint16_t ns, char * msg);
- // 先等待再跳转到下一步
- void PCTRL_GotoStepWait(struct PCTRL_Struct * pctrl, uint16_t ns, uint32_t t, char * msg);
- // 只等待,等待之后返回原来的步骤
- void PCTRL_GotoWait(struct PCTRL_Struct * pctrl, uint32_t t);
- // 等待
- void PCTRL_Wait(struct PCTRL_Struct * pctrl);
- #endif
|