Ztask
A simple timer-based scheduler
Install / Use
/learn @tomzbj/ZtaskREADME
ztask
A very simple timer-based scheduler.
-----updated 2023.3.14------
增加了c++支持, 只需要include一个ztask.h即可.
C++版本使用方法: 定义ztask zt(4), 则最多允许4个任务. 之后zt.bind绑定你需要执行的任务, 在SysTick_Handler里调用zt.tick(). 如果有类似arduino的millis之类函数, 也可以用ztask zt(4, millis), 相应地zt.tick()就可以省掉了.
-----original----------
就ztask.h和ztask.c俩文件,五个api.
使用方法: 定义任务函数, 在进入主循环前执行zt_bind即可.
之后在主循环里调用 zt_poll(), 在systick中断里调用zt_tick(), 就行了.
如果需要控制任务启动/停止, 需要用一个变量保存zt_bind的返回值,然后执行zt_start和zt_stop.
main.c是mingw环境下的demo. Windows下没有定时器中断, 用gettimeofday简单模拟了一个.
Related Skills
node-connect
342.5kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
85.3kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
342.5kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
342.5kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
