From a4e5c7026f668b1a8b9da1e335622873a8a831d5 Mon Sep 17 00:00:00 2001 From: fahim Date: Tue, 2 Jun 2015 18:18:39 +0530 Subject: Subject: Written function to extract Refrence name for device Library Description: Written function to extract Refrence name for device Library --- src/deviceModelLibrary/Diode/1n4007.lib | 2 - src/deviceModelLibrary/Diode/1n4148.lib | 2 - src/deviceModelLibrary/Templates/NMOS-180um.xml | 112 ------------------------ src/deviceModelLibrary/Templates/PMOS-180um.xml | 112 ------------------------ src/kicadtoNgspice/Convert.py | 29 ++++-- src/kicadtoNgspice/DeviceModel.py | 2 +- 6 files changed, 23 insertions(+), 236 deletions(-) delete mode 100755 src/deviceModelLibrary/Diode/1n4007.lib delete mode 100755 src/deviceModelLibrary/Diode/1n4148.lib delete mode 100644 src/deviceModelLibrary/Templates/NMOS-180um.xml delete mode 100644 src/deviceModelLibrary/Templates/PMOS-180um.xml (limited to 'src') diff --git a/src/deviceModelLibrary/Diode/1n4007.lib b/src/deviceModelLibrary/Diode/1n4007.lib deleted file mode 100755 index 89d421d8..00000000 --- a/src/deviceModelLibrary/Diode/1n4007.lib +++ /dev/null @@ -1,2 +0,0 @@ -.model 1n4007 D( IS=7.02767e-09 RS=0.0341512 N=1.80803 EG=1.05743 XTI=5 BV=1000 IBV=5e-08 CJO=1E-11 -+VJ=0.7 M=0.5 FC=0.5 TT=1E-07 KF=0 AF=1 ) diff --git a/src/deviceModelLibrary/Diode/1n4148.lib b/src/deviceModelLibrary/Diode/1n4148.lib deleted file mode 100755 index b32fdf86..00000000 --- a/src/deviceModelLibrary/Diode/1n4148.lib +++ /dev/null @@ -1,2 +0,0 @@ -.model 1n4148 D( Is=2.495E-09 Rs=4.755E-01 n=1.679 tt=3.030E-09 Cjo=1.700E-12 M=1.959E-01 -+ Vj=1 Bv=1.000E+02 ibv=1.000E-04 ) diff --git a/src/deviceModelLibrary/Templates/NMOS-180um.xml b/src/deviceModelLibrary/Templates/NMOS-180um.xml deleted file mode 100644 index fc3b7a47..00000000 --- a/src/deviceModelLibrary/Templates/NMOS-180um.xml +++ /dev/null @@ -1,112 +0,0 @@ - -NMOS -CMOSN - -8 -3.2 -27 -4.1E-9 -1E-7 -2.3549E17 -0.3823463 -0.5810697 -4.774618E-3 -0.0431669 -1.1498346 -1E-7 -1.910552E-7 -0 -0 -0 -1.2894824 -0.3622063 -0.0713729 -280.633249 --1.208537E-9 -2.158625E-18 -5.342807E-11 -9.366802E4 -1.7593146 -0.3939741 --6.413949E-9 --1E-7 --5.180424E-4 -0 -1 -105.5517558 -0.5 --0.1998871 -1 -7.904732E-10 -1.571424E-8 -0 --1E-8 -1.297221E-9 -1.479041E-9 --0.0955434 -2.4358891 -0 -2.4E-4 -0 -0 -=3.104851E-3 --2.512384E-5 -0.0167075 -0.8073191 -0.1666161 -3.112892E-3 --0.1 -0.7875618 -8E10 -9.213635E-10 -3.85243E-3 -0.01 -6.7 -1 -0 --1.5 --0.11 -0 -0.022 -4.31E-9 --7.61E-18 --5.6E-11 -3.3E4 -0 -1 -0 -1 -0 -0 -1 -0 -1 -0 -2 -0.5 -7.08E-10 -7.08E-10 / -1E-12 -9.68858E-4 -0.8 -0.3864502 -2.512138E-10 -0.809286 -0.1060414 -3.3E-10 -0.809286 -0.1060414 -0 --1.192722E-3 --5 -6.450505E-5 --4.27294E-4 --0.0104078 -6.3268729 -2.226552E-11 -0 -969.1480157 -1E-4 --1.049509E-3 - - diff --git a/src/deviceModelLibrary/Templates/PMOS-180um.xml b/src/deviceModelLibrary/Templates/PMOS-180um.xml deleted file mode 100644 index 99916972..00000000 --- a/src/deviceModelLibrary/Templates/PMOS-180um.xml +++ /dev/null @@ -1,112 +0,0 @@ - -PMOS -CMOSP - -8 -3.2 -27 -4.1E-9 -1E-7 -4.1589E17 --0.3938813 -0.5479015 -0.0360586 -0.0993095 -5.7086622 -1E-6 -1.313191E-7 -0 -0 -0 -0.4911363 -0.2227356 -0.1 -115.6852975 -1.505832E-9 -1E-21 --1E-10 -1.329694E5 -1.7590478 -0.3641621 -3.427126E-7 -1.062928E-6 -0.0134667 -0.6859506 -0.3506788 -168.5705677 -0.5 --0.4987371 -1 -0 -3.028832E-8 -0 --1E-8 --2.349633E-8 --7.152486E-9 --0.0994037 -1.9424315 -0 -2.4E-4 -0 -0 -0.0608072 --0.0426148 -0.7343015 -3.2579974 -7.229527E-6 -0.025389 --1E-3 -0 -1.454878E10 -4.202027E-9 -15 -0.01 -7.8 -1 -0 --1.5 --0.11 -0 -0.022 -4.31E-9 --7.61E-18 --5.6E-11 -3.3E4 -0 -1 -0 -1 -0 -0 -1 -0 -1 -0 -2 -0.5 -6.32E-10 -6.32E-10 -1E-12 -1.172138E-3 -0.8421173 -0.4109788 -2.242609E-10 -0.8 -0.3752089 -4.22E-10 -0.8 -0.3752089 -0 -1.888482E-3 -11.5315407 -1.559399E-3 -0.0319301 -2.955547E-3 --1.1105313 --4.62102E-11 -1E-21 -50 -1E-4 --4.346368E-3 - - diff --git a/src/kicadtoNgspice/Convert.py b/src/kicadtoNgspice/Convert.py index ca14d83f..b7d61c12 100644 --- a/src/kicadtoNgspice/Convert.py +++ b/src/kicadtoNgspice/Convert.py @@ -2,7 +2,7 @@ import os import sys import shutil import TrackWidget - +from xml.etree import ElementTree as ET class Convert: """ @@ -176,7 +176,7 @@ class Convert: if self.value == '': return 0 else: - pass + self.value def addModelParameter(self,schematicInfo): @@ -309,7 +309,8 @@ class Convert: libname = tempStr[0] dimension = tempStr[1] #Replace last word with library name - words[-1] = libname.split('.')[0] + #words[-1] = libname.split('.')[0] + words[-1] = self.getRefrenceName(libname,libpath) #Appending Dimension of MOSFET words.append(dimension) deviceLine[index] = words @@ -320,7 +321,8 @@ class Convert: shutil.copy2(src, dst) else: #Replace last word with library name - words[-1] = libname.split('.')[0] + #words[-1] = libname.split('.')[0] + words[-1] = self.getRefrenceName(libname,libpath) deviceLine[index] = words includeLine.append(".include "+libname) @@ -342,10 +344,23 @@ class Convert: #Adding .include line to Schematic Info at the start of line for item in list(set(includeLine)): schematicInfo.insert(0,item) - - - + return schematicInfo + + def getRefrenceName(self,libname,libpath): + libname = libname.replace('.lib','.xml') + library = os.path.join(libpath,libname) + + #Extracting Value from XML + libtree = ET.parse(library) + for child in libtree.iter(): + if child.tag == 'refrence': + retVal = child.text + else: + pass + return retVal + + \ No newline at end of file diff --git a/src/kicadtoNgspice/DeviceModel.py b/src/kicadtoNgspice/DeviceModel.py index 4866437a..0ae421b6 100644 --- a/src/kicadtoNgspice/DeviceModel.py +++ b/src/kicadtoNgspice/DeviceModel.py @@ -193,7 +193,7 @@ class DeviceModel(QtGui.QWidget): #print "Object Called is ",sending_btn.objectName() self.widgetObjCount = int(sending_btn.objectName()) - self.libfile = str(QtGui.QFileDialog.getOpenFileName(self,"Open Library Directory","../deviceModelLibrary")) + self.libfile = str(QtGui.QFileDialog.getOpenFileName(self,"Open Library Directory","../deviceModelLibrary","*.lib")) #print "Selected Library File :",self.libfile #Setting Library to Text Edit Line -- cgit