【发布时间】:2015-12-23 11:28:07
【问题描述】:
我使用的是 ARM Cortex M3 架构,当我的电路板连续使用一段时间时,我的当前代码面临数据损坏问题,因为我使用的是内部闪存和 RAM,这可能导致在数据部分重写了一些数据。现在我打算使用一个带有程序的外部闪存,内部闪存将进行所有必要的初始化,一旦板子启动,内部闪存程序就会执行,然后我希望将外部闪存中的代码加载进去ram 并继续流动。请帮助我的方法或建议我更好的方法。
【问题讨论】:
-
您是否在不修改闪存等待状态的情况下提高了主时钟?当您重新启动电源时,它是否已损坏,或者它是否正常工作,然后稍后出现损坏?当你转储闪存时你看到了什么,它与你认为你编程的不匹配吗?
-
ahh .data 是内存,通常运行速度与处理器一样快,但可能不取决于设计,也许您正在超频内存?听起来这只是代码中的一个简单错误。长时间运行可能会增加故障的几率,因为处于某个时间的边缘,允许您没有计划的事件/中断,或者您计划的事件/中断太接近或出现故障并且您的代码损坏,等等……
-
我的频率是 50Mhz,我的主板设计用于从服务器接收数据并通过 7seg 显示器显示,一开始我设置了主板的 IP,但经过一段时间(7 天及更多),当我检查它被改变的IP。但我的电路板仍然接收数据并显示它。我被困在这一点上。
-
是否有闪存或内存等待状态设置,当您将时钟提高到 50Mhz 时,您必须增加等待状态?
-
您是直接从微控制器驱动显示器,还是里面有晶体管来提高功率?你确定微控制器可以驱动这些部分,尤其是当它们全部启动时最坏的情况?它不会耗尽芯片,因此它在保持 ram 或其他逻辑正确方面是微不足道的?同样地,当您从全部打开到全部关闭时,无论您同时驱动多少信号,地反弹?你建了多少,有多少有这个问题?您是否长时间运行它而没有连接显示器以消除负载并查看它是否仍然损坏?
标签: arm