From d2e0f54b1d21adfc6888f668d2b44ffcc50dfea7 Mon Sep 17 00:00:00 2001 From: ian Date: Wed, 14 Apr 2004 16:38:30 +0000 Subject: [PATCH] find resistors --- farnell/circuit.partlist | 128 ++++++++++++++++++++++++++++ farnell/farnell-resistor-convert.pl | 19 ++++- 2 files changed, 146 insertions(+), 1 deletion(-) diff --git a/farnell/circuit.partlist b/farnell/circuit.partlist index 785075f..769c1ab 100644 --- a/farnell/circuit.partlist +++ b/farnell/circuit.partlist @@ -167,4 +167,132 @@ r 0w4 680r = 332-033 r 0w4 1k5 = 332-070 r 0w4 1k8 = 332-082 +std 1r = 306-0445 +std 1r5 = 306-0457 +std 2r2 = 306-0469 +std 3r3 = 306-0470 +std 4r7 = 306-0482 +std 6r8 = 306-0494 +std 10r = 513-544 +std 11r = 513-556 +std 12r = 513-568 +std 13r = 513-570 +std 15r = 513-581 +std 16r = 513-593 +std 18r = 513-600 +std 20r = 513-611 +std 22r = 513-623 +std 24r = 513-635 +std 27r = 513-647 +std 30r = 513-659 +std 33r = 513-660 +std 36r = 513-672 +std 39r = 513-684 +std 43r = 513-696 +std 47r = 513-702 +std 51r = 513-714 +std 56r = 513-726 +std 62r = 513-738 +std 68r = 513-740 +std 75r = 513-751 +std 82r = 513-763 +std 91r = 513-775 +std 100r = 513-787 +std 110r = 513-799 +std 120r = 513-805 +std 130r = 513-817 +std 150r = 513-829 +std 160r = 513-830 +std 180r = 513-842 +std 200r = 513-854 +std 220r = 513-866 +std 240r = 513-878 +std 270r = 513-880 +std 300r = 513-891 +std 330r = 513-908 +std 360r = 513-910 +std 390r = 513-921 +std 430r = 513-933 +std 470r = 513-945 +std 510r = 513-957 +std 560r = 513-969 +std 620r = 513-970 +std 680r = 513-982 +std 750r = 513-994 +std 820r = 514-007 +std 910r = 514-019 +std 1k = 514-020 +std 1k1 = 514-032 +std 1k2 = 514-044 +std 1k3 = 514-056 +std 1k5 = 514-068 +std 1k6 = 514-070 +std 1k8 = 514-081 +std 2k = 514-093 +std 2k2 = 514-100 +std 2k4 = 514-111 +std 2k7 = 514-123 +std 3k = 514-135 +std 3k3 = 514-147 +std 3k6 = 514-159 +std 3k9 = 514-160 +std 4k3 = 514-172 +std 4k7 = 514-184 +std 5k1 = 514-196 +std 5k6 = 514-202 +std 6k2 = 514-214 +std 6k8 = 514-226 +std 7k5 = 514-238 +std 8k2 = 514-240 +std 9k1 = 514-251 +std 10k = 514-263 +std 11k = 514-275 +std 12k = 514-287 +std 13k = 514-299 +std 15k = 514-305 +std 16k = 514-317 +std 18k = 514-329 +std 20k = 514-330 +std 22k = 514-342 +std 24k = 514-354 +std 27k = 514-366 +std 30k = 514-378 +std 33k = 514-380 +std 36k = 514-391 +std 39k = 514-408 +std 43k = 514-410 +std 47k = 514-421 +std 51k = 514-433 +std 56k = 514-445 +std 62k = 514-457 +std 68k = 514-469 +std 75k = 514-470 +std 82k = 514-482 +std 91k = 514-494 +std 100k = 514-500 +std 110k = 514-512 +std 120k = 514-524 +std 130k = 514-536 +std 150k = 514-548 +std 160k = 514-550 +std 180k = 514-561 +std 200k = 514-573 +std 220k = 514-585 +std 240k = 514-597 +std 270k = 514-603 +std 300k = 514-615 +std 330k = 514-627 +std 360k = 514-639 +std 390k = 514-640 +std 430k = 514-652 +std 470k = 514-664 +std 510k = 514-676 +std 560k = 514-688 +std 620k = 514-690 +std 680k = 514-706 +std 750k = 514-718 +std 820k = 514-720 +std 910k = 514-731 +std 1m = 514-743 + end diff --git a/farnell/farnell-resistor-convert.pl b/farnell/farnell-resistor-convert.pl index d8ed939..f98c619 100755 --- a/farnell/farnell-resistor-convert.pl +++ b/farnell/farnell-resistor-convert.pl @@ -8,6 +8,11 @@ # code and is the words of the part name prefix. if (@ARGV>=2) { ($kind,@prefix)= @ARGV; + sub insdot ($) { + my ($x)= @_; + $x =~ s/[mkr]/./; + return $x; + } while () { if (m/^Avail\s/) { undef $value; @@ -19,10 +24,22 @@ if (@ARGV>=2) { } elsif (m/^Item\s+([-0-9]+)$/) { die unless defined $value; next unless length $value; - printf "%s\t%s\n", join(' ',@prefix,$value), $1; + $item= $1; + die if exists $v2i{$value} and $v2i{$value} ne $1; + $v2i{$value}= $item; undef $value; } } + foreach $v (sort { + foreach $mkr (qw(m k r)) { + $z= ($a =~ m/$mkr/) <=> ($b =~ m/$mkr/); + return $z if $z; + } + return insdot($a) <=> insdot($b); + } + keys %v2i) { + printf "%s =\t%s\n", join(' ',@prefix,$v), $v2i{$v}; + } } elsif (!@ARGV) { while () { if (m/viewproductdetails.*\?prodId\=(\d{3})(\d{3,7})\"/) { -- 2.30.2