|
重庆嵌入式开发用已知值填充ROM重庆嵌入式开发用已知值填充ROM 软件开发人员往往都是非常达观的一群人,只要让他们的代码忠实地长时间地运转就能够了,仅此而已。微控制器跳出应用程序空间并在非料想的代码空间中执行这种状况似乎是适当罕见的。 但是,这种状况产生的时机并不比缓存溢出或错误指针失掉引用少。它的确会产生,产生这种状况后的体系行为将是不确定的,因为默认状况下内存空间都是0xFF,或许由于内存区通常没有写过,其中的值或许只有天主才知道。不过有适当完备的linker或IDE技巧能够用来帮助识别这样的事情并从中恢复体系 —— 技巧便是使用FILL指令对未用ROM填充已知的位模式。 要填充未使用的内存,有许多不同的或许组合能够使用,但如果是想建立更加可靠的体系,最显着的挑选是在这些方位放置ISR fault handler。如果体系出了某些过失,处理器开始执行程序空间以外的代码,就会触发ISR,并在决议校正行动之前提供储存处理器、寄存器和体系状态的时机。 本文重庆嵌入式开发整理 |