前两天,有一个做嵌入式系统的学生找到我,说他的GPRS模块总是有问题不能解决。GPRS模块选用G24,以前曾经做过第一版,都调试通过了;现在做第二版,反而调试不出来了。
出现的问题非常奇怪,使用at+csq? at+cpin? at+creg?三个命令都正常,测试程序都可以测试通过的;使用pppd call xxx的命令也可以建立ppp拨号连接。在应用程序中,需要使用ftp命令传输大的图像文件,ftp也可以登陆上去,但是传输大文件的时候系统没有反应,传输1K左右的小文件没有问题?难道是GPRS的传输和文件大小有关?百思不能其解,反复的检查电路原理图,也没有发现什么问题。
这个时候,我想起了使用示波器观察电源,发现GPRS的电源波纹比较大。GPRS使用了一个5V转3.8V的电路,使用TPS的一个开关电源,而5V电源来源于输入24V电源,又使用了一个24V转5V的开关电源,进一步的调试发现电源干扰来源于24V转5V。电源的电路原理图是没有问题的,问题是出在布线上和元器件布局上,开关电源的输入线和输出的电感呈垂直交叉状,也就是输入线正好位于输出电源的电感下面,导致了电源信号产生了自激和干扰。直接将芯片的输入管腿和地面的导线切断,从旁边飞了一根电源输入线到芯片的管脚,使用示波器观察,电源输出较纯净,GPRS的FTP传输大文件正常。
通过帮助别人调试,我自己也深有感触和体会,嵌入式系统中的开关电源设计的重要性。
下面我谈谈自己的看法和经验。
目前,嵌入式系统中主要有两类电源,线性电源和开关电源。线性电源的具有输出波纹小,电源稳定,使用简单等优点,但是功耗比较大;而开关电源可以做的很小,具有很高的转换效率,缺点是一般需要电感和电容、二极管等外围电路,输出电源可能包含高频谐波,并且对布线也有一定要求。
嵌入式系统中,特别是手持设备中,由于对功耗较为敏感,并且嵌入式系统大部分是数字电路,抗噪声能力强,开关电源也使用的比较多了;但是对于模拟电路的电源供电,例如GPS、GPRS等部分(其模块内部包含了模拟信号接收部分),对电源的要求比较高,对这部分的电路就应该仔细的设计,最好使用线性稳压电源,如果使用开关电源,需要仔细设计,并且在布线上额外考虑,实际上,每个开关电源芯片资料上都有参考PCB设计图。
还记得在去年,设计一个GPS接收电路,GPS模块的接口只有收、发、地、电源几个信号,却总是接收质量不好,只能收到1-2个星,调试了很长时间,后来发现是主板上的开关电源布线的干扰引起的。
嵌入式系统中经常会出现这些问题,主要是与在设计中的对电路的电磁干扰重视程度不够有关。嵌入式基本上是数字电路,在频率不是很高的情况下,对布线基本上没有要求,即使使用软件的自动布线的功能,一般都可以工作,所以在设计中往往忽略了电磁干扰和布线的问题。
有奖活动 | |
---|---|
【有奖活动】分享技术经验,兑换京东卡 | |
话不多说,快进群! | |
请大声喊出:我要开发板! | |
【有奖活动】EEPW网站征稿正在进行时,欢迎踊跃投稿啦 | |
奖!发布技术笔记,技术评测贴换取您心仪的礼品 | |
打赏了!打赏了!打赏了! |
打赏帖 | |
---|---|
vscode+cmake搭建雅特力AT32L021开发环境被打赏30分 | |
【换取逻辑分析仪】自制底板并驱动ArduinoNanoRP2040ConnectLCD扩展板被打赏47分 | |
【分享评测,赢取加热台】RISC-V GCC 内嵌汇编使用被打赏38分 | |
【换取逻辑分析仪】-基于ADI单片机MAX78000的简易MP3音乐播放器被打赏48分 | |
我想要一部加热台+树莓派PICO驱动AHT10被打赏38分 | |
【换取逻辑分析仪】-硬件SPI驱动OLED屏幕被打赏36分 | |
换逻辑分析仪+上下拉与多路选择器被打赏29分 | |
Let'sdo第3期任务合集被打赏50分 | |
换逻辑分析仪+Verilog三态门被打赏27分 | |
换逻辑分析仪+Verilog多输出门被打赏24分 |