嵌入式开发必知7个易操纵且可以长久使用的技巧.docx
《嵌入式开发必知7个易操纵且可以长久使用的技巧.docx》由会员分享,可在线阅读,更多相关《嵌入式开发必知7个易操纵且可以长久使用的技巧.docx(7页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、嵌入式开发必知7个易操纵且可以长久使用的技巧嵌入式开发必知7个易操纵且可以长久使用的技巧控制工程网论坛aaing导语:成为一个正式的开发工程师。它是一个艰辛的经过,需要开发人员维护和治理系统的每个比特和字节。从标准完善的开发周期到严格执行和系统检查,开发高可靠性系统的技术有很多种。今天给大家介绍7个易操纵且可以长久使用的技巧,它们对于确保系统更加可靠地运行并捕捉异常行为大有帮助。成为一个正式的开发工程师。它是一个艰辛的经过,需要开发人员维护和治理系统的每个比特和字节。从标准完善的开发周期到严格执行和系统检查,开发高可靠性系统的技术有很多种。今天给大家介绍7个易操纵且可以长久使用的技巧,它们对于
2、确保系统更加可靠地运行并捕捉异常行为大有帮助。技巧1用已知值填充ROM软件开发人员往往都是非常乐观的一群人,只要让他们的代码忠实地长时间地运行就可以了,仅此而已。微控制器跳出应用程序空间并在非料想的代码空间中执行这种情况似乎是相当少有的。然而,这种情况发生的时机并不比缓存溢出或者错误指针失去引用少。它确实会发生!发生这种情况后的系统行为将是不确定的,由于默认情况下内存空间都是0xFF,或由于内存区通常没有写过,其中的值可能只有上帝才知道。不过有相当完备的linker或者IDE技巧可以用来帮助识别这样的事件并从中恢复系统。技巧就是使用FILL命令对未用ROM填充已知的位形式。要填充未使用的内存,
3、有很多不同的可能组合可以使用,但假如是想建立更加可靠的系统,最明显的选择是在这些位置放置ISRfaulthandler。假如系统出了某些过失,处理器开场执行程序空间以外的代码,就会触发ISR,并在决定校正行动之前提供储存处理器、存放器和系统状态的时机。技巧2检查应用程序的CRC对工程师来讲一个很大的好处是,我们的IDE和工具链可以自动产生应用程序或者内存空间校验和(Checksum),进而根据这个校验和验证应用程序是否完好。有趣的是,在很多这些案例中,只有在将程序代码加载到设备时,才会用到校验和。然而,假如CRC或者校验和保持在内存中,那么验证应用程序在启动时(或者甚至对长时间运行的系统定期验
4、证)是否仍然完好是确保意外之事不会发生的极好途径。如今一个编程过的应用程序发生改变的概率是很小的,但考虑每年交付的数十亿个微控制器以及可能恶劣的工作环境,应用程序崩溃的时机并不是零。更有可能的是,系统中的一个缺陷可能导致某一扇区发生闪存写入或者闪存擦除,进而破坏应用程序的完好性。技巧3在启动时执行RAM检查为了建立一个更加可靠和扎实的系统,确保系统硬件正常工作非常重要。毕竟硬件会发生故障。(幸运的是软件永远不会发生故障,软件只会做代码要它做的事,不管是正确的还是错误的)。在启动时验证RAM的内部或者外部没有问题,是确保硬件可以如预期般运作的一个好方法。有很多不同的方法可用于执行RAM检查,但常
5、用的方法是写入一个已知的形式,然后等上一小段时间再回读。结果应该是所读就是所写。真相是,在大多数情况下RAM检查是通过的,这也是我们想要的结果。但也有极小的可能性检查不通过,这时就为系统标示出硬件问题提供了极好的时机。技巧4使用堆栈监视器对很多的嵌入式开发者而言,堆栈似乎是一股相当神秘的气力。当奇怪的事情开场发生,工程师终于被难倒了,他们开场考虑,也许堆栈中发生了什么事。结果是盲目地调整堆栈的大小和位置等等。但该错误往往是与堆栈无关的,但怎能如此确定?毕竟,有多少工程师真的实际执行过最坏情况下的堆栈大小分析?堆栈大小是在编译时就静态分配好的,但堆栈是以动态的方式使用的。随着代码的执行,应用程序
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 嵌入式 开发 操纵 可以 长久 使用 技巧
限制150内