市面上处理器(控制器)架构类型特多
x86、MIPS、ARM、PowerPC......
似乎ARM架构处理器的启动过程,是论坛讨论的比较多的
各种项目中,根据其特点,又会选用不同种类的控制器
问题来了,使用新的控制器完成项目任务,有必要去了解它的启动过程吗?
抛个砖:
个人觉得能用起来就好,用圆珠笔写字,还有谁去研究圆珠笔的原理?
起步阶段,跑起来就可以了。产品阶段,每个环节都很重要,很多时候出问题都在小地方上。
问题来了,使用新的控制器完成项目任务,有必要去了解它的启动过程吗?
这个还是需要的吧 了解一下也好啊
要看你的干嘛的,CPU越来越复杂,各个厂家提供的库也越来越相信,从产品角度来说,没有必要去了解芯片是如何工作的,能用好就行。但是问题来了,有的时候不了解这些没办法用好,比如中断实际是如何处理的(虽然楼主说的是启动过程,但是有时候会涉及中断),不了解这些有的时候做的东西就不可靠。我就遇到过C2000系列的看门狗的问题,芯片默认看门狗是开的,因为启动过程不影响看门口。但是TI给的例程里面启动的时候就把看门狗管了,如果不了解可能无法确认自己的看门狗是合适开始工作的,能够在什么情况下为产品提供保护。
总的来说,只是用的话没有必要了解启动过程,但是要想用好,可靠的应用,了解启动过程还是比较好的
个人觉得没必要。但是有空看一下还是可以的,了解了其工作原理对以后设计有帮助,会一两个就可以了。
想了很久了,一直想再进一步了解一下,代码转成2进制是一个什么样的过程,然后烧录又是怎么一个一个二进制进行的
个人觉得,如果只是追求功能上的成功的应用,不是很有必要去了解;
NXP新年新气象大家一起嗨起来 + 恩智浦KW41Z有奖创意征集令高能来袭 +https://www.eeworld.com.cn/huodong/201611_NXPKW41ZActivity1/index.html
LZ指的是MCU的boot过程吧,也就是如何执行到入口main()。按经验讲,通常使用厂家的demo就好了(或者使用IDE的默认工程配置),根本不需要关心具体的启动步骤。除非LZ想做二级boot程序...
确实搞boot或者iap还是需要了解这些的
当然某些场合开了看门狗,在reset之后需要保持RAM中的数据等等这些情况也是需要了解启动过程的
如果只是追求功能上的成功的应用,不是很有必要去了解 用多了你就会慢慢理解的。后面能理解当然更好。
我觉得没必要
生活就是油盐酱醋再加一点糖,快活就是一天到晚乐呵呵的忙
===================================
做一个简单的人,踏实而务实,不沉溺幻想,不庸人自扰
也许应该了解一下,俺比较懒,一般不会去碰,除非有特别需求
引用: jishuaihu 发表于 2015-5-4 17:32
要看你的干嘛的,CPU越来越复杂,各个厂家提供的库也越来越相信,从产品角度来说,没有必要去了解芯片是如何工作的,能用好就行。但是问题来了,有的时候不了解这些没办法用好,比如中断实际是如何处理的(虽然楼主说的是启动过程,但是有时候会涉及中断),不了解这些有的时候做的东西就不可靠。我就遇到过C2000系列的看门狗的问题,芯片默认看门狗是开的,因为启动过程不影响看门口。但是TI给的例程里面启动的时候就把看门狗管了,如果不了解可能无法确认自己的看门狗是合适开始工作的,能够在什么情况下为产品提供保护。
总的来说,只是用的话没有必要了解启动过程,但是要想用好,可靠的应用,了解启动过程还是比较好的
是啊,其实启动过程包含不少东西,特别是初始化引导和异常的处理
ji版的这个回复给力
其实个人也是这么认为
如果不是比较苛刻的要求,如何启动倒真的没多大必要去深究
从上电到进入main
这个短暂的过程其实做了很多事情,有些甚至关系到器件的后期运行
白板有何高见?
引用: tuv 发表于 2015-5-4 22:17
LZ指的是MCU的boot过程吧,也就是如何执行到入口main()。按经验讲,通常使用厂家的demo就好了(或者使用IDE的默认工程配置),根本不需要关心具体的启动步骤。除非LZ想做二级boot程序...
写boot代码应该要对内核工作过程比较熟悉吧
一般什么情况必须改写boot呢?
从外部存储器加载代码?更改默认分配堆栈空间?
欢迎层主科普MCU的工作机制
本帖最后由 ljj3166 于 2015-5-5 21:56 编辑