我的项目目标是设计一个“心率模块”使用zed板和ppg传感器。
我将使用Pmod作为ADC,将模拟信号从ppg传感器转换为数字信号,以便zedboard能够处理它。
现在有个问题。
我的模块收到一个12位信号作为输入,
但是我发现Pmod提供了串行外围协议的数字输出。
该模块的输入范围为12位,但pmod的输出(将模块连接为模块输入)仅为1位范围。
我认为他们的比特范围不同,这不应该
我该如何解决这个问题?
发布于 2022-02-16 20:21:59
假设我正确理解了您的问题,您需要设计一个Deserialiser模块。最常见的方法是创建一个移位寄存器。

移位寄存器通过一次移动1位的串行数据来操作。当足够多的位被移动(由您的应用程序确定)时,您可以在并行移位中将寄存器的内容移出。现在有了并行数据。
但是等等,这对你来说可能没那么容易。您提到您正在使用的设备通过SPI总线进行通信。除非您有一个SPI模块,它可以帮助您输出串行数据(并告诉您的寄存器何时移位),否则您还需要设计一些符合SPI的逻辑。不要忘记注意SPI端口的定时要求。
https://stackoverflow.com/questions/71059219
复制相似问题