SPI salve SPI salve支持功能:
支持指令长度、帧长自定义。
工作时钟可自定义,大于SPI clk的2倍。
用户只需修改: (1)几线SPI。 (2)单帧长度。 (3)指令长度。 (4)寄存器开辟。 注意:指令最高bit表示读写,低写高读,其余bit表示地址。指令接着为数据端,两者位宽之和即为SPI单帧长。 SPI master spi master内部仅仅封装SPI驱动,写入值读出控制由上层控制,这部分逻辑很simple,不赘述。用户只需给入SPI帧及控制使能即可。 用户只需修改parameter参数: (1)单帧长; (2)指令长; (3)数据长; (4)工作时钟; (5)SPI clk。 实现不使用状态机,采用线性序列计数法。 仿真如下所示:写入四个寄存器值,再读出。 仿真代码如下: 三线SPI: 四线SPI: 可以看到读写是一致的,验证通过。