单片机最小系统设计详解:晶振、复位电路与上电时序的正确打开方式
很多单片机项目半路出问题,根子不在程序,而在最不起眼的最小系统上。所谓最小系统,就是让单片机跑起来所需的最少外围电路,通常包括电源、晶振、复位电路和下载调试接口。把这几个部分设计扎实,后面的开发才能安稳。本文逐一拆解设计要点。
先说电源。单片机对电源纹波很敏感,供电入口要先放一个几微法的大电容做储能,再在每个电源引脚附近就近放0.1微法的去耦电容,形成高低频搭配。电源走线尽量加粗,避免压降。如果系统里有电机、继电器等大电流器件,必须单独供电并做隔离,防止拉垮单片机电源。
再看晶振。有源晶振只需供电就能输出时钟,无源晶振则要配合单片机内部的振荡电路,需要外接两个负载电容,容值按数据手册推荐选,常见15到33皮法。晶振的走线要尽量短,远离高频和强干扰区域,用地线包围。外部时钟对PCB布局比较敏感,布局不当会导致起振困难或频率漂移。
复位电路是新手最容易想当然的部分。很多芯片有内部上电复位,但外部复位电路依然建议保留。简单方案是阻容复位:复位脚接一个10K上拉电阻和一个0.1微法电容到地,上电时电容充电产生一个低电平复位脉冲。调试时如果想手动复位,可以在复位脚和地之间加一个按键。
下载调试接口千万别省。预留SWD或ISP接口,哪怕量产时不用,开发阶段也离不开。接口最好引出电源、地、数据线,方便用下载器连接。PCB上给下载接口留好位置和空间,否则飞线调试会非常痛苦。很多项目赶进度省略了下载接口,结果每次烧程序都要拆壳,教训深刻。
上电时序也要考虑。如果外围模块和单片机共用一个电源开关,上电瞬间多个模块同时初始化,可能造成电流冲击或竞争。必要时给外设加电源使能控制,让单片机先起来、稳定后再启动外设。掉电侧则可以加掉电检测,通过分压电阻监测电源电压,电压跌到阈值就提前保存数据。
最后提醒:最小系统的每个元件都要有存在的理由,别照抄别人的原理图却不知道为什么。动手做一个最小系统板,从画图到焊接再到点灯,把每个环节亲自走一遍,你会对整个体系有完全不同的理解。这是嵌入式硬件入门的必修课,值得认真对待。 |
|
|
|
|
|
|
|