ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

基于SC1088的迷你FM收音机:变容二极管电调谐原理与制作实战

基于SC1088的迷你FM收音机:变容二极管电调谐原理与制作实战 1. 从一颗SC1088说起为什么现在还有人折腾模拟收音机前阵子整理元件盒翻出来几片SC1088封装是SOP-16引脚间距1.27mm放在手里轻飘飘的。这东西在十几年前是不少低价收音机方案的主力现在被各种数字调谐芯片和软件无线电方案挤到了角落。但我还是决定拿它做一台迷你FM收音机原因很简单它把高频接收、中频放大、鉴频这些环节全部集成在一颗芯片里外围只需要少量阻容和电感特别适合拿来理解电调谐到底是怎么一回事。很多人对收音机的印象还停留在“拧旋钮找台”的阶段实际上现代FM接收机早就用上了电压控制频率的机制。SC1088本身支持机械调谐也支持电调谐区别就在于变容二极管两端的电压由谁提供。机械调谐靠的是可变电容动片定片之间的容量随旋转角度变化电调谐则是用变容二极管替代可变电容通过改变反向偏置电压来改变结电容从而实现频率选择。这个转换过程听起来简单但实际调试时会遇到不少细节问题比如调谐电压的纹波、变容二极管的线性度、以及本振频率的漂移。这篇文章面向的是有一定电路基础、想动手做一台迷你FM收音机的朋友。我会从SC1088的内部结构讲起拆解电调谐的实现原理给出完整的硬件设计思路包括PCB布局、元件选型、调试步骤以及我在实际制作中踩过的坑。如果你之前只玩过模块化开发板这次可以体验一下从分立元件到系统联调的完整流程。整机目标尺寸控制在40mm×30mm以内供电用两节AAA电池或者USB 5V降压输出接耳机或者小功率功放。2. SC1088内部框图与FM接收链路拆解2.1 芯片内部到底集成了什么SC1088是一颗单片FM接收芯片采用双极性工艺工作电压范围2.0V到6.0V典型值3.0V。它的内部框图大致可以分为四个部分射频前端、本振与混频、中频放大与限幅、鉴频与音频输出。射频前端包含低噪声放大器和混频器输入阻抗约50Ω实际使用时需要通过LC网络匹配到天线。本振部分是一个压控振荡器外接一个LC谐振回路振荡频率比接收频率高10.7MHz这是FM接收的标准中频。混频器把射频信号和本振信号混频输出10.7MHz的中频信号。中频放大级由多级差分放大器组成总增益约60dB到80dB同时带有限幅功能把调频信号的幅度变化去掉只保留频率变化。鉴频器采用正交鉴频方式外接一个10.7MHz的陶瓷滤波器或者LC谐振回路把频率变化转换成音频电压。音频输出级可以驱动32Ω耳机输出幅度约100mV到300mV。这里有个关键点SC1088的中频频率固定为10.7MHz这意味着本振频率必须始终比接收频率高10.7MHz。接收88MHz到108MHz的FM广播本振频率就要覆盖98.7MHz到118.7MHz。这个频率范围决定了本振LC回路的参数也决定了变容二极管的容量变化范围。2.2 电调谐在接收链路中的位置电调谐的核心是变容二极管。它工作在反向偏置状态PN结的耗尽层宽度随反向电压变化结电容也随之变化。常见的变容二极管如1SV149、BB910、MV2105等容量范围从几pF到几十pF容量比大约3:1到5:1。把变容二极管并联在本振LC回路的电感两端用电压控制它的容量就能改变本振频率。SC1088的调谐引脚通常标为VT或TUNE内部有一个变容二极管外部只需要接一个电位器或者DAC电压。但内置变容二极管的容量范围有限如果要做宽范围调谐最好外接一个变容二极管通过耦合电容接入LC回路。这样调谐电压范围可以做到1V到8V覆盖整个FM波段。实际电路中调谐电压来自一个分压网络。如果用机械电位器旋转角度对应电压变化但缺点是精度低、易受振动影响。如果用单片机PWM加RC滤波或者专用DAC就可以实现数字调谐和频率显示。这也是为什么很多人在做FM收音机时会搭配STM32或51单片机目的就是产生稳定的调谐电压并驱动LCD显示频率。2.3 中频滤波与鉴频回路的选择中频滤波器决定了邻道选择性。SC1088的混频输出是10.7MHz需要外接一个10.7MHz的陶瓷滤波器带宽通常选180kHz到280kHz。带宽越窄选择性越好但音频高频响应会变差。我试过用SFU10.7MS2和SFU10.7MS3两种滤波器前者带宽180kHz后者280kHz。实际听感上180kHz的滤波器在强台附近能明显减少干扰但高音部分有点发闷280kHz的滤波器声音更通透但邻道干扰更明显。鉴频回路用的是一个10.7MHz的LC谐振回路并联一个变容二极管或者固定电容。这个回路的Q值影响鉴频灵敏度Q值太高会导致音频失真Q值太低则输出幅度不够。通常用TOKO的10.7MHz中周内部有电容外部只需要微调电感。如果没有中周可以用10.7MHz的陶瓷谐振器代替但鉴频S曲线会略有不同需要调整音频输出端的去加重网络。3. 变容二极管电调谐的底层逻辑与参数计算3.1 变容二极管的C-V特性变容二极管的结电容与反向电压的关系可以近似表示为C(V) C0 / (1 V/V0)^γ其中C0是零偏压时的结电容V0是接触电势差γ是电容变化指数通常在0.3到0.5之间。以BB910为例零偏压时容量约30pF反向电压8V时容量约3pF容量比约10:1。但实际使用时反向电压不会从0V开始因为0V附近线性度很差而且容易受到射频信号的正向偏置影响。通常取1V到8V作为有效调谐范围对应的容量变化大约从20pF到4pF。本振LC回路的谐振频率公式是f 1 / (2π√(L·C_total))其中C_total包括变容二极管容量、固定电容、以及杂散电容。假设本振频率需要覆盖98.7MHz到118.7MHz频率比约1.2:1那么电容比需要约1.44:1。如果变容二极管在1V到8V范围内的容量比是5:1那么只需要利用其中一部分容量变化通过串联或并联固定电容来压缩容量范围。3.2 本振LC回路的参数设计假设我们选用的变容二极管在1V时容量为20pF在8V时容量为4pF。本振电感取100nH杂散电容估计3pF。那么当C_total 20 3 23pF时f 1/(2π√(100e-9 × 23e-12)) ≈ 105MHz当C_total 4 3 7pF时f 1/(2π√(100e-9 × 7e-12)) ≈ 190MHz这个频率范围太宽了覆盖不了我们需要的98.7MHz到118.7MHz。解决办法是在变容二极管两端并联一个固定电容比如10pF。这样当变容二极管为20pF时并联10pF后总电容为201030pF加上杂散3pFC_total33pFf≈87.6MHz当变容二极管为4pF时并联10pF后总电容为41014pF加上杂散3pFC_total17pFf≈122MHz这样频率范围就接近了但还需要微调。实际调试时我会先用一个10pF的固定电容然后通过调整电感匝数或者磁芯位置来把频率范围拉到目标区间。如果频率偏低减少电感匝数如果频率偏高增加匝数或者增大并联电容。3.3 调谐电压的线性化处理变容二极管的C-V曲线是非线性的导致调谐电压和频率之间不是线性关系。如果直接用单片机PWM输出调谐电压频率刻度会不均匀。解决办法有两种一是用查表法在单片机里存储电压-频率对应表通过校准得到二是用线性化电路比如用两个变容二极管背靠背串联或者用运算放大器做函数变换。我通常用查表法因为成本低、灵活。具体做法是先用一个精密电位器手动调谐记录每个频点对应的电压值然后把这些数据写入单片机的Flash。调谐时根据目标频率查表得到PWM占空比再经过RC滤波输出直流电压。RC滤波的时间常数要足够大比如10kΩ电阻和10μF电容截止频率约1.6Hz这样可以有效滤除PWM纹波避免调谐电压抖动导致频率漂移。4. 迷你FM收音机的完整硬件设计4.1 射频输入与天线匹配FM广播的波长约3米便携式收音机通常用耳机线作为天线。耳机线的长度约1米到1.5米相当于波长的1/3到1/2接收效率还可以。SC1088的射频输入引脚需要接一个LC匹配网络把耳机线的阻抗匹配到芯片的输入阻抗。典型电路是耳机线通过一个10pF的耦合电容接到一个LC并联回路回路电感约100nH电容约10pF谐振在100MHz附近。这里有个细节耳机线既是天线又是音频输出线。所以需要在音频输出端加一个射频扼流圈防止射频信号串入音频通道。通常用10μH到100μH的电感或者用磁珠。我试过用0805封装的磁珠效果不错但要注意磁珠的额定电流要大于耳机的工作电流。4.2 本振与混频的外围电路本振电路是SC1088外围最敏感的部分。本振电感通常用空心线圈直径约5mm匝数4到6匝线径0.5mm。线圈的Q值要高所以不要用太细的线也不要靠近金属物体。变容二极管通过一个10nF的隔直电容接入本振回路调谐电压通过一个100kΩ的电阻加到变容二极管阴极。混频输出接10.7MHz陶瓷滤波器滤波器输出接SC1088的中频输入引脚。陶瓷滤波器的输入输出阻抗通常是330Ω所以需要在滤波器和芯片之间加阻抗匹配电阻。我一般用两个330Ω电阻分别接在滤波器的输入和输出端然后通过一个10nF电容耦合到芯片。4.3 音频输出与去加重网络SC1088的音频输出引脚内部有一个射极跟随器输出阻抗约1kΩ。外部需要接一个去加重网络因为FM发射端做了预加重接收端必须做去加重才能恢复平坦的频响。去加重网络是一个RC低通滤波器时间常数75μs对应截止频率约2.1kHz。典型值是10kΩ电阻和7.5nF电容。音频输出可以直接驱动32Ω耳机但音量可能不够。如果需要驱动小喇叭可以加一个LM386或者TDA2822功放。LM386的增益可以调到20倍到200倍供电范围4V到12V很适合电池供电。我通常用LM386外围只需要一个10μF电容和一个10kΩ电位器做音量控制。4.4 电源与调谐电压生成整机供电可以用两节AAA电池电压3V也可以用USB 5V经过LDO降压到3.3V。SC1088的工作电流约10mALM386的工作电流约10mA到20mA总电流约30mA。两节AAA电池的容量约1000mAh可以连续工作30小时左右。调谐电压生成用单片机PWM加RC滤波。我用的单片机是STC15W204SOP-16封装体积小价格便宜。PWM频率设为20kHz经过两级RC滤波第一级10kΩ10μF第二级10kΩ10μF总截止频率约0.8Hz。这样输出的调谐电压纹波小于1mV不会引起可闻的频率抖动。5. PCB布局与焊接调试中的实战经验5.1 射频部分的布局原则PCB布局对FM接收机的影响非常大。射频部分要尽量紧凑本振电感和变容二极管要靠近芯片走线要短而粗。本振回路的地线要单独走不要和中频、音频地混在一起。我通常用双层板顶层走射频和本振底层走电源和音频中间用过孔连接地平面。本振电感和变容二极管之间不要走其他信号线避免耦合。调谐电压的走线要远离射频走线最好用地线包围。如果PCB空间允许可以在本振回路周围加一圈接地过孔形成屏蔽腔。5.2 焊接顺序与元件选择焊接时先焊芯片再焊阻容最后焊电感和变容二极管。SC1088是SOP-16封装引脚间距1.27mm手工焊接需要一定的技巧。我通常用0.3mm的焊锡丝和尖头烙铁先固定两个对角引脚然后逐脚焊接。焊接温度控制在300°C到320°C时间不超过3秒避免损坏芯片。变容二极管要选低漏电流的否则调谐电压会不稳定。我试过几种变容二极管BB910的漏电流约1nA1SV149约0.5nAMV2105约2nA。漏电流越小调谐电压的保持时间越长频率漂移越小。电容要选NP0或C0G材质温度系数小容量稳定。电感用空心线圈Q值高但体积大也可以用贴片电感Q值低一些但体积小。5.3 调试步骤与常见问题调试分三步先调本振频率范围再调中频滤波器和鉴频回路最后调音频输出。第一步本振频率范围调试。用频率计或者频谱仪接在本振输出端调整调谐电压从1V到8V观察本振频率是否覆盖98.7MHz到118.7MHz。如果频率范围不够调整本振电感匝数或者并联电容。如果频率范围太宽增加并联电容。第二步中频滤波器和鉴频回路调试。用信号发生器输出10.7MHz的调频信号接到混频输出端观察音频输出。调整鉴频回路的电感使音频输出最大且失真最小。如果没有信号发生器可以接收一个已知频率的电台调整鉴频回路使声音最清晰。第三步音频输出调试。调整去加重网络的RC值使高音和低音平衡。如果声音发闷减小去加重电容如果声音太尖增大电容。音量控制电位器要选对数型的线性型的手感不好。常见问题调谐电压纹波大导致频率抖动解决办法是增大RC滤波电容本振频率漂移解决办法是减小变容二极管漏电流或者用温度补偿电容音频输出有高频噪声解决办法是在音频输出端加一个100Ω电阻和100pF电容组成的低通滤波器。6. 从机械调谐到数字调谐的升级路径6.1 机械调谐的局限性机械调谐用可变电容优点是简单、不需要电源缺点是精度低、易受振动影响、无法自动搜台。可变电容的容量范围通常是10pF到270pF容量比27:1覆盖FM波段绰绰有余。但机械调谐的刻度盘很难做精确而且每次换台都要手动旋转使用体验一般。6.2 数字调谐的实现方案数字调谐用单片机产生调谐电压配合频率显示和自动搜台。具体方案是单片机输出PWM经过RC滤波得到调谐电压同时读取调谐电压的反馈值形成闭环控制。自动搜台时单片机从低频到高频扫描调谐电压检测音频输出的幅度找到信号最强的频点。频率显示可以用LCD1602或者OLED。LCD1602便宜但体积大OLED体积小但价格高。我通常用0.96寸OLEDI2C接口只需要两根线。单片机可以用STC15W204或者STM32F030前者便宜后者性能强。如果要做频谱显示可以用STM32的ADC采集音频信号做FFT变换但这对单片机的要求比较高。6.3 电调谐的进阶玩法电调谐的进阶玩法包括用锁相环稳定本振频率用DDS产生调谐电压用软件无线电解调中频信号。锁相环可以把本振频率锁定在参考晶振上频率稳定度可以达到10ppm以内。DDS可以产生高分辨率的调谐电压频率步进可以做到1kHz。软件无线电可以用ADC直接采集10.7MHz中频信号然后用数字信号处理解调但需要高速ADC和足够的运算能力。对于迷你FM收音机来说锁相环和DDS有点过度设计但如果你想把收音机做成一个实验平台这些技术都值得尝试。我试过用Si5351产生本振信号频率稳定度很好但Si5351的输出是方波需要滤波后才能接入混频器。用DDS芯片如AD9833也可以但输出频率上限只有12.5MHz需要倍频才能达到100MHz。7. 整机测试与性能评估7.1 灵敏度与选择性测试灵敏度是指接收机能够接收的最小信号强度。FM接收机的灵敏度通常用μV表示SC1088的灵敏度约2μV到5μV。测试方法是用信号发生器输出一定频率的调频信号逐渐减小幅度直到音频输出信噪比降到12dB。选择性是指接收机抑制邻道干扰的能力通常用±200kHz处的衰减量表示。SC1088配合180kHz陶瓷滤波器选择性约40dB到50dB。实际测试时我用一个标准的FM信号发生器输出频率98MHz调制频率1kHz频偏22.5kHz。逐渐减小输出幅度用示波器观察音频输出直到信噪比明显下降。然后改变信号发生器频率到98.2MHz观察音频输出的衰减量。测试结果灵敏度约3μV选择性约45dB。7.2 频率稳定性与调谐精度频率稳定性是指本振频率随时间、温度、电压的变化量。SC1088的本振频率稳定度约100ppm/°C在0°C到40°C范围内频率漂移约±20kHz。调谐精度是指调谐电压的分辨率用12位PWM时调谐电压的分辨率约1mV对应频率分辨率约10kHz。如果要做精确调谐可以用16位PWM或者DAC频率分辨率可以做到1kHz以内。实际使用时频率漂移会影响收听效果尤其是接收弱信号时。解决办法是用温度补偿电容或者用锁相环稳定本振频率。调谐精度影响搜台的准确性如果分辨率太低可能会漏掉一些电台。我通常用12位PWM配合查表法频率误差控制在±20kHz以内。7.3 音频质量与功耗音频质量主要取决于鉴频器的线性度和去加重网络。SC1088的音频输出失真度约1%信噪比约60dB。如果加一个简单的低通滤波器可以进一步降低高频噪声。功耗方面SC1088约10mALM386约15mA单片机约5mA总功耗约30mA。用两节AAA电池可以连续工作30小时左右。如果用锂电池容量更大工作时间更长。我在实际制作中把整机装在一个40mm×30mm的塑料盒里耳机线兼作天线调谐用两个按钮频率显示用0.96寸OLED。整机重量约50克携带方便。接收效果在城市里可以收到15个左右的电台郊区可以收到20个以上。音质清晰没有明显的背景噪声。8. 我在制作过程中踩过的坑与解决思路第一个坑是变容二极管的漏电流导致频率漂移。一开始我用的是MV2105漏电流约2nA调谐电压在几分钟内从5V降到4.8V频率漂移约50kHz。后来换成BB910漏电流约1nA频率漂移减小到20kHz。如果对频率稳定性要求高可以在变容二极管两端并联一个1GΩ的电阻或者用运放做电压跟随器提高调谐电压的驱动能力。第二个坑是本振电感的Q值不够。一开始我用贴片电感Q值只有20左右本振输出幅度小混频增益低接收灵敏度差。后来换成空心线圈Q值提高到80以上灵敏度明显改善。空心线圈的直径5mm匝数5匝线径0.5mm电感量约100nH。线圈要拉长一点不要绕得太密否则分布电容大Q值下降。第三个坑是PCB布局不合理导致本振信号串入音频通道。一开始我把本振电感和音频输出走线放在同一层结果音频输出有高频啸叫。后来把本振部分移到板子一角音频走线用地线隔离啸叫消失。如果PCB空间有限可以在音频输出端加一个LC低通滤波器截止频率设在15kHz左右。第四个坑是调谐电压的RC滤波时间常数不够。一开始我用10kΩ和1μF截止频率约16HzPWM纹波导致频率抖动听感上有“嗡嗡”声。后来改成10kΩ和10μF截止频率约1.6Hz纹波明显减小频率稳定。如果对纹波要求更高可以用两级RC滤波或者用有源滤波器。第五个坑是陶瓷滤波器的阻抗匹配。一开始我直接把陶瓷滤波器接在混频输出和中频输入之间没有加匹配电阻结果中频增益低灵敏度差。后来在滤波器的输入和输出端各加一个330Ω电阻中频增益恢复正常。陶瓷滤波器的输入输出阻抗是330Ω芯片的混频输出阻抗约1kΩ中频输入阻抗约1.5kΩ所以需要匹配电阻来减少反射。这些坑看起来都是小问题但每一个都会影响最终效果。我的经验是射频电路调试要有耐心每一步都要用仪器验证不要凭感觉。如果没有频谱仪可以用一个简单的场强计或者频率计至少能判断本振是否起振、频率是否覆盖。音频部分可以用示波器和耳机主观评价但要注意去加重网络的影响。9. 元件选型清单与替代方案元件型号参数替代方案收音芯片SC1088SOP-16TDA7088、CXA1691变容二极管BB91030pF0V, 3pF8V1SV149、MV2105中频滤波器SFU10.7MS2180kHz带宽SFU10.7MS3、L10.7A鉴频中周TOKO 10.7MHz内置电容陶瓷谐振器功放LM386DIP-8TDA2822、PAM8403单片机STC15W204SOP-16STM32F030、ATtiny85显示OLED 0.96寸I2C接口LCD1602本振电感空心线圈100nH, Q80贴片电感Q30去加重电容NP07.5nF6.8nF、8.2nF调谐电压滤波电解电容10μF钽电容、陶瓷电容选型时要注意变容二极管的容量范围要和本振频率范围匹配中频滤波器的带宽要和接收环境匹配功放的增益要和耳机阻抗匹配。如果买不到SC1088可以用TDA7088代替但引脚定义不同需要重新设计PCB。TDA7088的内部框图类似但调谐电压范围是0V到5V变容二极管的选型也要相应调整。10. 后续可以尝试的扩展方向这台迷你FM收音机做完之后我还在想几个扩展方向。一是加一个RDS解码功能用单片机解码57kHz的副载波显示电台名称和节目信息。RDS解码需要额外的滤波器和比较器但单片机可以用软件解调成本不高。二是加一个蓝牙模块把音频输出接到蓝牙发射器用无线耳机收听。三是加一个录音功能用单片机的ADC采集音频存储到SD卡。如果要做RDS需要从鉴频输出端取出复合信号经过57kHz带通滤波器然后送入比较器整形最后用单片机解码。RDS的数据率是1187.5bps单片机可以用定时器捕获脉冲宽度解出0和1。这个功能对单片机的要求不高但需要额外的模拟电路。如果要做蓝牙可以用BK8000L或者CSR8645模块音频输入接SC1088的输出音频输出接蓝牙模块的输入。蓝牙模块的供电是3.3V可以和单片机共用。这样整机就可以无线收听但功耗会增加约20mA。如果要做录音可以用STM32的ADC采集音频采样率32kHz12位分辨率存储到SD卡。录音文件格式可以用WAV方便在电脑上播放。这个功能需要单片机有足够的RAM和FlashSTM32F103C8T6可以满足要求。这些扩展方向都需要额外的硬件和软件但核心的FM接收部分不变。如果你已经做好了基础版可以选一个方向继续折腾。我的经验是先把基础版调通再考虑扩展否则问题太多容易放弃。
返回列表