需要微秒延迟

⚠️
嗨,...感谢您来论坛。令人兴奋的消息!我们现在正在迁至我们的新论坛平台,将提供更好的功能,并包含在主对话框网站中。所有帖子和帐户都已迁移。我们现在只接受新论坛上的流量 - 请发布任何新线程https://www.dialog-seminile.com/support.。我们将在未来几天修复错误/优化搜索和标记。
7个帖子/ 0新
最后一篇
goluguri andee ...
离线
最后一次露面:10个月2周前
加入:2019-05-20 20:58
需要微秒延迟

大家好,

我们有一个需要延迟微秒的传感器,以便能够访问它。SDK或外部是否有功能,我们可以生成1微秒延迟?

我们有很多延迟功能,但一切都以毫秒为单位。您能否为Freertos提供同样的解决方案吗?

感谢致敬,
乡间。

关键词:
设备:
PM_DIALOG.
离线
最后一次露面:21小时12分钟前
职员
加入:2018-02-08 11:03
嗨Sandeep,

嗨Sandeep,

感谢在线问题,为您的BLE解决方案感兴趣。遗憾的是,不可能设置微秒秒,因为OS定时器具有1.98毫秒〜= 2×粒度。请在freertosconfig.h中查看以下宏

#define configssystick_clock_hz 32768 #define configtick_rate_hz((ticktype_t)512)#define tick_period((configssystick_clock_hz / configtick_rate_hz))

谢谢,PM_DIALOG.

goluguri andee ...
离线
最后一次露面:10个月2周前
加入:2019-05-20 20:58
我有一个传感器

我有一个传感器,绝对需要微秒延迟。没有此,传感器界面无法正常工作。我也在其他微控制器上测试了它。你能为我提供解决这个问题吗?

感谢致敬,

乡间。

PM_DIALOG.
离线
最后一次露面:21小时12分钟前
职员
加入:2018-02-08 11:03
嗨Sandeep,

嗨Sandeep,

让我在内部检查它,我很快就会回复你。

谢谢,PM_DIALOG.

PM_DIALOG.
离线
最后一次露面:21小时12分钟前
职员
加入:2018-02-08 11:03
嗨Sandeep,

嗨Sandeep,

您可以使用位于HW_CLK.H中的HW_CLK_DELAY_USEC()。此函数获取当前的时钟源,并增加n usecond的延迟。由于您使用的是传感器,因此DA1469X应处于活动模式,因此系统将使用32MHz时钟运行。

谢谢,PM_DIALOG.

goluguri andee ...
离线
最后一次露面:10个月2周前
加入:2019-05-20 20:58
你好,

你好,

文件说明了

/ **
* \简要增加n usecs的延迟。
*
* \ param [in] usec等待的USEC数量。
*
* \返回void
*
* \警告系统时钟滴答中的最小延迟是hw_clk_delay_overhead_cycles。
*分辨率是系统时钟滴答中的HW_CLK_CYCLES_PER_DELAY_REP。
*应用AHB分频器后,计算系统时钟勾号。
* /

#define hw_clk_delay_overhead_cycles(72)
#define hw_clk_cycles_per_delay_rep(4)

你能解释一下最低延迟的计算吗?

它可以生成1个吗?

感谢致敬,

乡间。

PM_DIALOG.
离线
最后一次露面:21小时12分钟前
职员
加入:2018-02-08 11:03
嗨Sandeep,

嗨Sandeep,

使用XTAL32M时钟运行时,可以创建的最小延迟是3US。由于代码执行的开销比延迟更大,因此无法使用32MHz时钟创建1US。只有在使用PLL 96MHz时运行时,才能实现1US延迟。为此,您应该在调用HW_CLK_DELAY_USEC(1)之前将时钟课程更改为PLL。

谢谢,PM_DIALOG.