首页 > 其他分享 >集成AMD Xilinx的standalone的例子到FreeRTOS时,关于中断的注意事项

集成AMD Xilinx的standalone的例子到FreeRTOS时,关于中断的注意事项

时间:2023-06-25 16:56:04浏览次数:37  
标签:初始化 FreeRTOS standalone 中断 void AMD

集成AMD Xilinx的standalone的例子到FreeRTOS时,关于中断的注意事项。

FreeRTOS也可以说是standalone的程序。因此可以方便的把AMD Xilinx的standalone的例子,集成到FreeRTOS。

但是对于中断的处理,要小心。FreeRTOS会初始化中断控制器。对于使用中断模式的standalone的程序,也会初始化中断控制器。两者有冲突。请参考下列建议。

a) FreeRTOS在 void vTaskStartScheduler( void )里调用 configSETUP_TICK_INTERRUPT(), 也就是void FreeRTOS_SetupTickInterrupt( void )。void FreeRTOS_SetupTickInterrupt( void )在文件portZynqUltrascale.c里实现,会初始化MPSoC的中断控制器。所以在vTaskStartScheduler()之前,FreeRTOS的中断没有使能,不能响应中断。

b) 把xilinx的standalone的例子加入FreeRTOS时,应该去掉XScuGic_CfgInitialize(), Xil_ExceptionRegisterHandler(),Xil_ExceptionEnable()等GIC层次的操作函数,只保留 XScuGic_Connect()和XScuGic_EnableIntr()等设备层次的操作函数。否则GIC被重复初始化,可能导致FreeRTOS工作异常。

c) 要在vTaskStartScheduler()之后执行standalone例子的初始化代码。

标签:初始化,FreeRTOS,standalone,中断,void,AMD
From: https://www.cnblogs.com/hankfu/p/17503319.html

相关文章

  • FreeRTOS在STM32中是如何使用内存的
    转载自:《FeeRTOS在STM32中是如何使用内存的》没有FreeRTOS的时候:STM32资源的分配: 有FreeRTOS后(注意FreeRTOS的任务栈空间位于FreeRTOS的堆之中): STM32无OS编程Stack_Size和Heap_Size大小设置的意义其中STACK_SIZE和HEAP_SIZE在STM32的启动文件startup_stm32fxx.s......
  • 初识FreeRTOS
    FreeRTOS是一个迷你的实时操作系统内核。作为一个轻量级的操作系统,功能包括:任务管理、时间管理、信号量、消息队列、内存管理、记录功能、软件定时器、协程等,可基本满足较小系统的需要。 一、FreeRTOS收费问题1.FreeRTOS是一款“开源免费”的实时操作系统。遵循的是GPLv2+的许......
  • Freertos学习01-Task Creat & Delete
    一、Freertos介绍FreeRTOS是一个开源的实时操作系统内核,它是由英国的RealTimeEngineersLtd.开发的。它提供了一些基本的内核功能,如任务管理、时间管理、信号量、队列和软件定时器等,可以帮助开发人员更容易地构建嵌入式系统。FreeRTOS是一个非常流行的实时操作系统内核,因为它是......
  • go1.6.2 linux/amd64 的一个bug: gcc: 无法识别的选项‘-no-pie’
    如果你的linux是中文版的。即:执行#echo$LANG命令,返回的是zh_CN.UTF-8则会出现这个bug,如果是en_US.UTF-8则没有这个问题。 这个bug的一个例子:#goget-ugithub.com/mattn/go-sqlite3#github.com/mattn/go-sqlite3gcc:无法识别的选项‘-no-pie’虽然会报这......
  • STM32F429 Discovery开发板应用:使用FreeRTOS队列+DMA双缓存实现串口数据接收
     参考帖子:https://blog.csdn.net/freedompoi/article/details/122350866目前想要实现STM32F4自带的DMA双缓冲区,尝试过一版,结果不能预期,就使用了RxHalfCplt和RxCplt去实现DMA双缓冲区的效果。现在有时间了,又重新实现STM32F4自带的DMA双缓冲区,作为参考。 MCU:STM32F429ZIT6......
  • AMD记录
    CXL rustSP3服务器设计主板设计规格chiplets架构大芯片 Monolithic架构CPU增长,会有性能瓶颈,多片封装架构,采用四个晶圆3D堆叠技术 32MB-》96MB 主频 cyclye周期的关系 AMD3Dchiplet封装技术,让三级缓存更大CCDzhichi8个core GENOA-XBERGAMO......
  • ramdisk.img 格式【解压/压缩】
     1、查看ramdisk.img格式[root@localhostramdisk]#fileramdisk.imgramdisk.img:u-bootlegacyuImage,ramdisk,Linux/RAMDiskImage(gzip),24477522bytes,WedApr1918:10:252023,LoadAddress:0x10000000,EntryPoint:0x10000000,HeaderCRC:0xEDB56EAE......
  • FreeRTOS
    一、简介、特点FreeRTOS(Free 免费的 Real Time Operate System实时操作系统)。文件数量比UCOS少(4-9K字节)。特点:可裁剪(通过配置文件里的宏定义),任务数量、优先级不限,支持低功耗的Tickless模式,堆栈溢出检测。二、源码获取  (官网:www.freertos.org)1、提......
  • FreeRtos的移植,以及一些嵌入式学习心得。
    不得不先提心得。这不是第一次移植FreeRtos,至少是五六七八九次了,当然也不是最后一次。但是每一次移植其实都差不多,并没有什么得心应手的感觉。原因就是学的东西太多,学的太杂。我不得不承认,就算我天资聪慧,异于常人,记这么多知识是不可能的。人力有穷时。尊重这个客观现实,但不放......
  • 华硕主板设置AMD-V方式
    进入BIOS界面开机/重启计算机时快速按压delete键,进入BIOS界面。开启AMD-V进入高级模式-》高级-》CPUConfiguration-》SVMMode-》Enabled设置好后按压F10键,点击OK,保存并退出,BIOS设置完成。大功告成!!!......