本次演示是基于vivado 2018.3版本完成的。硬件是7020 512M DDR 7010与7020的arm a9核是相同的,可以直接参考自己的硬件进行创建自己的工程。

本次的原始工程文件连接在论坛中已经可以找到。下载并解压,使用其中的xilinx下的文件。
当前创建的threadx工程文件除了tx_initialize_low_level.S文件其余都是基于最新的6.1.9版本

1、 创建Vivado工程

图 1

我们创建一个名为Ailurus的工程:

图 2

一路Next

图3

图 4

图 5

处理器选择:

图 6

图 7
到这里电机Finish即可.

2.配置ZYNQ处理器及其相关外设

图 8
创建新bd文件,使用默认名design_1。

图 9
点击+号,输入zynq, 提示zynq处理器双击:

图 10
我的硬件配置如此,自己可以根据自己的硬件进行配置即可

图 11

DDR 配置:

图 12

点击OK,确认,并如图所示连接:

图 13

我们电机下方红线处,验证我们的最小系统设计,如果没有问题进入下一步。

图 14

图 15
生成HDL 文件,再次点击Generate Output Products:

图 16
点击Generate Bitstream:

图 17
完成后,到处bit文件到xSDK中

图 18
方便后期的Petalinux等设计使用。
一定要勾选Include bitstream

图 19
启动SDK:

图 20

2、 创建ThreadX 链接库:
File->New->Other->Xilinx->Library Project
点击Next:

图 21

修改如红线处:

图 22

我们把从github上下载好的文件的threadx->common中的inc与src文件夹和 Port->cortex_a9->gnu中的inc与src文件夹内容全部拷贝到,当前工程的src文件夹中,

同时解压文件夹下的src目录下tx_initialize_low_level.S拷贝到当前工程的src文件夹下。
同时将下原文件夹中的common_file文件夹拷贝到工程文件夹下面:

工程文件夹下面文件:

图 23

这个时候我们点击编译,我们可以看到已经成功生成了libtx.a库文件:

图 24

3、 创建ThreadX例程:

File->New->Application Project,创建一个名为demo_threadx的工程,注意红线部分的选项:
第一次创建应用,我们选择基于当前的platform创建一个新的bsp。

图 25

选择Hello World:

图 26

我们首先编译当前的Hello World 确认无误后继续下一步:

图 27
4、 修改编译选项
添加common_file文件夹:

我们右键项目->New->Other->General->Floder->Next->Advance->Link To alternate location (Linkerd Floder)->Finish

图 28

图 29

这时候我们将HelloWorld.c文件修改为我们下载的demo中的demo_threadx.c文件并且编译:
出现error: tx_api.h: No such file or directory错误, 因为该文件在tx库工程中,我们在demo_threadx工程中添加对应的include文件夹以及对应的库的文件夹:

右键demo_threadx工程,
属性->C/C++ Build->Settings->ARM v7 Gcc compiler->Inferred Options->SoftWare Platform增减/tx/src文件夹:

C/C++ Build->Settings->ARM v7 Linker -> Libraries增减之前生成的tx库;

在C/C++ Build->Settings->ARM v7 Linker -> Inferred Options->SoftWare Platform中增加对应库的文件夹。

图 30

图 31

此时我们重新进行编译:

图 32

编译完成,进行一下测试:
右键工程,Debug As -> Debug Configurations->Xilinx C/C++ application (System Debuger)

图 33

图 34

至此,demo_threadx工程创建完毕:

                                                     <center>**图 35**</center>

其余的关于FileX、USBX、NetX的工程创建可以按照这个创建,他们都依赖于libtx.a库,
比如USBX,NetX等同时还依赖于FileX的库,NetX需要按照自己的phy芯片修改对应驱动,其余的就可以按照此例子在对应位置添加对应文件以及目录即可。

这是早些时候的测试版本:

                                                     <center>**图 36**</center>

网络测试:

图 37

ZYNQ移植ThreadX demo相关推荐

  1. 【M32】F103CBTx 移植 ThreadX

    文章目录 1.配置 2.移植 3.适配 4.运行 5.运行 参考 交流 1.配置 取消 Pendable request for system service 和 System tick timer ...

  2. ThreadX应用开发笔记之二:移植ThreadX到STM32H7平台

      前面我们将ThreadX成功移植到了STM32F4平台,但这只是我们的部分应用.我们希望将ThreadX的优势发挥到我们的更多应用中,所以在这一篇中我们就来实现将ThreadX移植到STM32H7 ...

  3. Zynq移植USB触摸屏

    Zynq平台移植USB触摸屏的实现(Qt5.7) 使用的环境: 1. CPU type:ARM CortexA9(Xilinx zynq7000)(使用的是黑金AX7021开发板) 2. Kernel ...

  4. freertos zynq 移植_Zynq-7000 FreeRTOS(一)系统移植配置

    软件版本:VIvado HLx 2018.2 从FreeRTOS的官网中下载源代码: https://www.freertos.org/a00104.html 图:FreeRTOS的官网 上图中,点击 ...

  5. YOLO算法的ZYNQ移植尝试(SDx方法、ARM部分)

    尝试直接从官网移植 1. 需要将include/darknet.h文件copy到src 2. 发现老是报错,说代码有问题network net = parse_network_cfg(cfgfile) ...

  6. zynq 移植ubuntu_ROS ZYNQ移植

    1  准备工作 apt-get install python-rosdep python-rosinstall-generator python-wstool build-essential 出现错误 ...

  7. Xilinx Zynq移植过程备忘录

    一.基础概念: 1.Zynq Linux启动流程: 步骤 Step1 Step2 Step3 Step4 Step5 Zynq BootROM FSBL U-boot Kernel BootFS 说明 ...

  8. STM32H743+CubeMX-移植ThreadX

    文章目录 一.前言 二.STM32CubeMX 2.1.新建工程 2.2.配置RCC 2.3.配置Clock Configuration 2.4.配置Debug方式 2.5.使能CPU ICache与 ...

  9. FreeRTOS — 源码下载与移植

    1.FreeRTOS的学习 1.1.FreeRTOS的源码下载 学习一个操作系统前,首先要下载对应的源码,用于研究和学习.FreeRTOS的源码下载链接如下: FreeRTOS Real Time K ...

最新文章

  1. 让Win10文件管理器的详细信息窗格显示更多信息
  2. 【Python】用 Python 帮财务小妹生成 Excel 报表,小妹直说一辈子。。。
  3. mysql的学习笔记
  4. Maven入门极简使用教程
  5. OPENCV图像变换-1
  6. python中if语句求最大值_python 判断三个数字中的最大值实例代码
  7. JavaScript获取select下拉框中的第一个值
  8. opengl双三次bezier曲面_试驾艾瑞泽5 PLUS:双外观设计,搭L2级全速域驾驶辅助,月销要破万?...
  9. Java并发编程-ConcurrentHashMap
  10. RabbitMQ使用代码示例
  11. 【图像融合】基于matlab GUI简单+拉普拉斯金字塔算法图像融合【含Matlab源码 780期】
  12. 计算机专业考试系统,计算机基础考试系统
  13. 【macOS】Desktop桌面文件突然消失不见解决办法
  14. dmz和端口映射_DMZ和端口映射有何区别
  15. ios视频播放器封装(全屏播放,锁屏、手势调节亮度、音量、进度)
  16. VRay3.4 for SketchUp之次表面散射材质(3S材质)
  17. java 类的加载机制详解
  18. 牛客高级项目课(仿牛客网)笔记
  19. ai人工智能语音分析系统_语音应用搜索正在改变语音AI是领先者
  20. 小米2017校园招聘笔试题

热门文章

  1. python中xlwt_python中xlwt是什么
  2. 三国杀 原创之魂2016 武将技能
  3. OpenGL学习笔记:材质
  4. 照片做成视频的软件手机上用照片做成视频
  5. 直播预告 | 中秋过后 ICML-5不见不散!
  6. windows使用c语言修改ip地址,怎么样通过C语言修改系统IP
  7. 多载波调制之OFDM_LTE
  8. 洛谷 P2814 家谱
  9. 函数去抖(debounce) 函数节流(throttle)总结
  10. 关注微信公众号后自动回复微信小程序卡片(认证服务号及海外公众号适用)