ARTICLE DETAIL

资讯详情

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

NE555多谐振荡器实战:从原理计算到示波器波形实测

NE555多谐振荡器实战:从原理计算到示波器波形实测 1. 从一个经典芯片说起NE555到底能干什么NE555这颗芯片搞电子的应该没有不知道的。它诞生于1972年由Signetics公司推出到现在已经超过半个世纪依然活跃在各类电路设计中。你可以把它理解成一块“定时积木”——只要外接几个电阻电容它就能输出稳定的方波、脉冲或者延时信号。价格便宜到离谱零售价几毛钱一颗但功能却极其扎实。我这次要聊的是用NE555搭一个多谐振荡器然后用示波器去实际测量它的输出波形验证理论计算和实际电路之间的差距。为什么选这个题目因为太多人学NE555的时候都是照着公式算一遍频率和占空比仿真软件里跑一下看到波形对了就结束了。但真正把电路焊出来、接上示波器探头、看到屏幕上跳动的波形那一刻你才会发现理论和现实之间有一堆细节需要处理。这篇文章适合谁看如果你是电子相关专业的学生正在学模电或者做课程设计这篇内容可以直接当参考。如果你是从其他领域转过来的电子爱好者想搞明白NE555到底怎么用、示波器到底怎么看这篇也能帮你少走弯路。如果你已经工作几年但一直用仿真软件做设计、很少动手实测那正好可以借这个项目重新熟悉一下示波器的基本操作。核心关键词就三个NE555、多谐振荡器、示波器。我会从电路原理讲起把每个电阻电容怎么选、公式怎么推导讲清楚然后一步步搭电路、调示波器、读波形、对比理论值。中间会穿插我自己踩过的坑和总结的技巧尽量让你看完就能自己动手复现。2. 多谐振荡器的工作原理与电路设计2.1 NE555内部结构简析要搞懂多谐振荡器为什么能振荡得先大致了解NE555里面有什么。你不用记晶体管级的细节但几个关键模块要知道两个比较器一个阈值比较器THRESH引脚6一个触发比较器TRIG引脚2。阈值比较器的参考电压是2/3 VCC触发比较器的参考电压是1/3 VCC。一个RS触发器由两个比较器的输出驱动决定输出引脚3的高低电平。一个放电晶体管接在放电引脚7上当输出为低电平时导通把外接电容的电荷放掉。一个输出缓冲器把RS触发器的状态放大后从引脚3输出能提供大约200mA的灌电流和拉电流。这三个电压点——1/3 VCC、2/3 VCC——是多谐振荡器的核心。电容电压在这两个阈值之间来回充放电输出就跟着翻转形成振荡。2.2 多谐振荡器的经典接法NE555做多谐振荡器标准接法是这样的引脚1接地。引脚2和引脚6短接接到电容的正端。引脚3是输出。引脚4复位接VCC不用复位功能的话。引脚5控制电压通常接一个0.01μF电容到地滤掉噪声。引脚7放电接在R1和R2之间。引脚8接VCC。外接元件就三个R1、R2和C。R1接在VCC和引脚7之间R2接在引脚7和引脚2/6之间C接在引脚2/6和地之间。充电时电流从VCC经过R1和R2给C充电电容电压从1/3 VCC上升到2/3 VCC。放电时引脚7内部的晶体管导通C的电荷经过R2流入引脚7到地电压从2/3 VCC降到1/3 VCC。如此循环。2.3 频率与占空比的公式推导充电时间输出高电平的公式是t_high 0.693 × (R1 R2) × C放电时间输出低电平的公式是t_low 0.693 × R2 × C振荡频率f 1 / (t_high t_low) 1.44 / ((R1 2R2) × C)占空比D (R1 R2) / (R1 2R2) × 100%从公式可以看出占空比永远大于50%因为充电必须经过R1和R2而放电只经过R2。如果你需要50%以下的占空比得在引脚7和VCC之间加一个二极管让充电只经过R1。不过那是另一个话题了这次先做最经典的版本。2.4 元件选型的实际考量选元件的时候有几个点要注意电阻的选择R1和R2不能太小否则放电时电流太大会烧芯片。NE555的放电晶体管能承受的电流有限一般建议R1R2在1kΩ以上。也不能太大比如超过1MΩ这时候引脚2/6的输入偏置电流会影响精度而且高阻节点容易受噪声干扰。我一般选R1在1kΩ到10kΩ之间R2在10kΩ到100kΩ之间。电容的选择电容的漏电流和温度稳定性直接影响频率精度。电解电容漏电流大不适合用在这里。我推荐用CBB电容或者独石电容温度系数好漏电流小。容量在1nF到100μF之间比较合适。太小了寄生电容影响大太大了充电时间太长。电源电压NE555的工作电压范围是4.5V到16V。我用5V供电方便和后面的数字电路接口。注意频率公式里的1.44是基于阈值电压严格等于1/3 VCC和2/3 VCC推导出来的实际上内部比较器有失调电源电压也会影响阈值所以实测频率和计算值会有偏差。我这次选的参数是R1 1kΩR2 10kΩC 100nF。代入公式算一下t_high 0.693 × (1000 10000) × 100e-9 0.693 × 11000 × 100e-9 762.3μst_low 0.693 × 10000 × 100e-9 693μs周期 T 762.3 693 1455.3μs频率 f 1 / 1455.3e-6 ≈ 687Hz占空比 D 762.3 / 1455.3 ≈ 52.4%这个频率在音频范围内示波器很容易捕捉而且用耳朵也能听到轻微的啸叫如果你接个小喇叭的话方便直观判断电路有没有起振。3. 从原理图到实物搭电路与调试3.1 面包板搭建的注意事项我建议先在面包板上搭电路确认能工作之后再焊到洞洞板上。面包板搭建有几个坑接触电阻面包板的弹片用久了会氧化接触电阻可能到几欧姆甚至几十欧姆。对于NE555这种电路几欧姆的接触电阻影响不大但如果你的电阻本身只有几百欧姆那误差就不可忽略了。搭之前用万用表量一下关键节点的通断。走线布局引脚5的0.01μF电容要尽量靠近芯片否则噪声会耦合到阈值比较器上导致输出波形抖动。引脚2和引脚6的连线尽量短减少寄生电容。电源去耦在引脚8和引脚1之间并一个100μF的电解电容和一个0.1μF的陶瓷电容分别滤低频和高频噪声。很多人忽略这一步结果波形上叠加了电源纹波还以为是芯片坏了。3.2 关键节点的电压测量搭好电路后先别急着接示波器。用万用表量几个关键点的直流电压引脚8对地应该是5V左右。引脚5对地应该是3.33V左右2/3 VCC。引脚2/6对地应该在1.67V到3.33V之间跳动但万用表响应慢可能显示一个中间值。引脚3对地应该在0V和5V之间跳动万用表可能显示2.5V左右。如果引脚5的电压不是2/3 VCC检查引脚5的电容是不是漏电或者焊短路了。如果引脚2/6的电压一直不变检查电容是不是没接好或者引脚7的电阻接错了。3.3 不上电先检查静态电阻法在通电之前我习惯用万用表的电阻档量一下几个关键点之间的电阻确认没有短路或者开路引脚8对引脚1应该是一个比较大的值几百欧姆以上。如果接近0说明电源短路了。引脚7对引脚8应该等于R1的阻值。引脚7对引脚2/6应该等于R2的阻值。引脚2/6对引脚1应该是一个变化的阻值因为电容在充电。如果一直是0或者无穷大说明电容有问题。这一步能帮你排除掉大部分焊接或者插接错误。3.4 上电后的初步判断通电后如果你有频率计可以直接接在引脚3上读频率。没有频率计的话用示波器看。如果示波器也没有可以接一个LED串联1kΩ电阻到引脚3LED应该以大约687Hz的频率闪烁——实际上这么快人眼看不出来闪烁只会看到亮度变暗因为占空比只有52%左右。你可以把C换成10μF频率降到6.87Hz就能看到LED闪烁了。我第一次搭这个电路的时候上电后LED不亮检查了半天发现是引脚4忘了接VCC。NE555的引脚4是复位端低电平有效悬空的话状态不确定可能一直复位。所以记住不用复位功能也要把引脚4接VCC。4. 示波器实战从探头校准到波形读取4.1 示波器探头的正确使用示波器探头不是随便夹上去就能用的。有几个关键点探头衰减比常见的无源探头有1X和10X两档。1X档带宽低输入电容大适合测低频小信号。10X档带宽高输入电容小适合测高频信号。我这次测的是687Hz的方波用1X档就够了。但如果你要测MHz级别的信号必须用10X档否则探头本身的电容会把信号吃掉。探头补偿10X探头上面有一个可调电容用来补偿探头的频率响应。如果补偿不对方波的边沿会出现过冲或者圆角。校准方法是把探头接到示波器的校准信号输出端通常是1kHz方波调节探头上的电容直到屏幕上显示的方波最平直。这一步很多人跳过结果测出来的波形失真了还以为是电路问题。接地弹簧探头前端除了信号夹子还有一个接地夹子。接地夹子的引线越长引入的电感越大高频信号上会看到振铃。测高频信号时最好用探头自带的接地弹簧直接套在探头前端接地环路最小。4.2 示波器基本设置以我手头的DS1054Z为例设置步骤如下通道选择把探头接到CH1示波器上按CH1键打开通道。耦合方式选DC耦合因为我要看方波的直流电平。如果只看交流成分可以选AC耦合但那样会丢掉直流分量。垂直档位方波幅度是0到5V所以垂直档位设成1V/div或者2V/div让波形占屏幕的3到5格。水平时基周期是1.455ms水平时基设成500μs/div这样屏幕上能看到大约3个周期。触发设置触发源选CH1触发类型选边沿触发触发边沿选上升沿触发电平设在2.5V左右。这样波形会稳定显示不会左右滚动。探头衰减比如果用的是10X探头示波器里也要设成10X否则读数会差10倍。4.3 波形参数的读取与计算波形稳定显示后用示波器的光标或者自动测量功能读几个参数频率自动测量应该显示687Hz左右。我实测下来是682Hz偏差0.7%。周期1.466ms和计算的1.455ms很接近。高电平时间约768μs计算值762μs。低电平时间约698μs计算值693μs。占空比52.4%和计算值一致。峰峰值5.04V比电源电压略高因为探头补偿稍微过了一点。偏差的来源主要有几个电阻的容差我用的是5%精度的碳膜电阻、电容的容差CBB电容一般是5%到10%、NE555内部比较器的失调电压、以及探头和示波器本身的测量误差。0.7%的偏差已经相当好了。4.4 用示波器观察充放电波形除了看引脚3的输出方波还可以用示波器看引脚2/6上的电容电压波形。把探头接到引脚2/6你会看到一个近似三角波的波形在1.67V和3.33V之间线性上升和下降。为什么是近似线性因为充电是指数曲线的一部分但在1/3 VCC到2/3 VCC这个区间内指数曲线看起来比较接近直线。这个波形能帮你直观理解多谐振荡器的工作过程电容电压上升到2/3 VCC阈值比较器翻转输出变低放电晶体管导通电容电压下降降到1/3 VCC触发比较器翻转输出变高放电晶体管截止电容又开始充电。如此循环。如果你用双通道示波器CH1接引脚3CH2接引脚2/6就能同时看到输出方波和电容三角波两者的相位关系一目了然。5. 常见问题与排查技巧实录5.1 电路不起振怎么办这是最常见的问题。排查顺序如下检查电源引脚8有没有5V引脚1有没有接地引脚4有没有接VCC检查电容引脚2/6上的电容有没有接容量对不对电容坏了没有检查电阻R1和R2的阻值对不对有没有虚焊检查引脚5引脚5的0.01μF电容有没有接如果引脚5悬空阈值电压不稳定可能不起振。换芯片如果以上都正常换一颗NE555试试。市面上有些便宜的NE555是翻新的内部比较器失调很大可能不起振。我遇到过一次电路死活不起振最后发现是面包板上引脚2和引脚6之间的跳线断了。面包板的弹片有时候会接触不良尤其是反复插拔之后。所以搭电路的时候尽量用短而粗的跳线插紧一点。5.2 频率偏差太大怎么调如果实测频率和计算值差很多比如差了20%以上检查以下几点电阻电容的实际值用万用表量一下R1、R2的实际阻值用电容表量一下C的实际容量。碳膜电阻的精度一般是5%但实际偏差可能到10%。CBB电容的精度一般是5%但有些便宜货能到20%。电源电压NE555的频率对电源电压不敏感但如果你用的是电池供电电压从9V降到6V频率会有几个百分点的变化。温度NE555的频率温度系数大约是50ppm/°C一般环境下影响不大。但如果你用手捏着芯片频率会漂移。探头负载如果你把示波器探头接在引脚2/6上探头的输入电容1X档约100pF会并联到定时电容上导致频率偏低。测引脚2/6的时候最好用10X档输入电容只有十几pF。5.3 波形抖动或者有毛刺波形抖动通常来自电源噪声或者外部干扰。解决方法在引脚8和引脚1之间并一个100μF电解电容和一个0.1μF陶瓷电容。引脚5的0.01μF电容不能省而且要尽量靠近芯片。如果电路附近有大功率设备或者开关电源尽量远离或者用金属屏蔽盒把电路罩起来。示波器探头的地线尽量短最好用接地弹簧。我有一次测波形发现方波上升沿有振铃换了短地线之后振铃就消失了。所以探头地线的长度对高频测量影响很大。5.4 示波器读不到波形如果示波器屏幕上只有一条直线检查探头有没有接对通道示波器里通道有没有打开触发模式是不是设成了Normal如果是Normal没有触发信号就不显示。改成Auto就能看到波形。垂直档位是不是设得太大了比如设成5V/div5V的方波只占1格看起来像直线。改成1V/div试试。水平时基是不是设得太快了比如设成1μs/div1.455ms的周期要1460格才能显示一个周期屏幕上当然看不到完整的波形。改成500μs/div。5.5 常见问题速查表现象可能原因排查方法完全不起振电源没接、引脚4悬空、电容坏万用表量电压、换电容频率偏差大电阻电容实际值偏差、探头负载量实际值、换10X探头波形抖动电源噪声、引脚5电容缺失加去耦电容、补引脚5电容上升沿振铃探头地线太长用接地弹簧示波器无显示触发模式不对、档位不对改Auto触发、调档位占空比不对R1和R2接反检查引脚7的接线6. 从面包板到洞洞板焊接与长期稳定性6.1 洞洞板布局建议面包板验证通过后如果你想让电路长期工作建议焊到洞洞板上。布局的时候注意NE555芯片放在中间引脚5的电容紧挨着芯片。电源走线尽量粗或者用铺铜的方式减少电源阻抗。定时电容C尽量靠近引脚2/6引线越短越好。输出引脚3可以留一个排针方便接示波器或者后级电路。我一般用双面洞洞板一面走电源和地一面走信号。这样布局紧凑干扰也小。6.2 焊接注意事项NE555是双极型工艺输入阻抗不高但焊接温度不要太高300°C左右每个焊点不超过3秒。电容焊接前先量一下容量焊上去之后再量就不方便了。电阻可以用立式安装节省空间。焊完之后用洗板水清洗一下助焊剂残留尤其是高阻节点附近助焊剂漏电会影响频率。6.3 长期稳定性测试焊好之后我连续通电跑了24小时每隔几小时用示波器读一次频率。实测频率从682Hz漂移到685Hz变化0.4%。这个漂移主要来自温度变化——白天室温高晚上室温低NE555和电容的温度系数共同作用。如果你需要更高稳定性可以用金属膜电阻和NP0电容温度系数能降到10ppm/°C以下。7. 进阶玩法PWM调速与频率可调7.1 用电位器代替R2实现频率可调把R2换成一个10kΩ的电位器串联一个1kΩ的固定电阻就可以手动调节频率。电位器调到最小R21kΩ频率约f 1.44 / ((1000 2×1000) × 100e-9) 1.44 / (3000 × 100e-9) 4800Hz电位器调到最大R211kΩ频率约f 1.44 / ((1000 2×11000) × 100e-9) 1.44 / (23000 × 100e-9) 626Hz所以频率调节范围大约是626Hz到4800Hz。注意调节R2的时候占空比也会变因为占空比公式里也有R2。7.2 用二极管实现50%以下占空比在引脚7和VCC之间加一个二极管阳极接引脚7阴极接VCC充电时电流只经过R1和二极管不经过R2。放电时电流经过R2到引脚7。这样t_high ≈ 0.693 × R1 × C t_low ≈ 0.693 × R2 × C如果R1R2占空比就是50%。如果R1R2占空比小于50%。二极管的压降会影响充电时间实际占空比会比计算值略大。用肖特基二极管压降0.3V比用普通硅二极管压降0.7V影响小。7.3 用NE555驱动小功率负载NE555的输出引脚3能提供200mA的电流可以直接驱动小功率LED、蜂鸣器或者小继电器。驱动继电器的时候记得在继电器线圈两端并一个续流二极管比如1N4148防止关断时的反向电动势打坏NE555。驱动LED的时候串联一个限流电阻阻值根据LED的正向压降和电流算。8. 示波器使用中的几个实用技巧8.1 用Single键捕捉瞬态波形示波器的Single键单次触发非常有用。按下Single后示波器进入等待状态一旦满足触发条件就采集一次波形然后停止。这个功能适合捕捉上电瞬间的波形、偶发的毛刺或者单次脉冲。我调试NE555的时候用Single键捕捉上电后第一个周期的波形确认起振过程是否干净。8.2 用FFT功能看谐波成分方波是由基波和奇次谐波叠加而成的。用示波器的FFT功能可以看到687Hz基波以及3次、5次、7次谐波。DS1054Z的FFT分辨率有限但看个大概没问题。如果你用的是带FFT固件的DSO138也能做简单的频谱分析不过精度和动态范围比台式示波器差不少。8.3 用上位机软件做数据分析普源、鼎阳等品牌的示波器都有上位机软件可以通过USB或者网口连接电脑把波形数据传到电脑上做进一步分析。我一般用Python的pyvisa库读取示波器数据然后用matplotlib画图。这样可以把实测波形和理论波形画在一起对比写报告或者做记录的时候很方便。import pyvisa import matplotlib.pyplot as plt import numpy as np rm pyvisa.ResourceManager() scope rm.open_resource(USB0::0x1AB1::0x04CE::DS1ZA::INSTR) scope.timeout 5000 scope.write(:WAV:SOUR CHAN1) scope.write(:WAV:FORM ASC) scope.write(:WAV:DATA?) raw scope.read() data np.array([float(x) for x in raw.split(,)]) plt.plot(data) plt.title(NE555 Output Waveform) plt.xlabel(Sample) plt.ylabel(Voltage (V)) plt.grid(True) plt.show()这段代码是我实际用过的DS1054Z通过USB连接电脑读取CH1的波形数据。注意不同型号的示波器VISA地址不一样用rm.list_resources()可以列出所有可用的设备。8.4 探头阻抗匹配的注意事项示波器探头的输入阻抗一般是1MΩ并联十几pF电容。当你把探头接到高阻抗节点上时探头的输入电容会影响电路的频率响应。对于NE555的引脚2/6定时电容是100nF探头电容十几pF影响不到0.1%可以忽略。但如果你测的是晶振电路或者高频滤波器探头电容可能让电路完全失谐。这时候要用高阻低容的有源探头或者用场效应管探头。9. 我踩过的坑与总结的经验第一个坑引脚4悬空。NE555的引脚4是复位端低电平有效。悬空的时候芯片可能一直处于复位状态输出恒为低电平。我一开始不知道以为芯片坏了换了两颗才发现是引脚4没接VCC。所以记住不用复位功能也要把引脚4接到VCC。第二个坑引脚5电容省掉。引脚5是控制电压端内部接在2/3 VCC的分压点上。如果不接电容这个点的阻抗很高容易受噪声干扰导致阈值电压抖动输出波形不稳定。我试过省掉这个电容波形上能看到明显的抖动频率也在±5%范围内漂移。加上0.01μF电容后波形立刻干净了。第三个坑探头衰减比设错。我用10X探头测5V方波示波器里忘了设成10X结果屏幕上显示的是0.5V我还以为电路输出幅度不对查了半天。后来发现是示波器设置问题。所以每次换探头先检查示波器的探头衰减比设置。第四个坑面包板接触不良。面包板用久了弹片会松动尤其是经常插拔的孔位。我有一次电路时好时坏最后发现是引脚7的跳线接触不良导致放电时间不稳定。换了孔位就好了。所以调试的时候如果电路行为异常先检查面包板的接触。第五个坑电源去耦不足。我用USB供电的时候示波器上能看到方波上叠加了几十毫伏的高频噪声。后来在电源引脚并了100μF和0.1μF电容噪声降到几毫伏。所以电源去耦不能省尤其是用开关电源供电的时候。这个NE555多谐振荡器项目虽然简单但涵盖了电子设计的基本流程理论计算、元件选型、电路搭建、仪器测量、问题排查。把这套流程走一遍你对模拟电路的理解会深很多。后续你可以尝试用NE555做PWM电机调速、方波发生器、或者简单的音频振荡器都是从这个基础电路延伸出去的。
返回列表