这里会显示出您选择的修订版和当前版本之间的差别。
后一修订版 | 前一修订版 | ||
fsmc总线通信实验_复用地址模式 [2019/11/29 10:17] zhangzheng 创建 |
fsmc总线通信实验_复用地址模式 [2022/03/22 10:29] (当前版本) sean |
||
---|---|---|---|
行 1: | 行 1: | ||
- | [[http://www.cnblogs.com/xiaomagee/p/5389805.html]] | + | | **银杏科技有限公司旗下技术文档发布平台** |||| |
+ | |技术支持电话|**0379-69926675-801**||| | ||
+ | |技术支持邮件|Gingko@vip.163.com||| | ||
+ | ^ 版本 ^ 日期 ^ 作者 ^ 修改内容 ^ | ||
+ | | V1.0 | 2020-07-02 | gingko | 初次建立 | | ||
+ | |||
+ | ===== 实验十:FMSC总线通信实验——复用地址模式 ===== | ||
+ | |||
+ | ==== 一、 实验目的与意义 ==== | ||
+ | |||
+ | - 了解FMSC总线通信。 | ||
+ | - 掌握FMSC总线使用方法。 | ||
+ | - 掌握QuartusII集成开发环境的使用方法。 | ||
+ | ==== 二、 实验设备及平台 ==== | ||
+ | |||
+ | - iCore4 双核心板[[https://item.taobao.com/item.htm?spm=a1z10.1-c-s.w4004-22598974120.15.5923532fsFrHiE&id=551864196684|点击购买]]。 | ||
+ | - Blaster(或相同功能)仿真器[[https://item.taobao.com/item.htm?id=554869837940|点击购买]]。 | ||
+ | - Micro USB线缆。 | ||
+ | - QuartusII开发平台。 | ||
+ | - Keil MDK开发平台。 | ||
+ | - 装有WIN XP(及更高版本)系统的计算机。 | ||
+ | ==== 三、 实验原理 ==== | ||
+ | |||
+ | * STM32F767上自带FSMC控制器,本实验通过FSMC总线的地址复用模式实现STM32与FPGA之间的通信,FPGA内部建立RAM块,FPGA桥接STM32和RAM块,本实验通过FSMC总线从STM32向RAM块中写入数据(数据为0到255),然后读取RAM出来的数据并进行验证。实验原理如下。 | ||
+ | {{ :icore4:icore4_fpga_10_1.png?direct&600 |图10-1}} | ||
+ | <code c> | ||
+ | /*FSMC测试程序,主函数部分(下载至RAM中)*/ | ||
+ | while(1){ | ||
+ | for(i = 0;i < 256; i++){ | ||
+ | fpga_write(i,i); //向FPGA写数据 | ||
+ | |||
+ | for(i = 0;i < 100000; i++); | ||
+ | for(i = 0;i < 256;i++){ | ||
+ | fpga_read_data = fpga_read(i); //从FPGA读数据 | ||
+ | if(fpga_read_data != i){ | ||
+ | LED_GREEN_OFF; | ||
+ | LED_RED_ON; //出现异常ARM的红灯点亮 | ||
+ | } | ||
+ | </code> | ||
+ | ==== 四、 实验步骤 ==== | ||
+ | |||
+ | 1、把仿真器与iCore4的SWD调试口相连(直接相连或通过转接器相连),将USB-Blater与iCore4的JTAG调试口相连,并分别与电脑相连。将跳线帽插在USB UART。如图10-2所示。 | ||
+ | |||
+ | {{ :icore4:icore4_fpga_6_2.jpg?direct |图10-2}} | ||
+ | |||
+ | 2、把iCore4(USB_UART)通过Micro USB线与计算机直接相连,为iCore4供电。\\ | ||
+ | 3、打开本实验所带QuartusII工程文件,如下图所示。 | ||
+ | |||
+ | {{ :icore4:icore4_fpga_10_3.png?direct |图10-3}} | ||
+ | |||
+ | {{ :icore4:icore4_fpga_10_4.png?direct |图10-4}} | ||
+ | |||
+ | 4、将本实验例程的FPGA配置文件下载至iCore4上。\\ | ||
+ | 5、打开本实验所带keil工程文件,如下图所示。 | ||
+ | |||
+ | {{ :icore4:icore4_fpga_10_5.png?direct |图10-5}} | ||
+ | |||
+ | {{ :icore4:icore4_fpga_10_6.png?direct |图10-6}} | ||
+ | |||
+ | 6、点击图10-7所示按钮将,程序烧写进iCore4上的STM32中。 | ||
+ | |||
+ | {{ :icore4:icore4_fpga_10_7.png?direct |图10-7}} | ||
+ | ==== 五、实验现象 ==== | ||
+ | * FPGA程序下载至硬件后绿色FPGA-LED灯点亮,ARM程序烧写完即测试,测试成功则绿色ARM-LED点亮,否则红色ARM-LED点亮。 | ||
+ | ==== 六、拓展实验 ==== | ||
+ | * 试着修改ARM程序中验证环节的代码,使验证出现异常即点亮红色ARM-LED灯。 | ||
+ |