我可以把一首歌送进仿真电路里面吗? 可以的 — LTspice 仿真

LT Spice :三角波, 方波, 阶梯波, 锯齿波波形 等等的发生 – PWL 的设置

三角波:

例子

PWL repeat forever 0 0.6 157.23e-6 -0.6 314.46e-6 0.6 endrepeat

模型

Version 4

SHEET 1 904 680

WIRE 48 96 48 64

WIRE 48 208 48 176

FLAG 48 208 0

FLAG 48 64 AudioOut

IOPIN 48 64 Out

SYMBOL voltage 48 80 R0

WINDOW 123 0 0 Left 2

WINDOW 39 0 0 Left 2

SYMATTR InstName V1

SYMATTR Value PWL repeat forever 0 0.6 157.23e-6 -0.6 314.46e-6 0.6 endrepeat

TEXT 40 -96 Left 2 !.tran 0 2 0 1e-6

TEXT 152 -8 Left 2 !.wave C:\\PWL_TRIAN_output.wav 16 44.1K V(AudioOut)

方波:

(须自己算出来上升时间和下降时间, 然后从定的点的时间里面扣除, 当然也可以多定一些点, 更精确的描述波形)

例子

PWL repeat forever 0 0.6 157229e-9 0.6 157230e-9 -0.6 314449e-9 -0.6 314459e-9 0.6 endrepeat

模型

Version 4

SHEET 1 1328 680

WIRE 48 96 48 64

WIRE 48 208 48 176

FLAG 48 208 0

FLAG 48 64 AudioOut

IOPIN 48 64 Out

SYMBOL voltage 48 80 R0

WINDOW 123 0 0 Left 2

WINDOW 39 0 0 Left 2

SYMATTR InstName V1

SYMATTR Value PWL repeat forever 0 0.6 157229e-9 0.6 157230e-9 -0.6 314449e-9 -0.6 314459e-9 0.6 endrepeat

TEXT 40 -96 Left 2 !.tran 0 2 0 1e-6

TEXT 152 -8 Left 2 !.wave .\\PWL_SQ__output.wav 16 44.1K V(AudioOut)

阶梯波形

例子

PWL repeat forever (0 0 999.999e-6 0 1000.000e-6 0.1 1999.999e-6 0.1 2000.000e-6 0.2 2999.999e-6 0.2 3000.000e-6 0.3 3999.999e-6 0.3 4000.000e-6 0.4 4999.999e-6 0.4 5000.000e-6 0.5 5999.999e-6 0.5 6000.000e-6 0) endrepeat

模型

Version 4

SHEET 1 2896 680

WIRE 48 96 48 64

WIRE 48 208 48 176

FLAG 48 208 0

FLAG 48 64 AudioOut

IOPIN 48 64 Out

SYMBOL voltage 48 80 R0

WINDOW 123 0 0 Left 2

WINDOW 39 0 0 Left 2

SYMATTR InstName V1

SYMATTR Value PWL repeat forever (0 0 999.999e-6 0 1000.000e-6 0.1 1999.999e-6 0.1 2000.000e-6 0.2 2999.999e-6 0.2 3000.000e-6 0.3 3999.999e-6 0.3 4000.000e-6 0.4 4999.999e-6 0.4 5000.000e-6 0.5 5999.999e-6 0.5 6000.000e-6 0) endrepeat

TEXT 40 -96 Left 2 !.tran 0 2 0 1e-6

TEXT 152 -8 Left 2 !.wave .\\PWL_STEP_output.wav 16 44.1K V(AudioOut)

锯齿波

例子

PWL repeat forever (0 0 999.999e-6 1 1000.000e-6 0) endrepeat

模型

Version 4 SHEET 1 2896 680 WIRE 48 96 48 64 WIRE 48 208 48 176 FLAG 48 208 0 FLAG 48 64 AudioOut IOPIN 48 64 Out SYMBOL voltage 48 80 R0 WINDOW 123 0 0 Left 2 WINDOW 39 0 0 Left 2 SYMATTR InstName V1 SYMATTR Value PWL repeat forever (0 0 999.999e-6 1 1000.000e-6 0) endrepeat TEXT 40 -96 Left 2 !.tran 0 2 0 1e-6 TEXT 152 -8 Left 2 !.wave .\\PWL_SAWT_output.wav 16 44.1K V(AudioOut)

反锯齿

例子

PWL repeat forever (0 0 0.000001 1 1000.000e-6 0) endrepeat 模型

Version 4 SHEET 1 2896 680 WIRE 48 96 48 64 WIRE 48 208 48 176 FLAG 48 208 0 FLAG 48 64 AudioOut IOPIN 48 64 Out SYMBOL voltage 48 80 R0 WINDOW 123 0 0 Left 2 WINDOW 39 0 0 Left 2 SYMATTR InstName V1 SYMATTR Value PWL repeat forever (0 0 0.000001 1 1000.000e-6 0) endrepeat TEXT 40 -96 Left 2 !.tran 0 2 0 1e-6 TEXT 152 -8 Left 2 !.wave .\\PWL_RSAWT_output.wav 16 44.1K V(AudioOut)

LTspice 可以产生白噪音 white noise

用 BV 以及 white(x) 函数 :

e.g. white(2e6*time)/10 模型

Version 4

SHEET 1 880 680

WIRE 144 112 48 112

WIRE 288 112 288 96

WIRE 288 112 224 112

WIRE 288 144 288 112

WIRE 48 160 48 112

WIRE 48 256 48 240

WIRE 288 256 288 224

FLAG 288 256 0

FLAG 48 256 0

FLAG 288 96 tp0

SYMBOL bv 48 144 R0

WINDOW 3 -251 9 Left 2

SYMATTR InstName B1

SYMATTR Value V=white(2e6*time)/10

SYMBOL res 240 96 R90

WINDOW 0 0 56 VBottom 2

WINDOW 3 32 56 VTop 2

SYMATTR InstName R1

SYMATTR Value 50

SYMBOL res 272 128 R0

SYMATTR InstName R2

SYMATTR Value 50

TEXT 14 280 Left 2 !.tran 0 0.1 0 1e-9

LTspice 也可以输出电脑直接播放的声波文件 命令: .wave 语法 .wave <filename.wav> <Nbits> <SampleRate> V(out) [V(out2) …]

例子

.wave C:\output.wav 16 44.1K V(left) V(right) <filename.wav> is either a complete absolute path for the .wav file you wish to create or a relative path computed from the directory containing the simulation schematic or netlist. Double quotes may be used to specify a path containing spaces.

<Nbits> is the number of sampling bits. The valid range is from 1 to 32 bits. <SampleRate> is the number of samples to write per simulated second. The valid range is 1 to 4294967295 samples be second. The remainder of the syntax lists the nodes that you wish to save. Each node will be an independent channel in the .wav file. The number of channels may be as few as one or as many as 65535. It is possible to write a device current, e.g., Ib(Q1) as well as node voltage. The .wav analog to digital converter has a full scale range of -1 to +1 Volt or Amp.

除了电脑能播放的波形, LTspice 也能产生超声以及次声甚至射频波形。 Note that it is possible to write .wav files that cannot be played on your PC sound system because of the number of channels, sample rate or number of bits due to limitations of your PC’s codec. But these .wav files may still be used in LTspice as input for another simulation.

例子 .wave C:\output.wav 16 44.1K V(n008) 翻译成大白话:

把 节点 n008 的电压波形用 16bit 44.1KHz 的采样设置另存为

C 盘根目录下 OUTPUT.WAV 文件.

播放? 您可以用 Adobe Audition 等工具回放. 再例如, 您仿真了个放大器, 可以把输出的波形存成 wav 文件.

这样您就可以将仿真的世界和您生活中的现实世界建立起桥梁。

Using WAVE files as input

BV: 把 bv 的表达式替换成波形文件的路径就好了

wavefile=”c:/test.wav” chan=0

如果波形文件和仿真文档位于同一个目录,用简单的文件名就够了.

“chan” 指的是通道, 可以多达 65535, 一般来说 channel 0 指向 左声道也就是默认的 0 通道.

再有人说仿真没有意义, 您就可以有打脸的选项了。 LTspice 可以产生各种稀奇古怪的波形, 类似于任意波形发生器,

您只要把它存成 wav 就可以了。

FAQ

Q1. 为什么将内容用 TXT 编辑器存成 XXXXX.ASC 用 LTspice 打不开?老麦你是不是耍我?

A1: 也许您的炒作系统是 WINDOWS, 先进版本的 Windows 里面的文本编辑器例如 notepad.exe 保存时会隐藏常见的 TXT 后缀, 或者说会在 XXXXX.ASC 后面添加 .txt 的尾巴, 变成 XXXXX.ASC.txt。请按照网上的教程或者联系微软客服解决这个问题。

例如:有时需要更改文件扩展名,但是在执行重命名之后发现不能更改,此时在文件夹选项中设置一下。打开我的电脑里面的当前文件夹,会看到菜单栏。若没有,则按一下ALT键就会出现。依次选择工具|文件夹选项,打开文件夹选项对话框。点击查看选项卡,向下滑动滚动条到底部。找到隐藏已知文件类型的扩展名选项,取消选中状态。点击确定即可,此时就可以更改文件的扩展名。WIN10 打开资源管理器 【 [WIN]键+[E]键】,默认的资源管理器,隐藏了很多配置,点击右上角小图标展开配置项。点击“查看“ ,然后再点击右侧”选项“。文件夹选项,默认是在常规界面,点击“查看”切换功能界面。在查看界面下方,有一个 “高级设置”,拖动右侧的滚动条找到“隐藏已知文件类型的扩展名”。 默认这个选项前面有个小勾勾,我们单击去掉,然后点击窗口下方的”确认“或者”应用“。最后查看创建的文件,名字显示发生了一些变化,后面多了一个“.txt”,删掉 .txt 就好了。老麦没有耍您。

Q2. 为什么元件的数值你标记得那么怪异? 老麦你是不是故弄玄虚?

A2: 因为老麦有点懒,比如一兆欧 (1000000 ohm)用的是小学五年级学的科学记数法 1e6 ohm. 比如1微法(0.000001F)用的是 1000 nF (1000*0.000000001F) , 意思是一样的。 老麦没有故弄玄虚。1微秒(0.000001秒)同样是科学记数法 1e-6秒。