公司来一个新人让我带,最近折腾一个系统。有天他跑来找我,说刚刚系统还好好的,载了一下新程序系统就瘫痪了,程序无法再次更新,一直查不出原因来。 $ Z+ g6 }4 c. Y1 l6 y1 B他困惑地喃喃嘀咕:“我程序也没改动什么啊”。& V. j1 J4 a5 Q8 o$ L
“引导程序也不能载吗?”,我问。5 _3 I, M; p! E& O
“恩,也不行”,他有些迟疑,好像什么东西忽略了。; z1 A" q$ \: d2 Y/ G
我往他座位上一瞄,“短路了”,我说。: g2 A& F" h: P' v
他用万用表一搭,果然短路了。在载程序的操作中,他不小心让那些用于示波器抓波形的调试线碰到地了。1 ~) }( A0 D0 n! r M9 D
“你怎么看出来的?”他一脸惊奇的看着我。2 p- {' v- G6 s+ ]; n
我指了指电源指示灯。“哦(升调符)?”他有些疑惑,然后一脸赞叹:“喔(降调符)!厉害,厉害!” - o! \4 \4 t; u# c我窃想,如果你是美女就好了。2 P. g/ b8 D$ ~1 c0 i+ M. e1 e
电源指示灯的亮度通常和流过的电流成正比,系统如果短路,电流异常大,指示灯的自然会有些“耀目”的感觉。此外,他反馈连引导程序也没法烧录,我基本就断定是硬件问题。只要mcu的供电正常,下载器的相关io正确,没有程序不能烧的。我心中已有定论,过去直接就看电源指示灯确认一下而已。此时我心中得意,有些成就感,但不免有些苦涩。当年,我也是这么过来的。初入职场时,没自信也不大会表达,唯有些“狠劲和韧劲”,那可是昏天黑地地查软件查硬件,撞破南墙得出经验。这些教训得来的经验,促使我牢记这一切。如今的下一代90后,他们本着不懂就问的精神,即使眼下告诉他们答案,等下次情况重现时,答案通常已经忘记。# t: m5 h! p l( X. `9 r
所以,在此我要慎重建议初入职场的工程师。在不影响工程进度的情况下,请尽量地独立思考解决问题。值得一提的是,指示灯的闪烁同样可以判断系统的运行状态,它表示系统正在操作一个“大功率外部设备”。再透过闪烁的强弱和间隔时间,你可以判断系统在操作哪个设备。' C" C3 m* Y% H
初入职场的工程师要记得做好笔记哦!~