FPGA/ASIC技术
SmallRTOS是一个源代码开放的、易于移植的、面向深度嵌入式应用的微内核实时操作系统,主要应用领域为工业控制,智能传感器开发,智能终端等。下面我们逐步演示如何在Zynq平台运行SmallRTOS实时操作系统。
我们从Vivado导出硬件顶层设计包开始,如下图所示点击菜单File->Export->Export Hardware
Vivado会弹出如下对话框,我们不做任何修改,直接点击OK按钮
然后通过Vivado启动软件开发套件工具SDK,点击菜单File->Launch SDK
Vivado会弹出如下提示对话框,采用默认设置,直接点击OK按钮
此时软件开发套件SDK会启动,并提示正在导入硬件顶层设计包,如下图所示:
导入完毕,我们在SDK左侧栏可以看到导入的硬件顶层设计包design_1_wrapper_hw_platform_0
在此基础上,我们创建板级支持包BSP工程,点击SDK菜单下的File->New->Board Support Package
SDK弹出如下配置对话框,采用默认命名,默认参数即可,直接点击Finish按钮。
接着弹出如下对话框,选择根据需要选择板级支持包的功能组件,我们选择如下三个组件:lwip,xilffs,xilrsa等
点击OK按钮后,弹出如下进度提示框,表示正在生产BSP板级支持包。
生成完毕后,在左侧栏会出现如下所示的两个工程:
接着,就可以创建应用程序了。
在SDK的菜单中点击File->New->Application Project,如下图所示:
在SDK的弹出对话框中,填写应用程序的名字,比如SmallRTOSDemo等,板级支持包选择已经创建的工程standalone_bsp_0。之后点击按钮Next
此时会出现示例工程选择对话框,如下所示,可以根据需要自行选择,我们选择Empty Application
点击按钮Finish后,应用工程就创建完毕了,不过此时应用工程是空的,还无法使用。接下来我们向应用程序SmallRTOSDemo中添加代码文件。
打开SmallRTOS压缩包如下路径DemoCORTEX_A9_Zynq_Zedboard_SDKSmallRTOSDemosrc,把其中的.c文件及.h文件连同SmallRTOS文件夹一起拷贝到刚刚创建的SmallRTOSDemosrc文件夹下;注意,lscript.ld文件也要拷贝过去,这个文件里面配置有SmallRTOS的汇编入口地址。
此时,右键点击工程SmallRTOSDemo,在弹出菜单中点击Refresh。
一般情况下Refresh完毕后,工程会自行编译,此时会提示报错信息,这是因为部分路径还没有指定,一些文件找不到。
右键点击工程SmallRTOSDemo,在弹出菜单栏中选择Properties
此时SDK弹出编译环境配置对话框,选择C/C++ General -> Paths and Symbols,打开Include小贴签项,点击Add按钮
出现如下配置提示框,点击Workspace按钮
在弹出框中,选择工程SmallRTOSDemo下的src文件夹,点击OK。
路径会显示到Directory的编辑框里,点击OK按钮即可。
按照同样方式添加SmallRTOS的OS及CPU路径,如下图所示。
添加完毕后,路径会显示在列表中,如下图所示:
此时点击Apply按钮,使配置参数生效,此时弹出对话框如下所示,点击Yes即可。
上述对话框退出后, 点击上图OK按钮,退出路径配置对话框。此时工程会重新编译。
若没有重新编译,可以右键点击SmallRTOSDemo工程,在弹出菜单栏点击Clean Project
操作后,结果如下图所示:
工程在Clean的同时,会重新编译,这次编译成功了,生成了SmallRTOSDemo.elf文件,出现如下编译后的结果:
arm-xilinx-eabi-sizeSmallRTOSDemo.elf |tee"SmallRTOSDemo.elf.size"
text data bss dec hex filename
52904 1944 33892 88740 15aa4 SmallRTOSDemo.elf
'Finishedbuilding: SmallRTOSDemo.elf.size'
' '
08:56:40 BuildFinished (took 4s.336ms)
全部0条评论
快来发表一下你的评论吧 !