yono 发表于 2024-4-12 11:26:36

FMC_SRAN的奇怪现象,任务内和任务外查询同一地址,地址信号不一致

测试平台使用的安富莱V7板

仅使用逻辑分析仪勾出了引脚波形,其实是没有SRAM外设的
当我读一个地址时,FMC片选3区域,地址线路0x17,在任务外可以正常读,波形很正常。但是任务内再读,会读好多地址。

此为任务外运行,波形正常(设置的8位地址线模式)


此为任务内运行,诡异的多了很多读使能


完蛋了,找不到问题了,学习不努力,处处是魔法

yono 发表于 2024-4-12 15:28:01

我发现问题是啥了,但是没办法解决。
我用的是带模组管理器的threadX,如果用不带模组管理器的threadX内核则没有这个问题。:'(
这可咋办,有没有老哥研究过。

yono 发表于 2024-4-12 18:17:22

又有新发现了,我带模组管理器的threadX,MPU使能不上。我记得这个模组管理器是会把MPU接管掉的,只要一进任务调度,不知道哪里就会把MPU给我关掉。

但是安富莱 ThreadX Module Main 有模组管理器的例子,在例子中MPU可以手动控制,这是哪里配置的吗?

eric2013 发表于 2024-4-13 08:50:25

yono 发表于 2024-4-12 18:17
又有新发现了,我带模组管理器的threadX,MPU使能不上。我记得这个模组管理器是会把MPU接管掉的,只要一进 ...

使用非MPU模式即可。我分享了一个MPU管理的和一个非MPU管理的。

yono 发表于 2024-4-19 14:44:09



threadX的module_manager在tx_thread_schedule.S中有这样的操作,导致调度时关闭MPU,屏蔽可以使得初始化时的MPU设置生效。



但是仍然会带来新的问题,如果加载使用了MPU的APP,管理器本体的MPU设定就被APP覆盖,就不生效了,导致很多硬件接口不能正常工作。
如何让管理器和APP都自由使用MPU,是一个问题。

eric2013 发表于 2024-4-20 08:32:26

yono 发表于 2024-4-19 14:44
threadX的module_manager在tx_thread_schedule.S中有这样的操作,导致调度时关闭MPU,屏蔽可以使得初始 ...

每个APP和BOOT都可以独立动态配置MPU的。可以考虑合理规划下。
页: [1]
查看完整版本: FMC_SRAN的奇怪现象,任务内和任务外查询同一地址,地址信号不一致