发布于 2015-02-24 07:11:05
为什么没有任何软件SPI库?
因为它大约有10行代码,分别用于WriteByte和ReadByte函数,而且大多数代码都是特定于处理器的寄存器。高级协议依赖于连接到SPI的设备。这是关于这个问题的维基百科要说什么
SPI总线是一个事实上的标准。然而,缺乏正式标准反映在各种各样的协议选择中。不同的单词大小是很常见的。每个设备都定义了自己的协议,包括是否支持命令。有些设备是只传输的,另一些是只接收的.芯片选择有时是活动高而不是活动低。一些协议首先发送最不重要的比特。
所以建造一个图书馆是没有意义的。您只需为每个特定情况编写代码,并编写设备组合。
发布于 2015-03-17 04:03:09
尽管其他人已经回答了its just bitbanging;但我认为编写一个小层是有好处的:
虽然通常要发送数据,您所需要做的就是设置一个寄存器,但更多的情况是,初始化顺序并不复杂。
随着微控制器的功率和容量的增加以及项目规模的增加,实现平衡的设计选择以提高可伸缩性和可维护性(尤其是在商业项目中)是非常重要的。
发布于 2015-02-24 06:57:35
如果您需要微控制器,那么您可以拥有自己的SPI库。你需要用敲击技术。有可用的软件SPI库。因为每个微控制器都有不同的端口架构和寄存器,所以它们不是通用的,它们只针对该控制器。
例如,对于8051体系结构,您可以找到这。
https://stackoverflow.com/questions/28689739
复制相似问题