//实际精度只能到1ms
void CWM_OS_uSleep(uint32_t time)
{
- uint32_t ms = time / 1000;
- if (ms == 0) ms = 1;
- osDelay(ms);
+
+ HalDelayUs(time);
+ // uint32_t ms = time / 1000;
+ // if (ms == 0) ms = 1;
+ // osDelay(ms);
}
uint64_t CWM_OS_GetTimeNs(void)
scl.iData[0] = 1;
scl.iData[3] = 2;
scl.iData[4] = 2;
- scl.iData[8] = 52; // for st sensor(52Hz)
+ scl.iData[7] = 5;
+ scl.iData[8] = 25; // for st sensor(52Hz)
CWM_SettingControl(SCL_DML_DRV_AG_CONFIG, &scl);
//CWM_OS_dbgPrintf("[DBG] %s %d\n", __func__,__LINE__);
CWM_OS_dbgPrintf("[test_uSleep_3] test 10 seconds start\r\n");
for (j = 0; j < 10; j ++) {
- // CWM_OS_dbgPrintf("j=%d",j);
+ CWM_OS_dbgPrintf("j=%d\n",j);
for (i = 0; i < 1000; i ++) {
- // if (i%10 == 0) CWM_OS_dbgPrintf("i=%d",i);
+ if (i%10 == 0) CWM_OS_dbgPrintf("i=%d\n",i);
for (k = 0; k < 1000; k ++) {
- // if (k%100 == 0) CWM_OS_dbgPrintf("k=%d",k);
+ // if (k%100 == 0) CWM_OS_dbgPrintf("k=%d\n",k);
CWM_OS_uSleep(1);
}
}
test_stack();
test_GetTimeNs_3(); // 20 minutes
- // test_uSleep_3(); // 10 seconds, accurate to 1us
+ test_uSleep_3(); // 10 seconds, accurate to 1us
return ERRCODE_SUCC;
}