⚠️
大家好. .感谢来到论坛。令人兴奋的消息!我们现在正在转移到新的论坛平台的过程中,它将提供更好的功能,并包含在主对话网站。所有的帖子和账号已经迁移。我们现在只接受新论坛的流量-请发布任何新的帖子在//www.wsdof.com/support.我们会在接下来的几天修复bug /优化搜索和标记。
7个职位/ 0个新职位
最后发表
Goluguri Sandee……
离线
最后看到:1年2个星期前
加入:2019-05-20 20:58
所需微秒延迟

你好,

我们有一个传感器需要微秒的延迟才能访问它。在SDK或外部是否有一个函数,我们可以产生1微秒的延迟?

我们有很多延迟函数,但都是以毫秒为单位的。你能提供一个freertos的解决方案吗

感谢和问候,
Sandeep。

关键词:
设备:
PM_Dialog
离线
最后看到:2天2小时前
工作人员
加入:2018-02-08 11:03
嗨Sandeep,

嗨Sandeep,

感谢您的在线问题,以及您对我们的BLE解决方案感兴趣。不幸的是,设置微秒延迟是不可能的,因为OS计时器的粒度为1.98msec ~= 2msec。请检查FreeRTOSConfig.h中的以下宏

#define configSYSTICK_CLOCK_HZ 32768 #define configTICK_RATE_HZ ((TickType_t) 512) #define TICK_PERIOD ((configSYSTICK_CLOCK_HZ / configTICK_RATE_HZ))

谢谢,PM_Dialog

Goluguri Sandee……
离线
最后看到:1年2个星期前
加入:2019-05-20 20:58
我有一个传感器

我的传感器肯定需要微秒的延时。否则,传感器接口将无法工作。我也在其他微控制器上测试过。你能给我提供一个解决这个问题的方案吗?

感谢和问候,

Sandeep。

PM_Dialog
离线
最后看到:2天2小时前
工作人员
加入:2018-02-08 11:03
嗨Sandeep,

嗨Sandeep,

让我先内部检查一下,稍后给你答复。

谢谢,PM_Dialog

PM_Dialog
离线
最后看到:2天2小时前
工作人员
加入:2018-02-08 11:03
嗨Sandeep,

嗨Sandeep,

您可以使用hw_clk_delay_usec(),它位于hw_clk.h。此功能获取当前时钟源,并增加N usseconds的延迟。由于您正在使用一个传感器,DA1469x应该处于活动模式,以便系统将运行在32MHz时钟。

谢谢,PM_Dialog

Goluguri Sandee……
离线
最后看到:1年2个星期前
加入:2019-05-20 20:58
你好,

你好,

文档声明

/**
* \brief增加N个usecs的延迟。

* \param[in] usec要等待的usecs的数量。

* \返回空

* \warning系统时钟的最小延迟是HW_CLK_DELAY_OVERHEAD_CYCLES。
*在系统时钟周期中,分辨率为HW_CLK_CYCLES_PER_DELAY_REP。
*应用AHB除法器后计算系统时钟滴答。
*/

#定义HW_CLK_DELAY_OVERHEAD_CYCLES (72)
#定义HW_CLK_CYCLES_PER_DELAY_REP (4)

你能解释一下最小延迟的计算方法吗?

它能产生我们吗??

感谢和问候,

Sandeep。

PM_Dialog
离线
最后看到:2天2小时前
工作人员
加入:2018-02-08 11:03
嗨Sandeep,

嗨Sandeep,

当运行XTAL32M时钟时,可以创建的最小延迟是3us。在32MHz时钟下创建1us是不可能的,因为代码执行的开销大于延迟。1uS延迟只有在使用96MHz锁相环时才能实现。要做到这一点,您应该在调用hw_clk_delay_usec(1)之前更改时钟路线到PLL。

谢谢,PM_Dialog