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.

[参考译文] PCA9536:在标准模式下、P0 ~ P3的更新速率为100kHz

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

https://e2e.ti.com/support/interface-group/interface/f/interface-forum/923175/pca9536-update-rate-for-p0-p3-at-100-khz-in-the-standard-mode

器件型号:PCA9536

您好!

如果在标准模式下以100kHz 的频率使用 PCA9536并将0和1交替写入极性反转寄存器、您能否告诉我 P0 ~ P3的更新速率?
仅使用 P0时的最大更新速率是多少?

此致、
加藤

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

    您好 Kato-San、

    我们将在本周晚些时候再次与您进行讨论。 感谢您的耐心等待。

    此致、

    最大

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

    尊敬的 Max-San:

    感谢您的回答。

    我期待本周能收到您的详细信息。

    此致、
    加藤

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

    您好 Kato-San、

    我要说的所有内容都可以在 本数据表 的第7.3节(第13页)中找到。

    为了计算更新 P0~P3所需的时间、我们必须首先计算向主器件或从器件发送一个数据字节所需的时间。 从机发送或接收的每个位采用1个时钟脉冲、该脉冲为10us。 对于从器件发送或接收的每个字节、还必须有一个来自从器件或主器件的确认位。 这将采用另一个时钟脉冲、因此对于数据的每个字节、它需要9个时钟脉冲或90us。

    为了对 P0进行编程、需要发送3个字节。 首先、主器件将一次发送一位从器件的地址字节(MSB 位优先)。 地址字节的7位用于寻址从器件、最后一位是 R/W 方向位。 该位置的1b 表示读取、而该位置的0b 表示写入。

    接下来、主设备将发送一个命令字节、该字节指定主设备要与哪个寄存器通信。 例如、如果您想访问极性反转寄存器、则会发送一个02h 的字节。 如果您想更改端口引脚 P0~P3的输出值、您将访问输出端口寄存器01h。

    最后、您可以发送要写入寄存器的数据字节。 可以使用输出端口寄存器同时配置端口引脚、因此在配置一个端口引脚或所有四个端口引脚之间没有时间差异。 在同一逻辑中、极性反转寄存器也只需一个数据字节即可完全更改。

    当全部完成后、需要3个字节才能成功对 PCA9536的任何寄存器进行编程、相当于270us。 最后、起始位至少需要一个时钟脉冲、而停止位则需要另一个时钟脉冲。 这使我们的最终时间大约为290us。 如果您要持续更改寄存器的值、则理论上可以将这些值更改到3.4Khz 左右、该值显然会根据您在编程寄存器之间花费的时间而变化。

    我希望这对您有所帮助、如果您有任何疑问、请告诉我。

    最棒的

    Chris

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

    尊敬的克里斯-圣:

    感谢您的详细解释。

    您能否确认、以防万一、但我的理解是否正确、即 P0 ~ P3的最大输出频率通过公式"1/290us/2"约为1.72kHz、因为 PCA9536需要290us 以100kHz 的频率写入和更新每个寄存器?

    此致、
    加藤

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

    大家好、Kato-San、

    首次将器件设置为配置寄存器中的输出、然后设置输出寄存器时、需要3个字节。 之后、只需两个字节即可写入器件的输出端口并翻转这些位。

    -Bobby

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

    您好、Bobbi-San、

    感谢您的回答。

    我知道、首次使用配置寄存器(寄存器3)将 P0 ~ P3启用为输出需要3个字节。
    但是、请告诉我、为什么在写入后只需两个字节即可翻转位。

    此致、
    加藤

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

    您好、Kato、

    很抱歉、我讲错了(我因为某种原因想到的是一个寄存器器件、而不是这个器件)。 三个字节是正确的。 地址+寄存器+数据是翻转位所需发送的三个字节。

    第一个事务将需要地址+配置寄存器设置+数据、然后以下事务将是地址+输出寄存器+数据(0x00h)、接下来的事务将是地址+输出寄存器+数据(0xFFh)、然后返回到地址+输出寄存器+数据(0x00h)并重复。

    -Bobby

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

    您好、Bobbi-San、

    感谢您的解释。

    如果我收到客户的其他问题、我理解并将与您联系。

    此致、
    加藤