Zynq中使用FreeRTOS的空闲钩子函数时在SDK中的设置_第1页
Zynq中使用FreeRTOS的空闲钩子函数时在SDK中的设置_第2页
Zynq中使用FreeRTOS的空闲钩子函数时在SDK中的设置_第3页
全文预览已结束

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Zynq中使用FreeRTOS的空闲钩子函数时在SDK中的设置本文介绍zynq中使用FreeRTOS的空闲钩子函数时在SDK中的设置和一些说明初玩zynq发现,在zynq中可以运行FreeRTOS,果断试了下;测试了几个例子,一切正常,但是在使用空闲钩子函数时导致无法正常执行。要使用空闲钩子函数必须将FreeRTOSConfig.h文件中的configUSE_IDLE_HOOK定义为1,当然编译前已手动将其定义改为1,但是空闲钩子函数仍然没有运行。查看源文件没发现错误,无意间再次确认configUSE_IDLE_HOOK是否改为1时,查看FreeRTOSConfig.h文件中configUSE_IDLE_HOOK定义为0了,再次修改,重新编译运行,不行,再看,configUSE_IDLE_HOOK又定义为0了,嗯,应该是编译工程时BSP也重新生成了,而默认configUSE_IDLE_HOOK定义为0,所以configUSE_IDLE_HOOK又回到了0。找到原因,进入以下处理过程不成功的处理直接在源文件(包含main的实现文件)头加上#defineconfigUSE\_IDLE\_HOOK1这样当然不行,在编译FreeRTOS时configUSE_IDLE_HOOK任为0,这里定义的configUSE_IDLE_HOOK只有在编译源文件时有用,而源文件中也没使用这个宏,所以这样改是不行的。当然将#defineconfigUSE\_IDLE\_HOOK1放到包含FreeRTOSConfig.h文件的FreeRTOS.h文件包含#include"FreeRTOS.h"之前也是同样道理,同样不行。修改SDK自带BSP中源文件直接将SDK生成FreeRTOSBSP的源文件修改,这样看似可行。

当找到SDK的BSP目录(E:\Xilinx\SDK\2015.3\data\embeddedsw\ThirdParty\bsp\freertos821_xilinx_v1_0,这里假定vivado安装目录为E:\Xilinx)时,搜索发现根本没有FreeRTOSConfig.h这个文件,所以本方法不可行。

(后来发现FreeRTOSConfig.h是编译时才生成的)直接自定义BSP后来在网上找资料,找到官网(个人认为Xilinx官网资料还是挺多的,不像Lattice实在太少,也可能是我没找到方法),找到的确有自定义BSP的方法(AR#63964),但是例子中是自定义standaloneBSP的方法,以类似的方法修改,但是可能由于是FreeRTOSBSP的修改与standalone有所不同,最后选择修改后的BSP,每次生成BSP会在执行freertos821_xilinx.tcl出错,没有解决,待日后处理,所以本方法还未成功。解决办法最后,真是,踏破铁鞋无觅,得来全不费功夫;最后在发现是我多虑了,SDK早已考虑到这些,直接在BSP上右键->BoardSupportPackageSettings,可以看到下图直接在这里有设置,直接将use_idle_hook设置为true即可(以下还有关于FreeRTOS更多的设置,如STDIO、心跳钩子函数等)。真是一个简单的问题,甚至可以说是不存在的问题,而网上搜索真没找到类似情况的说明,费了不少时间,这里特此记录,不成功的处理也可作为以后其它问题处理的备选方法。其它对于使用了队列的应用要添加#include"queue.h";使用了互斥量的要添加#include"semphr.h"

要使用xil_p

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论