这里会显示出您选择的修订版和当前版本之间的差别。
两侧同时换到之前的修订记录 前一修订版 后一修订版 | 前一修订版 | ||
icore4tx_fpga_18 [2020/06/28 21:33] zgf |
icore4tx_fpga_18 [2022/04/01 11:38] (当前版本) sean |
||
---|---|---|---|
行 1: | 行 1: | ||
+ | |||
+ | |||
+ | | **银杏科技有限公司旗下技术文档发布平台** |||| | ||
+ | |技术支持电话|**0379-69926675-801**||| | ||
+ | |技术支持邮件|Gingko@vip.163.com||| | ||
+ | ^ 版本 ^ 日期 ^ 作者 ^ 修改内容 ^ | ||
+ | | V1.0 | 2020-06-29 | gingko | 初次建立 | | ||
+ | |||
+ | \\ | ||
+ | \\ | ||
+ | |||
+ | |||
===== 实验十八:SPI通信实验——基于SPI总线的ARM与FPGA通信 ===== | ===== 实验十八:SPI通信实验——基于SPI总线的ARM与FPGA通信 ===== | ||
行 7: | 行 19: | ||
==== 二、 实验设备及平台 ==== | ==== 二、 实验设备及平台 ==== | ||
- | - iCore4TX 双核心板。 | + | - iCore4TX 双核心板[[https://item.taobao.com/item.htm?spm=a1z10.1-c-s.w4004-22598974120.3.29da532fLkazHH&id=614919247574|点击购买]]。 |
- USB CABLE(或相同功能)仿真器。 | - USB CABLE(或相同功能)仿真器。 | ||
- JLINK(或相同功能)仿真器。 | - JLINK(或相同功能)仿真器。 | ||
行 32: | 行 44: | ||
* SPI总线四种工作方式 | * SPI总线四种工作方式 | ||
* SPI 模块为了和外设进行数据交换,根据外设工作要求,其输出串行同步时钟极性和相位可以进行配置,时钟极性(CPOL)对传输协议没有重大的影响。如果 CPOL=0,串行同步时钟的空闲状态为低电平;如果CPOL=1,串行同步时钟的空闲状态为高电平。时钟相位(CPHA)能够配置用于选择两种不同的传输协议之一进行数据传输。如果CPHA=0,在串行同步时钟的第一个跳变沿(上升或下降)数据被采样;如果CPHA=1,在串行同步时钟的第二个跳变沿(上升或下降)数据被采样。SPI主模块和与之通信的外设备时钟相位和极性应该一致。如图18-1所示: | * SPI 模块为了和外设进行数据交换,根据外设工作要求,其输出串行同步时钟极性和相位可以进行配置,时钟极性(CPOL)对传输协议没有重大的影响。如果 CPOL=0,串行同步时钟的空闲状态为低电平;如果CPOL=1,串行同步时钟的空闲状态为高电平。时钟相位(CPHA)能够配置用于选择两种不同的传输协议之一进行数据传输。如果CPHA=0,在串行同步时钟的第一个跳变沿(上升或下降)数据被采样;如果CPHA=1,在串行同步时钟的第二个跳变沿(上升或下降)数据被采样。SPI主模块和与之通信的外设备时钟相位和极性应该一致。如图18-1所示: | ||
- | + | {{ :icore4tx:icore4tx_fpga_18_1.png?direct |图18-1}} | |
- | 图18-1 | + | |
=== 3.SPI通信指令表 === | === 3.SPI通信指令表 === | ||
表18.1 SPI通信指令表 | 表18.1 SPI通信指令表 | ||
行 162: | 行 173: | ||
</code> | </code> | ||
==== 五、 实验步骤及实验结果 ==== | ==== 五、 实验步骤及实验结果 ==== | ||
- | 图18-2 | + | {{ :icore4tx:icore4tx_fpga_18_2.png?direct |图18-2}} |
- 将硬件正确连接,如图18-2所示。 | - 将硬件正确连接,如图18-2所示。 | ||
- 打开putty串口调试工具,打开设备管理器查看对应的端口信息,在putty中打开对应的端口,设置波特率115200,用于打印串口信息; | - 打开putty串口调试工具,打开设备管理器查看对应的端口信息,在putty中打开对应的端口,设置波特率115200,用于打印串口信息; | ||
行 168: | 行 179: | ||
- 将编写好的ARM代码编译,并下载到开发板中,putty工具中会打印相应的SPI通信相关信息; | - 将编写好的ARM代码编译,并下载到开发板中,putty工具中会打印相应的SPI通信相关信息; | ||
- 观察实验现象及putty终端打印信息——FPGA_LED闪烁,putty终端打印如图18-3所示。 | - 观察实验现象及putty终端打印信息——FPGA_LED闪烁,putty终端打印如图18-3所示。 | ||
- | + | {{ :icore4tx:icore4tx_fpga_18_3.png?direct |图18-3}} | |
- | 图18-3 | + | |
==== 六、 拓展实验 ==== | ==== 六、 拓展实验 ==== | ||
- 通过仿真观察SPI通信的时序是否和参考时序一致。 | - 通过仿真观察SPI通信的时序是否和参考时序一致。 | ||
- 实现错误信息读取的指令功能。 | - 实现错误信息读取的指令功能。 | ||