gpt4 book ai didi

c - 嗡嗡声(振动)在点钟时间?

转载 作者:太空宇宙 更新时间:2023-11-04 08:21:55 27 4
gpt4 key购买 nike

非常基本的问题,几个小时以来我一直试图自己弄清楚,但无法解决。

所以我正在为 Pebble 创建我的第一个表盘,我希望 watch 每小时发出嗡嗡声(振动)。您还记得一些数字 watch 会在点钟时间发出“哔”声吗?好吧,就像那样。

我认为最简单的方法是:

if (tick_time->tm_min == 0) {
vibes_short_pulse();
}

效果很好。现在我有一个小错误。在那一分钟内,如果重新创建窗口(例如,如果您转到时间线或打开一个 watchapp 并快速返回到我的 watchface),update_time() 将再次调用,因此它会再次发出蜂鸣声。不是一个大错误,但有点烦人。

我尝试使用 bool 标志来解决问题。

static bool vibed = false;

然后,

if (tick_time->tm_min != 0) {
vibed = false;
}

if (tick_time->tm_min == 0 && vibed == false) {
vibes_short_pulse();
vibed = true;
}

但显然,每次重新创建窗口时,无论如何都会将标志恢复为“false”。

不知道怎么解决。如果您对我有提示,将不胜感激。谢谢!

最佳答案

不是检查分钟是否为零,而是检查小时更改事件,例如:

void tick_handler(struct tm *tick_time, TimeUnits units_changed)
{

// Some other code that display/process time

// on hour change do a short buzz
if (units_changed & HOUR_UNIT) {
vibes_short_pulse();
}


}

关于c - 嗡嗡声(振动)在点钟时间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33060116/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com