FPGA平台: Nexys Video 200t
IDE: Nuclei Studio 2021.2
SDK: hBirdv2
根据doc 里面给出的 GPIO引脚(及其复用表)
GPIOA[11:8] 对应 SPI1的 SCK CS MOSI MISO
GPIOB[11:8] 对应 SPI2的 SCK CS MOSI MISO
但是使用中 发现 GPIO8 GPIO9 亦即普通的 IO拉高拉低操作都无法实现 ,但是MOSI 引脚有输出
SPI代码参考 ddr200t的LCD代码,并在hello world模板中调用
以下为 DDR200t 给出例程代码
实际操作中 读取 SPI的STATUS寄存器 返回值为 0x10
以下为 我移植的代码
以及发送函数
从串口来观察
副 STATUS函数的定义
Vivado 引脚分配
逻辑分析仪 SPI2波形(CS拉低 SCK MISO拉低 MOSI正常输出)
SPI1波形(仅有 MOSI 波形正确 其余无变化 均为低信号)