因为买了一个eZ30-Chromos Development tool,上个周末,花了比较长的时间学习MSP430,有了一些思考:
1. 最终产品决定芯片参数
工作用的单片机是Power Architecture的MPC5634M/SPC563M芯片,主要参数是工作频率80MHz,1.5M Flash和96K RAM,工作频率不高是因为一个类似于协处理器的eTPU模块。单纯对比参数的话,在这芯片面前,MSP430简直弱爆了,而且价格上也是数量级的差别。周末第一眼看这个MSP430的参数时,觉得这么点容量,够干嘛,在MPC5634M里芯片各个模块的初始化就差不多满了。但是仔细看完片上模块和其他信息后也就觉得没什么的。目标产品是什么就选择什么参数的芯片,毕竟成本很重要。这个观点谁都知道{:soso_e113:},有点废话了。
2. 应用领域决定程序思想
因为应用领域的不一样,MSP重点关注的是低功耗的应用,而且产品线的升级,工艺和技术水平的提高,继续在降低功耗。虽然也知道知道消费电子都在拼低功耗,但是没有实际关注过实际的数字,没有对比时,感觉是没那么强烈的。资料中MSP430的功耗强调μA和nA这种级别。本人应用产品,几乎不关注功耗,硬件的low side driver一般也是按照A级别在考虑。这个差别对程序设计的影响是很大,看了一些MSP430的例程,程序很多时候都要在低功耗模式和运行模式之间在切换。而每个细节的设计都要更多为降低功耗服务。
3. 开发工具的统一化
基于eclipse环境的CCS5,这两年来,各个芯片厂商自己开发工具多数是基于eclipse或者GNU工具链,而IAR,GreenHills等等这种工具越来越少。好处是开发这些工具的难度降低,芯片厂商根据自己的芯片修改就能完成,而不需要第三方介入;而我们这些个工程师可以用到低价,甚至是免费的开发工具,好处不言而喻。另外一个好处是,所有芯片的工具都很类似,从一款芯片换到另一款芯片,剩下了学习工具的烦恼。
不好的地方时,因为工具集合了太多东西,不管需要不需要的都给安装上了,导致开发工具工具太大了,CCS5安装后竟然有3.7G。打开软件也需要花比较长的时间。总之这些个工具是耗电脑资源的,处理器,内存,硬盘什么都往高配上靠是没错的,以后估计固态硬盘是必须的啦。
4. 芯片资源可视化配置
可视化配置环境,作为几个厂商推广的噱头。效果怎么样,没有实际使用过不好评价。要是效果如厂家描述的那么好,我这大半年的工作就是了解、熟悉和使用芯片资源的配置岂不轻易的就能让工具取代,有点紧张饭碗的问题。
我们这些工程师未来的路如何继续,我的想法是:
- 不管复杂简单先熟悉和使用一款单片机,理解单片机及其片上外设、和板上外设的基本原理,包括硬件原理和软件原理;这对快速学习和使用其它的单片机会很有帮助。
- 提高软件理论,包括编程语言,编译原理,操作系统和算法等等。不管半导体、微电子怎么变革,到目前为止软件的思想应该还是冯诺依曼体系,那软件设计就可以脱离硬件。这有点以不变应万变的意思。
- 拓展视野。随着各种易用工具出现,要保持自己的竞争力越来越难了。个人觉得不管自己身处哪一行,多了解别的行业的信息,也许有结合点,也许有借鉴意义,随时提高自己的能力。
有点浮躁,水贴一篇,欢迎大家讨论、拍砖和补充{:soso_e113:} |