当前位置:   article > 正文

基于zynq7100开发嵌入式软件(一)

zynq7100

写在前面

本文档基于zynq7100开发PS端代码的经验,没有操作系统,使用到了网口、GPIO、RAM读写、定时器等功能。

本文档描述了平台文件、BSP、静态库、应用程序创建的过程以及注意事项。同时在描述这些文件的过程中,对各中原理也进行了解释。

zynq7100中有两个核,目前开发只用了核0。

SDK使用

Xilinx的SDK也是基于eclipse的一个调试开发工具,其布局,使用方式和基于eclipse的其他工具类似。

无操作系统的PS端开发通常由三个部分组成:

  1. 硬件定义:即hdf文件,该文件是硬件平台的描述文件,定义了器件的类型、工程创建时间、地址映射及IP core信息等。基于该文件,可生成PS端最小系统,并进行最小系统初始化。同时PL部分的烧写文件bit文件也通常放在硬件定义中。
  2. 板级支持包BSP:创建BSP的过程中会生成.mss文件,该文件用来表征操作系统、库、驱动、处理器的信息,利用该文件可以查看相关示例程序。BSP最终会生成静态库文件和include文件,供上层软件调用。
  3. 创建可执行应用文件:创建不含操作系统的应用文件的过程中,会要求绑定bsp文件,其本质就是添加默认的头文件搜索路径、库文件搜索路径以及自动链接相关静态库。

新建/打开工作区

 打开工作区后的视图如下所示:

  1. 使用hdf文件创建平台

在project explorer中新建一个project,类型选择Hardware Platform Specification:

点击next,指定工程名,并选择相应的hdf文件:

点击finish,最终创建出来的工程如下图所示:

创建bsp工程

创建好硬件定义工程后,即可创建BSP工程,新建工程中选择Board Support Package:、

点击next,其中BSP OS选择standalone,project name可以根据需要修改。

点击finish后,会要求选择标准支持库外的其他支持库,由于本次需要使用PS端自带的网口进行通信,因此选择了lwip库(该库包含了TCP/IP协议栈相关的功能):

同时,对lwip库进行进一步配置,打开了igmp功能:

点击OK后,SDK工具会进行自动构建(如果需要取消自动构建功能,则点击工具栏中的Project,把Build Automatically前面的√取消即可)。

构建完成后的工程如下图所示,头文件包含在include文件夹中,库文件包含在lib文件夹中,由于增选了lwip库,因此生成了两个库文件xil.a和lwip4.a。

创建静态库工程

由于BSP中的函数名称不利于理解,因此在BSP基础上根据使用需要及编码习惯重新编写了驱动,并且将其编译为静态库文件,供可执行应用程序调用。

创建静态库文件

点击next,选择OS为Standalone,库类型为静态库:

由于在创建库文件的过程中并不会有关联BSP的设置,但是驱动跟BSP紧密相关,因此手动关联BSP,在工程属性中做如下设置:

创建可执行应用工程

新建一个应用工程:

OS平台选择standalone,BSP选择之前创建的BSP,再点击next,选择空白工程:

由于需要使用之前创建的静态库,因此需要在工程属性中做如下设置,用于包含头文件及库文件搜索路径:

PS:OS Platform为standalone和freertos时,使用的编译工具链是Xilinx ARM v7 GNU Toolchain,如果为Linux,编译工具链为Xilinx ARM v7 GNU/Linux Toolchain。

SDK调试

调试步骤

可执行应用程序编译完成后,会生成.elf文件,选中工程文件,右键->Debug As ->Launch on Hardware(System Debugger):

弹出如下确认框,点击yes:

最终出来调试界面。

可以单步运行,也可以打断电,具体调试操作此处不详述。

常见问题或注意事项

需要勾选Reset entire system

调试时没有停在main函数入口处

在调试过程中遇到点击调试并没有停在main函数入口处,而是停在了某个汇编语言的位置,从网上搜索资料说要对Debug进行配置,勾选Stop at main,如下面两张图所示:

但是在实操过程中,往往遇到这样的情况时,该选框勾选后会报错从而中断调试,应该在调试过程中某些配置进行了更改从而导致出错,有效的办法是点击应用工程的属性,点击运行调试选项,删除后重新开始。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/从前慢现在也慢/article/detail/881170
推荐阅读
相关标签
  

闽ICP备14008679号