49 lines
913 B
Plaintext
49 lines
913 B
Plaintext
* Current Mode PWM Average Model
|
|
*
|
|
.Subckt PWM-CM nA nC nP nVCtrl nD Params: Lsw=100uH Fsw=100kHz DCMax=0.95 DCMin=0.05 RISense=1 Slope=100m
|
|
*
|
|
* Input Resistor on Control Pin
|
|
RVCtrl nVCtrl 0 1Meg
|
|
*
|
|
* ON Duty Cycle
|
|
EDuty nD 0 Value={V(nDPC)*V(nCx,nP)/(V(nA,nP)-V(nCx,nP)+1u)} ; EDuty
|
|
*
|
|
.EndS PWM-CM
|
|
|
|
** Includes
|
|
.include some_model.mod
|
|
.include models/test/BC550.mod
|
|
|
|
|
|
** Comments
|
|
* General SPICE.
|
|
; PSpice
|
|
$ ngspice
|
|
.param ... ; PSpice
|
|
.param ... $ ngspice
|
|
|
|
** Parameters
|
|
.param TESTPARAM = '2 * 1.5V'
|
|
.param TESTPARAM = "2 * 1.5V"
|
|
.param TESTPARAM = { 2 * 1.5V }
|
|
.param TESTPARAM = [ 2 * 1.5V ]
|
|
.param TESTPARAM = ( 2 * 1.5V )
|
|
|
|
.four 1Meg v(input)
|
|
|
|
Vinput input 0 SIN(500mV 1V 1k)
|
|
vinput input 0 sin(500mV 1V 1k)
|
|
|
|
* Input Sources
|
|
EXP(0 2V 1ms 2ms 3ms 1 2)
|
|
exp(0 2V 1ms 2ms 3ms 1 2)
|
|
* lx is also a function
|
|
Lx node1 node2 200mH
|
|
|
|
** Sub-Circuit
|
|
* Call
|
|
X1 inv ninv out v+ v- LM324
|
|
x1 inv ninv out v+ v- lm324
|
|
|
|
.end
|