树莓派和外设SPI接口使用python

时间:2021-03-01 18:50:12

标签: python raspberry-pi spi

这是我第一个涉及并行编程的项目,如果我没有使用正确的术语,请原谅我。

我想使用 SPI 串行接口将 RaspberryPi 4 与外围板连接起来。为了完全理解串行通信,我想在不使用外部库的情况下编写 SPI 通信。 该程序的目的是将数据发送到外围设备并从中读取数据,同时“实时”绘制接收到的数据。 为了轻松管理通信,我需要运行一个线程来生成 sclk 和芯片选择信号,以及另一个线程来读取/写入数据并绘制它们。

我的问题是:考虑到我将使用 1MHz 左右的 sclk 频率,我将函数线程化而不是使它们真正并行(使用多处理)是否有问题?

我会说Rpi4的时钟频率比sclk频率高很多,所以“假”并行导致的时间延迟不是问题(考虑到所有线程都是由很少指令组成的) ),但我想知道是否还有其他因素需要考虑。谢谢!

1 个答案:

答案 0 :(得分:1)

您绝对想要单独的线程来生成时钟和数据。这是一个串行协议,所以这两件事必须是同步的。 1MHz 数字只是最大限制。时钟不必精确,也不必固定。作为主人,你完全可以控制它。一切都基于过渡。按照这个顺序,您设置输出引脚、激活时钟、读取输入引脚、取消激活时钟、冲洗和重复。一个功能,简单易如反掌。如果该过程花费的时间不到一微秒,您可能需要添加一些停顿。

相关问题