gpt4 book ai didi

c - SPI EP93xx(带 Linux 的 TS7200 板)

转载 作者:行者123 更新时间:2023-11-30 20:35:02 24 4
gpt4 key购买 nike

我使用的是 Embedded Arm 的 7200 板。该板搭载 Linux 内核 2.6 并安装 EP9302 arm9。我们需要使用 SPI 接口(interface)来与加速度计 (LIS3DSH) 和一些 PT100 (MAX31865) 进行通信。

我们解决这个问题的方法实际上是基于对 EP9302 寄存器进行位操作,就像嵌入式 Arm 提供的示例(文件 tempSensor.C,位于 ftp://ftp.embeddedarm.com/ts-arm-sbc/ts-7200-linux/samples/ )。请注意,这种情况下的传感器“嵌入”在板本身中。最后我们用 C 语言编程。

不幸的是,我们所有的尝试都失败了。那么问题来了:你知道如何在EP93xx上使用SPI吗?有代码或例子吗?

最佳答案

好的,谢谢大家的建议和提示。我解决了我的问题。由于我没有使用驱动程序,但我直接在微寄存器中对位进行位敲击,所以产生了附带影响:-每次我在 SPI 写入寄存器中写入内容时,数据都会写入 MOSI 中,并且 MISO 上的数据会传输到 FIFO 缓冲区中。从设备是否回复并不重要!这就是问题所在

解决方案:每次在 SPI“输出”寄存器中写入内容时。始终读取 FIFO“输入”寄存器。总是!

例如,当我配置从寄存器时,我没有读取输入 FIFO(设备没有回复,但您应该始终读取(清理)FIFO!)。

我使用示波器注意到了这个问题。感谢帮助。我在问题中提供的示例是有效的,因为在“写入”之后总是有“读取”!

关于c - SPI EP93xx(带 Linux 的 TS7200 板),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40651146/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com