在调试模式下,Xil_Assert系列宏会调用Xil_Assert来检查参数是否正常。如果不正常,缺省情况下,没有打印,会进入死循环。
通过调用void Xil_AssertSetCallback(Xil_AssertCallback Routine), 设置回调函数, 可以自己处理失败情况,比如增加打印。
另外也可以修改变量Xil_AssertWait为0,可以避免死循环情况。
责任编辑:xj
原文标题:【工程师分享】避免Xil_Assert系列宏导致的死循环
文章出处:【微信公众号:FPGA开发圈】欢迎添加关注!文章转载请注明出处。
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
举报投诉
-
变量
+关注
关注
0文章
596浏览量
28112 -
ASSERT
+关注
关注
0文章
17浏览量
7136
原文标题:【工程师分享】避免Xil_Assert系列宏导致的死循环
文章出处:【微信号:FPGA-EETrend,微信公众号:FPGA开发圈】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
相关推荐
聊聊MCU死循环,用for(;;)还是while(1)?
首先,问大家一个问题:你们写单片机程序【死循环】时,喜欢用for(;;)还是while(1)?快来为你喜欢用的【死循环】打call,评论区等你哦~一位工程师发现,国外工程师在给demo在做死循环
如何在if和assert中做选择
的?!
看来,有必要先简单说一下 assert 断言。
assert() 的原型是:
void assert(int expression);
1. 如果宏的参数求值结果为非零
发表于 04-08 06:13
printf在keil5的AC6编译器下运行进入死循环的原因?
Initialization ...n\");把信息显示在屏幕上,用AC5编译时运行正常,但是编译速度太慢;而用AC6编译时,速度快,但运行出现死循环(更改库编译都能通过),这个宏定义
发表于 04-07 06:46
为何国外工程师偏爱使用for(;;)来实现MCU死循环?
一位工程师发现,国外工程师在给demo在做死循环时用的是for(;;),而不是常用的while(1)。这仅仅是个人习惯的问题,还是有更深层次的含义?
发表于 04-01 11:26
•133次阅读
STM32F412RET6串口轮询发送阻塞等待TC,导致程序陷入死循环怎么解决?
测试时,发现CPU程序运行卡死了,通过STM32 ST-LINK Utility工具,排查到了程序陷入死循环
发表于 03-21 07:51
编写裸机Bootloader有什么办法判断APP是否有效,从而避免重复跳入导致复位再跳入的情况?
编写裸机Bootloader有什么办法判断APP是否有效,从而避免重复跳入导致复位再跳入的情况。
发表于 02-19 06:19
psoc6 i2c读写时死循环是什么原因导致的?
,i2cContext)))
{
}
}
但调试中发现有很大概率在下面的代码中死循环,while (0UL != (CY_SCB_I2C_MASTER_BUSYCy_SCB_I2C_MasterGetStatus
发表于 02-02 11:02
如何避免PLC程序卡死呢?
编写稳定的程序:编写良好的、稳定的PLC程序是避免程序卡死的关键。确保程序逻辑清晰、简洁,并遵循编程最佳实践。避免死循环、逻辑错误和冲突的发生。
gcc成功编译内嵌汇编程序(printf输出打印),指令PC一直在死循环怎么解决?
,观察发现pc值在800003d6和800003d8处陷入死循环不再往下继续执行,想知道如何才能解决死循环正确打印输出,希望大家能够指点一二。
发表于 08-12 06:44
Too many open files错误导致服务器死循环
0x01 前言 在服务器编程中,经常会遇到 Too many open files 这个报错,而且这个报错如果处理不好,很有可能会导致服务器死循环。 0x02 示例代码 以上是我用rust
在什么情况下信号量断言会失效呢?
);问题二:有开门狗,平时打断点让代码停下,时间一长,看门狗会复位,但是现在死循环卡在上面dummy那里,为什么看门狗反而不起作用了呢。
发表于 05-11 14:35
评论