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.

[参考译文] DAC8742H:与 Micropython 的 SPI 接口

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

https://e2e.ti.com/support/data-converters-group/data-converters/f/data-converters-forum/864796/dac8742h-spi-interface-with-micropython

器件型号:DAC8742H

我尝试使用 SPI 接口将 DAC8742 HART IC 与 esp32开发板上的 Micropython 连接起来。 我使用 DAC8742H 评估模块的原理图制作了 IC 的基本电路。

以下是我的 SPI 设置:

>> SPI
SPI (id=1、波特率=10000000、极性=0、相位=1、位=8、 firstbit=0、sck=18、mosi=23、miso=19)

IC 引脚设置:

2:- 通过1M 欧姆电阻上拉至5V,最终电压- 2.3V
3:- 常闭
4:-  通过1M 欧姆电阻上拉至5V、最终电压- 2.3V
5:-  接地
6:- 通过1M 欧姆电阻上拉至5V、最终电压- 0.9V +- 0.1V
7:-  支持32板的 IO32
9:-  通过1M 欧姆电阻上拉至5V、最终电压-.85V
10:-通过1M 欧姆电阻上拉至5V、并连接到作为 CS 的 INP32的 IO4
11:-通过1M 欧姆电阻上拉至5V、并连接到作为 CLK 的 INP32的 IO18
12:-通过1M 欧姆电阻上拉至5V、并作为 MOSI 连接到 INP32的 IO23
13:-使用1M 欧姆电阻器上拉至5V、并作为 MISO 连接至支持32的 IO19
14、23:-支持32板的 VCC,+5V
15、29、26:-支持32板的 GND
30、31:-通过1M 欧姆电阻上拉至5V、最终电压- 2.3V

我将 其余引脚保持开路、因为目前我只想与 IC 连接并读取其注册表数据、然后作为下一步、我将使剩余引脚的电路连接到信号源。

要读取注册表,我使用了以下命令;

>>> A=bytearray ([0x02、0x00、0x00])   #发送此缓冲区
>>> b=bytearray ([0x00、0x00、0x00])   #接收此缓冲区中的数据
>> SPI.write_readinto (a、b)

>>> b.
bytearray (b'\xff\xff\xff')           #这是我收到的内容。

无论我发送什么、接收到的字节都是相同的。 我在 CS 引脚为高电平、低电平且未连接的情况下对其进行了测试、结果相同。
请帮助我们了解该问题。

参考:
Micropython SPI 文档: docs.micropython.org/.../machine.SPI.html
DAC8742H 评估模块原理图: http://www.ti.com/lit/ug/slau700a/slau700a.pdf ,第17页

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

    您好、Nitish、

    我认为您没有使用有效配置为您的设备接线。  1MΩ Ω 电阻器通常不能实现良好的上拉、因为引脚上的任何电流负载都会导致较大的压降、如您所见。  我没有查看您列出的每个引脚的配置、但我看到的最大问题是 RST 引脚。  您在该引脚上看到的电压为0.9V 至0.9V。  RST 引脚为低电平有效、这意味着它将保持在复位状态、直到引脚为高电平。  0.9V 对于该引脚太低。  我建议您使用更合理的电阻器值、以确保 IO 引脚上的电压正常。  1kΩ 正常。

    这也可能使引脚2、4、9、30、31也无效。

    谢谢、

    Paul

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

    尊敬的 Paul、Thanx:快速回复、

    我用电路中的1k 欧姆值替换了电阻器、所有上拉引脚上都有4.5V 电压、包括引脚6 (RST)、但输出仍然相同。

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

    您好、Nitish、

    您能否记录与示波器或数字分析仪的 SPI 通信并共享图像? 您还能发布您的原理图吗?

    谢谢、

    Paul

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

    是否有更新?

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

    Paul、您好、很抱歉耽误您的时间、

    事实证明、我所使用的 IC 被拆除、我为第二个 IC 进行了分接 、电路运行良好。

    尽管我必须更改 SPI 设置、但我做的不对:

     -波特率为1,000,000,而不是10,000,000
    -相位= 1、极性= 0
    (参考:-第20页、数据表主题7.4.5.2)

    我在旧 IC 上也使用了这些设置、但我没有获得任何输出、但在新 IC 上工作正常、这就是我得出结论认为旧 IC 已损坏的原因。
    现在我正在研究注册表。

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

    听起来不错。  如果您有任何疑问、请告诉我。

    谢谢、

    Paul