振荡电路仿真往往出错。 据我猜想,仿真振荡电路出错,是因为仿真用的是迭代方法,即从一个初始状态计算下一个状态,再以下一个状态计算再下一个状态…… 振荡电路起振,是由于电路中总存在很小的扰动,这些扰动被放大反馈,周而复始,产生振荡。所以计算初始状态时若没有考虑热噪声之类的扰动,就不会计算出与第一个状态不同的下一个状态,也就不会产生振荡。
另外,振荡的产生,振幅从小到大逐步稳定,需要比较长的时间,这可以从各型号单片机的复位电路说明书中看出来,这些说明书总是在强调振荡稳定后如何如何。实际上,晶体振荡器达到稳定需要数ms甚至更长时间,低频的文氏电桥振荡器需要十几秒时间。仿真时,真实的10ms时间可能需要你等上一两分钟。感觉不振荡,其实是振幅还小,正在慢慢增长,过两分钟看就振起来了。我在仿真门电路构成的振荡器时遇到过这种情况。 |