使用PIC单片机过程中,我经常遇到使用单片机时,只注重软件,而轻视硬件的设计人员。
功能调试一切正常,但是在产品使用时,常出现各种各样的问题;这不仅与软件的健壮性相关,同时也与硬件设计不够完善有很大关系;有些开发人员(尤其是偏重软件设计的开发人员)会提出:硬件不足的软件来弥补。
但实际情况是在硬件设计严重不足,软件弥补的产品将不能提供很高的可靠性。
就此,简单分享下我在硬件设计,提高可靠性的经验;当然,仅是对我使用PIC单片机积累的经验而已,不足之处,还请见谅。
单片机的电源供电设计:
1.芯片无论是否使用模拟部分和AD部分,外围的VDD和GND,VDDA、VSSA、Vref(如果封装有该引脚)都必需要连接,不可悬空;
①尽管有的芯片引脚的VDD,GND等内部已连接,但还是要在外围连接。
②相邻的VDD,GND等电源管脚连线之间,尽量不要出现涡流。从电流流向来说,建议所有的连线按电流流向走:VDD类的引脚电流向内,GND类的引脚电流向外。
③如果芯片管脚驱动大电流时,建议VDD,GND的连线尽量宽;对于PIC单片机而言,由于其电源引脚最大电流较大(达200mA),建议线宽至少0.5mm以上(所有电源引脚线宽总和)
④有必要的情况下,模拟电源与数字电源分开走线,再汇集到一点连接(Y型走线)。减少数字电源电路对模拟电路的影响。外围不同功能电路的电源连接方式也用Y型走线(布线允许情况下);
⑤单片机安装面底部尽量不布(或尽量少)信号线,使得在芯片底部的PCB铺铜时面积尽量大,起到屏蔽效果;
⑥供应单片机的电源连接从电源供应端开始,尽量少过孔走线(双面板情况下,多层板不计),减少电源供电内阻;
⑦布线设计时,所有功能模块电路尽量各自集中在一块(模块化),除信号传递外,尽量减少相系串扰。
2.去耦电容:
①每个VDD、GND类别的电源组 都应有去耦电容,容量至少为0.1μF的高频或MLCC电容。
②去耦电容位置尽量靠近MCU的电源脚,相互连接尽量无过孔,如果存在过孔连接电源,建议按下图方式布线:
③如果单片机驱动电流较大(总电流压≥50mA),建议还要增加去耦电容的容量,经验值一般是5mA/μF左右;但也不宜过大,造成电源电压上升速度过慢;针对PIC单片机本身而言,其最大的容量不超过220μF。
④如果单片机有专用的模拟量电源引脚(VDDA,GNDA)建议再增加LC滤波电路,提高单片机内部模拟电路的稳定性;如非必要,不建议使用RC的滤波电路,会造成较大的压降,影响稳定性。
⑤如非必要,去耦电容不要与其它数字电路共用;非用不可时,建议增加电容容量,并散流方式走线(即从去耦电容焊盘分别走线到各自的供电脚)。