raspberry pi 3 b 时钟问题使用 .tv_usec
raspberry pi 3 b clock problems using .tv_usec
代码在 .tv_usec 替换为 .tv_sec
时工作正常
需要更精确的秒数,至少到小数点
措辞如果这可能是 pis 时钟的问题
最终用于计算 bpm 但目前用于计算点击间隔时间的代码
gboolean tapTemp(GtkButton *button, gpointer user_data)
{
//errorMsg = bmp;
if(tapdown)
{
tapdown = false;
clock_gettime(CLOCK_REALTIME, &beetTime);
time_difference = beetTime.tv_nsec;// - start_time;
bpm = time_difference - start_time; //time_difference;
errorMsg = bpm;
}
else
{
tapdown = true;
clock_gettime(CLOCK_REALTIME, &beetTime);
start_time = beetTime.tv_nsec;
errorMsg2 = start_time;
}
}
tv_nsec 将每秒返回零 - 使持续递增的时间与 tv_sec 相结合,例如thistime = beetTime.tv_secs+0.001*(beetTime.tv_nsec/1000000) 以获得最接近的毫秒数。
代码在 .tv_usec 替换为 .tv_sec
时工作正常需要更精确的秒数,至少到小数点
措辞如果这可能是 pis 时钟的问题
最终用于计算 bpm 但目前用于计算点击间隔时间的代码
gboolean tapTemp(GtkButton *button, gpointer user_data)
{
//errorMsg = bmp;
if(tapdown)
{
tapdown = false;
clock_gettime(CLOCK_REALTIME, &beetTime);
time_difference = beetTime.tv_nsec;// - start_time;
bpm = time_difference - start_time; //time_difference;
errorMsg = bpm;
}
else
{
tapdown = true;
clock_gettime(CLOCK_REALTIME, &beetTime);
start_time = beetTime.tv_nsec;
errorMsg2 = start_time;
}
}
tv_nsec 将每秒返回零 - 使持续递增的时间与 tv_sec 相结合,例如thistime = beetTime.tv_secs+0.001*(beetTime.tv_nsec/1000000) 以获得最接近的毫秒数。