2016-03-25 68 views
0

我真的想在我的NodeMCU上使用SPI模块。 SPI保持我的代码清洁并释放一些GPIO引脚。我感觉它发送的数据太快,我的74HC595跟不上。它工作了一下,然后停了下来。NodeMCU SPI模块太快

看起来线路上有很多噪音,所以我连接了逻辑分析仪,发现当我发送数据时,位在几乎6纳秒的时间内跨越线路飞行(这非常棒)。我驾驶的是595,最终是步行者,需要速度较慢的数据。我曾尝试在设置调用中使用时钟参数,我感觉它永远不会减慢SPI时钟。

有什么办法可以将时钟速度设置为更适合595 +步进器的东西吗?

+0

你正在运行什么版本的NodeMcu?如果你还没有尝试过开发分支构建,你可能会想要这样做。 http://nodemcu-build.com –

+0

我一直在使用开发分支,并从我自己的固件:http://nodemcu-build.com –

+0

只是想我会检查,因为我没有看到任何地方这个问题。 –

回答

0

就在NodeMCU(从NodeMCU Build website得到它)的最新Dev分支看着the docs你可以设置SPI与分压器来降低SPI传输的数据率(较高的股利,低比特率):

spi.setup(id, mode, cpol, cpha, databits, clock_div[, duplex_mode])

参数包括:

clock_div - SPI时钟分频器中,f(SPI)= F(CPU)/ clock_div

+0

感谢您的信息。尽可能地尝试,无论我在clock_div中放置什么,这个东西仍然会疯狂地运行。 –