怎么选择合适的嵌入式设计软件?
不管你在什么行业,机会的竞争都是很激烈的。如果你是一位嵌入式软件开发者,你面临的压力是不仅开发速度要比以前更快,开发的效率也需要更高;也就是说:你需要在比以往更短的时间内作出性能更高、漏洞更少的软件。
而你完成工作的能力往往跟你选择的嵌入式软件设计工具有莫大的关系。你需要能帮你更快更高效地设计软件的新工具,而不会给你带来阻碍。
为了帮助你选择合适嵌入式设计工具,我们总结了你需要考虑的最重要的五个方面。
一、设备/内核支持
在选择嵌入式设计软件时,你首先需要考虑的你所选择的软件对你所选择的设备的支持程度。为了明确你的需求,你需要列出你的产品中出现的设备的清单。然后,逐个检验你选择的嵌入式设计软件是否支持你的设备。
很可能会出现这种情况,新的软件再也无法对旧设备提供支持。当你不需要开发新的应用,而只需要对已有的软件进行维护时,你已经拥有的软件或许就已经足够了。
接下来,你还要考虑你会在未来使用到的设备。你当然希望你购买的嵌入式设计软件也能支持更新的嵌入式设备,你不想每一次出现新设备的时候都购买一次软件,这样不仅成本很高,熟练掌握新软件也需要时间和精力。
二、易用性
易用性也是非常重要的功能。难用的工具不仅会让开发者精神崩溃,而且也延长了开发时间。
为了确保你看重的嵌入式设计软件的易用性合乎你的胃口,可以下载该软件进行试用,一般的开发软件都提供了15-30天的试用期,这对于不想花冤枉钱的你自然是格外重要的。
要做到这一点,首先可以建立一个实验项目。不需要太复杂——毕竟你只有30天时间——但这个项目必须要复杂到能让开发者验证软件的开发性能和编译质量。
在你的测试的时候,一定不要使用软件提供者给出的参考项目,这些通常都针对软件做了特定的优化,感觉自然好得多。你应该自己写代码或者获取非软件提供商提供的代码。
三、对常见功能的支持
对软件的易用性测试完成之后,还要检查软件对不同功能的支持,其中有些功能是十分重要的,而有的软件并不具备。比如是否支持实时操作系统(RTOS),是否支持通信的硬件和软件,如:USB、TCP/IP、蓝牙等。如果的设计需要该功能,而你测试的软件却没有该功能,那么你可能会需要大量的时间和金钱来设计自己的解决方案。
另外一项对你来说十分重要的功能是该软件是否支持功能安全标准,如ISO 26262,这些标准为软件工具的资格提供了指导。如果这对你很重要,你所需要的软件应该能提供对所要应对的标准的解决方案。
四、调试
没人能一次性设计出完美的软件(当然“hello world”除外),尤其是现在的软件的复杂度已经非常大。这就意味着开发者需要在调试上花费大量的时间,所以调试器的速度和性能对于节省开发者的时间也非常重要,进而可能会影响到产品上市的时间。以下是一些你可能需要关注的功能:
·多个信息窗口,能让你监控变量、内存和栈。
·能让你根据不同的指令数、周期数和计时器设置复杂的断点进而中断指令执行。
·保存和恢复内存,能让你轻松地回到系统之前的状态。
五、技术支持
最后,考虑一下供应商所能提供的技术支持的类型。供应商之间的技术支持类型往往有很大不同。一些只提供在线的论坛支持,有的则提供e-mail支持,但这样就算你能找到解决方案,也可能已经用掉了很多时间。
所以我建议你选择能提供良好技术支持的供应商,这一点你在试用期的时候就可以进行一些测试。向他们发送一个支持请求,看结果如何。而通常具有良好技术支持的软件的售价并不比其他软件的价格高出不少;当你真的需要技术支持时,你就会发现这有多么重要。