Toggle navigation
首页
问答
文章
积分商城
专家
专区
更多专区...
文档中心
返回主站
搜索
提问
会员
中心
登录
注册
中断栈
中断冲突
5
大家都不关注的中断栈
发布于 2020-12-25 10:47:54 浏览:1526
订阅该版
裸机世界里,老手都尽量不用中断,因为那增加了系统的不可靠性; RTOS里面,大家很少用中断,通过线程优先级来安排任务的重要程度; 但,有时候还是不可避免的要用到中断,这就涉及了一个大家不太关注的问题:中断栈。 官方文档说中断栈和任务栈独立,没说在什么地方设置。看一个帖子上说,中断栈就是裸机下设置的哪个堆栈,位置studio下在链接脚本里。 我们知道,任务栈通过ps可以查看以百分比显示,如果不足或者需要优化可以很直观。那么 1 中断栈如何查看设置是否合适,优化时以什么为标准? 2 如果设置不足会出现什么情况?堆栈踩踏?反映出来的是A问题,实际可能是B问题? 3关于开关中断临界区保护和进出中断指示,根据文档中心说如果中断ISR里面如果使用了内核的资源(信号量,互斥量。。。)最好给出进出中断指示,如果没给会出现什么问题? 4 我系统中用户的中断有2个,W5500和一个按键共2个IO中断,W5500给上层网络应用,一个按键中断进去后读3个IO值推算出键值然后发信号量让按键处理线程(根据键值计算显示界面索引)解除阻塞。情况是如果不操作按键系统好像没问题,但如果操作按键后1~3个小时后崩溃,并且embacktrace给出是busfault(与w5500相关的网络应用文件位置,而该位置是软件包自身demo)问题。 怀疑是按键相关的中断引起的,中断栈,开关中断保护,进出中断指示。昨天进行开关中断保护和进出指示做了测试问题依旧,今天设置了中断栈正在测试。
查看更多
3
个回答
默认排序
按发布时间排序
lit-yct
2020-12-25
这家伙很懒,什么也没写!
按照我的理解你说的中断栈应该是指的.s文件中的栈空间,而任务栈是在创建线程时申请或者指定的
NOUSED
2020-12-28
这家伙很懒,什么也没写!
1.中断栈?如果你指的进入中断后用的那个栈的话,这个通过启动文件.s中可以设置。至于如何确定合理的大小,这个就比较难了,看你函数嵌套几层、被调用的函数局部变量申请情况如何……和裸机下使用没什么区别,一般习惯在分散加载时先放全局变量,然后堆,最后栈(实际linker也是默认这么做的),栈顶设置在sram最后,所以即便溢出了,也是先覆盖你的堆区,影响不会太大,当然你说你堆区都被用完了,那栈溢出堆区数据也没了。 2.同1中的解释。问题表现就是数据被冲了,至于产生什么后果,不好说,具体情况具体具体分析。 至于3.4,这个就不太了解了。
杰瑞鼠
2020-12-29
2024龙行天下
还没找到根本原因,libmodbus软件包和wiznet软件包利用sal进行衔接部分有问题,Liblibmodbus如何正确传socketopt给wiznet是个问题,问了很多很久,官方一直没给出说明
撰写答案
登录
注册新账号
关注者
0
被浏览
1.5k
关于作者
杰瑞鼠
2024龙行天下
提问
207
回答
154
被采纳
4
关注TA
发私信
相关问题
1
rt_thread的中断栈
2
RT-Thread的系统堆栈在哪里进行设置?
3
rt_vsnprintf 函数内部数组分配不在栈内
4
开机时执行rt_hw_context_switch_to函数正常吗?
推荐文章
1
RT-Thread应用项目汇总
2
玩转RT-Thread系列教程
3
国产MCU移植系列教程汇总,欢迎查看!
4
机器人操作系统 (ROS2) 和 RT-Thread 通信
5
五分钟玩转RT-Thread新社区
6
【技术三千问】之《玩转ART-Pi》,看这篇就够了!干货汇总
7
关于STM32H7开发板上使用SDIO接口驱动SD卡挂载文件系统的问题总结
8
STM32的“GPU”——DMA2D实例详解
9
RT-Thread隐藏的宝藏之completion
10
【ART-PI】RT-Thread 开启RTC 与 Alarm组件
最新文章
1
使用百度AI助手辅助编写一个rt-thread下的ONVIF设备发现功能的功能代码
2
RT-Thread 发布 EtherKit开源以太网硬件!
3
rt-thread使用cherryusb实现虚拟串口
4
《C++20 图形界面程序:速度与渲染效率的双重优化秘籍》
5
《原子操作:程序世界里的“最小魔法单位”解析》
热门标签
RT-Thread Studio
串口
Env
LWIP
SPI
AT
Bootloader
Hardfault
CAN总线
FinSH
ART-Pi
USB
DMA
文件系统
RT-Thread
SCons
RT-Thread Nano
线程
MQTT
STM32
RTC
FAL
rt-smart
ESP8266
I2C_IIC
WIZnet_W5500
ota在线升级
UART
PWM
cubemx
freemodbus
flash
packages_软件包
BSP
潘多拉开发板_Pandora
定时器
ADC
GD32
flashDB
socket
中断
Debug
编译报错
msh
SFUD
keil_MDK
rt_mq_消息队列_msg_queue
at_device
ulog
C++_cpp
本月问答贡献
踩姑娘的小蘑菇
7
个答案
3
次被采纳
a1012112796
13
个答案
2
次被采纳
张世争
9
个答案
2
次被采纳
rv666
5
个答案
2
次被采纳
用户名由3_15位
11
个答案
1
次被采纳
本月文章贡献
程序员阿伟
7
篇文章
2
次点赞
hhart
3
篇文章
4
次点赞
大龄码农
1
篇文章
2
次点赞
ThinkCode
1
篇文章
1
次点赞
Betrayer
1
篇文章
1
次点赞
回到
顶部
发布
问题
分享
好友
手机
浏览
扫码手机浏览
投诉
建议
回到
底部