赞
踩
ZYNQ7的逻辑部分PL和处理器PS部分采集协同工作才能体现出其强大。这个例子只是简单的是一个实现:将FPGA当做一个PS处理器的外设,通过寄存器地址映射到PS的寻址空间。在处理器的使用C程序访问这些寄存器,来实现软件和逻辑结合的协同设计的效果。具体步骤就是先在VIVADO配置ZYNQ处理器吗,做好FPGA的外设,互联完成之后生产BIT流文件下载到板子。在SDK环境下开发好软件之后,进行在线调试运行。视频展示VIVADO的操作步骤,以及SDK的下对代码进行分析…
前面基本设置雷同:
:create block
designed→增加ip核:(zynq,两个gpio核第一个为输入sw,第二个为led输出;)
(增加ip快捷键Ctrl+I)
→填充zynq的默认设置
(GPIO:在嵌入式处理器上通常提供的一种通用可编程I/O端口;)
(修改名字{大写}SW,LED):
→把两个gpio(引出角):
→分别双击SW和LED设置输入(SW)8位,输出(LED)8位;
→两个分别引出角:(ctrl+t)
再去分别改端口:改成小写sw和led
(第一个视频是教你连线)以下部分为快捷方式:
{把里卖的打勾勾(没有截到图):}
视频一的方法:
需要自己添加的有Reset ;AXI总线(可以最多设置为16路对16路);
备注一下说明:
(第一个视频是早期版本2013,在对led
和sw端口进行命名的时候在15版本出现了不能重复命名的情况:
顶层文件:修改(版本问题,所以要修改才能完成)
修改最好是在xdc(xilinx designe company)里卖修改:
改为:
set_property PACKAGE_PIN T22 [get_ports {led_tri_o[0]}]
set_property IOSTANDARD LVCMOS33 [get_ports {led_tri_o[0]}]
set_property PACKAGE_PIN T21 [get_ports {led_tri_o[1]}]
set_property IOSTANDARD LVCMOS33 [get_ports {led_tri_o[1]}]
set_property PACKAGE_PIN U22 [get_ports {led_tri_o[2]}]
set_property IOSTANDARD LVCMOS33 [get_ports {led_tri_o[2]}]
set_property PACKAGE_PIN U21 [get_ports {led_tri_o[3]}]
set_property IOSTANDARD LVCMOS33 [get_ports {led_tri_o[3]}]
set_property PACKAGE_PIN V22 [get_ports {led_tri_o[4]}]
set_property IOSTANDARD LVCMOS33 [get_ports {led_tri_o[4]}]
set_property PACKAGE_PIN W22 [get_ports {led_tri_o[5]}]
set_property IOSTANDARD LVCMOS33 [get_ports {led_tri_o[5]}]
set_property PACKAGE_PIN U19 [get_ports {led_tri_o[6]}]
set_property IOSTANDARD LVCMOS33 [get_ports {led_tri_o[6]}]
set_property PACKAGE_PIN U14 [get_ports {led_tri_o[7]}]
set_property IOSTANDARD LVCMOS33 [get_ports {led_tri_o[7]}]
set_property PACKAGE_PIN F22 [get_ports {sw_tri_i[0]}]
set_property IOSTANDARD LVCMOS33 [get_ports {sw_tri_i[0]}]
set_property PACKAGE_PIN G22 [get_ports {sw_tri_i[1]}]
set_property IOSTANDARD LVCMOS33 [get_ports {sw_tri_i[1]}]
set_property PACKAGE_PIN H22 [get_ports {sw_tri_i[2]}]
set_property IOSTANDARD LVCMOS33 [get_ports {sw_tri_i[2]}]
set_property PACKAGE_PIN F21 [get_ports {sw_tri_i[3]}]
set_property IOSTANDARD LVCMOS33 [get_ports {sw_tri_i[3]}]
set_property PACKAGE_PIN H19 [get_ports {sw_tri_i[4]}]
set_property IOSTANDARD LVCMOS33 [get_ports {sw_tri_i[4]}]
set_property PACKAGE_PIN H18 [get_ports {sw_tri_i[5]}]
set_property IOSTANDARD LVCMOS33 [get_ports {sw_tri_i[5]}]
set_property PACKAGE_PIN H17 [get_ports {sw_tri_i[6]}]
set_property IOSTANDARD LVCMOS33 [get_ports {sw_tri_i[6]}]
set_property PACKAGE_PIN M15 [get_ports {sw_tri_i[7]}]
set_property IOSTANDARD LVCMOS33 [get_ports {sw_tri_i[7]}]
0
(步骤和之前一样)
在testeriph.c里面只保留gpio的输入和输出:
下载结果:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。