This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] drv 2605 l :3.1 出现问题................................3使用PDF格式的I2C播放延迟的3个波形

Guru**** 2350610 points
Other Parts Discussed in Thread: DRV2605, DRV2605L, TCA9548A
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/motor-drivers-group/motor-drivers/f/motor-drivers-forum/606713/drv2605l-having-trouble-with-3-1-3-play-3-waveforms-with-delay-using-i2c-in-pdf

部件号:DRV2605L
主题中讨论的其他部件:DRV2605,, TCA9548A

您好,  

我是Arduino的新手,20年前就开始编程了。

我尝试让drv2605接受延迟/暂停/计时器库。 (行之有效的方法)

***在PDF的“3.1 3”一节中,我不明白如何实现延迟。 它不是与我一起单击。

我是否使用 writeRegister8 (DRV2605_REG_WAVESEQ1,xxx)格式?  

我一直在尝试使用Adafruit的代码来控制它们,但开始使用.cpp文件

您能为我提供一个示例代码吗?

我正在使用多个drv,我想说...两个始终打开,三个一直延迟打开/关闭。

我正在尝试执行3到10秒的延迟,这是可能的吗?

我的代码中有所有的东西都在工作,除了这个。

我还在想,我当时正在和下面的波浪队一起玩耍

drv5.writeRegister8 (DRV2605_REG_WAVESEQ1,1123);//效果  
drv5.writeRegister8 (DRV2605_REG_WAVESEQ2,27667);//wave

我开始注意 到,波形表2中1-9的值 (xxxx值)也会影响 模式的类型。 这会改变位波形,但它会提醒我仅具有4个输入值的立体声均衡器。

如果大家能帮我解决问题,我已经在多个论坛上发布过,但没有结果,那就更好了。

非常感谢,

Jim

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好,Jim:

    感谢您在E2E论坛上发布信息。 希望我们能在这里为您提供一些答案!
    提到第3.1 .3节时,您指的是什么文档? 我尝试在数据表中查找,但找不到此参考。 我感觉这是一个Arduino/Adafruit文档,这意味着它实际上不受TI的支持。
    您不能在Arduino中使用延迟功能吗? 我相信这是延迟()。
    如果您要控制多个设备,您是否有I2C mux? 或者您是否将相同的命令写入所有DRV2605L设备?

    以上"drv5.writeRegister8 (DRV2605_REG_WAVESEQ2,27667);//wave"不是有效的写入。 波形序列发生器寄存器是一个8位寄存器,因此最大值为255 (十进制)。
    我们的设备能够连续播放波形序列发生器中的波形。 首先,库中只有123个波形,因此波形的最大写入值是十进制的123。 当您翻转MSB (从128位十进制开始)时,波形现在的延迟为10ms*WAV_FRM_SEQ[6:0],这是后7位数据。
    示例:129D (0x81)= 10ms的延迟。 255d (0xff)= 1270ms的延迟。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    感谢Kelly的回复。下面是安装指南的链接 。www.ti.com/.../sloa189.pdf

    使用延迟功能的问题是将其他所有内容置于保持状态。 实际上,它改变了延迟的波形和bc。 我认为每一个都开始出现延迟,改变了波形。

    我在这里使用的是TCA9548A I2C多路复用器链接。 www.adafruit.com/.../2717。

    我确实有123个波形的波形库表。

    关于drv5.writeRegister8 (DRV2605_REG_WAVESEQ2,27667);我认为这不是使用该函数的正确方式,但它改变了波形反应的比例。 这是我能描述的最好的。 例如,7447给出两个较高的峰值(外部数字),而内部的两个峰值强度较低... 就像我说的那样,它让我想起了立体声上的均衡器。 我可以进行8765 (向下滑动)或2288 (低,低,高)或4位数的组合。 5位数不会执行任何操作。

    对于MSB手写,我基本上理解您想说的话。 因此255或1270ms是最大延迟。 我无法将这些值组合起来以获得较高的延迟时间,对吗? 即255个延迟,共3个(0xff,0xff,0xff)

    关于3.1 3,我提到了... 当您看到该部分时,我将如何编写该命令字符串? 如果您不熟悉Arduino格式,C++格式将会起作用,它们非常相似。

    如果我无法从3.1 获得更长的延迟时间.................3,那么我如何使用章节GPIO 3.1。2中的GPIO?

    代码将是很好的参考。

    感谢您的反馈

    此致,
    Jim
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    嘿,凯利,我想补充… 是否有一个更简单的函数列表及其功能,或者它们的功能的任何代码行示例? 有时很难理解数据表。大多数情况下


    我想看看你在世界的哪个地方 看到你去了诺克斯的学校。 我在约翰逊城从你向东大约一个半小时。小世界!!!