From 898f13bccb99cbba059372b912b0d07dfa9691e6 Mon Sep 17 00:00:00 2001 From: "c.wendisch" Date: Thu, 2 Feb 2023 18:43:53 +0100 Subject: [PATCH] fix a voltage bug, add first-generation boards to address generation --- scripts/generate_address_list.pl | 37 +++++++++++++++++++++----------- scripts/mdc_voltage.pl | 2 +- scripts/trbflash.log | 4 ---- trbflash.log | 4 ---- 4 files changed, 26 insertions(+), 21 deletions(-) delete mode 100644 scripts/trbflash.log delete mode 100644 trbflash.log diff --git a/scripts/generate_address_list.pl b/scripts/generate_address_list.pl index 447fcb0..923496c 100755 --- a/scripts/generate_address_list.pl +++ b/scripts/generate_address_list.pl @@ -45,21 +45,34 @@ foreach my $p (0..3) { foreach my $b (0..15) { my $str; + if($boards->[$p][$s][$b] > 100) { + my $addr; + $addr = MDC::get_address($p,$s,$b,5); + $str .= sprintf(" 0x%04x %03i %i\n",$addr,$boards->[$p][$s][$b],5); + + $addr = MDC::get_address($p,$s,$b,0); + $str .= sprintf(" 0x%04x %03i %i\n",$addr,$boards->[$p][$s][$b],0); - my $addr; - $addr = MDC::get_address($p,$s,$b,5); - $str .= sprintf(" 0x%04x %03i %i\n",$addr,$boards->[$p][$s][$b],5); - - $addr = MDC::get_address($p,$s,$b,0); - $str .= sprintf(" 0x%04x %03i %i\n",$addr,$boards->[$p][$s][$b],0); + $addr = MDC::get_address($p,$s,$b,1); + $str .= sprintf(" 0x%04x %03i %i\n",$addr,$boards->[$p][$s][$b],1); + + if($longs->[$p][$s][$b]) { + $addr = MDC::get_address($p,$s,$b,2); + $str .= sprintf(" 0x%04x %03i %i\n",$addr,$boards->[$p][$s][$b],2); + }; + } + else { #first series short MBO + my $addr; + $addr = MDC::get_address($p,$s,$b,5); + $str .= sprintf(" 0x%04x 8%03i %i\n",$addr,$boards->[$p][$s][$b],1); + + $addr = MDC::get_address($p,$s,$b,0); + $str .= sprintf(" 0x%04x 6%03i %i\n",$addr,$boards->[$p][$s][$b],3); - $addr = MDC::get_address($p,$s,$b,1); - $str .= sprintf(" 0x%04x %03i %i\n",$addr,$boards->[$p][$s][$b],1); + $addr = MDC::get_address($p,$s,$b,1); + $str .= sprintf(" 0x%04x 7%03i %i\n",$addr,$boards->[$p][$s][$b],3); - if($longs->[$p][$s][$b]) { - $addr = MDC::get_address($p,$s,$b,2); - $str .= sprintf(" 0x%04x %03i %i\n",$addr,$boards->[$p][$s][$b],2); - }; + } print FILE $str; last if $p == 0 && $b == 13; diff --git a/scripts/mdc_voltage.pl b/scripts/mdc_voltage.pl index 4faad22..c2a4c25 100755 --- a/scripts/mdc_voltage.pl +++ b/scripts/mdc_voltage.pl @@ -116,7 +116,7 @@ elsif (defined $board && defined $relative && defined $channel) { my ($v1,$v2) = MDCPower::get_voltage($board); die "Settings not found\n" if $v1 == -1 && $v2 == -1; - my $newset = $channel?$v1:$v2; + my $newset = $channel?$v2:$v1; $newset += $relative; if($newset>7) { $newset = 7; print "Out of range.\n";} if($newset<0) { $newset = 0; print "Out of range.\n";} diff --git a/scripts/trbflash.log b/scripts/trbflash.log deleted file mode 100644 index 53ef26d..0000000 --- a/scripts/trbflash.log +++ /dev/null @@ -1,4 +0,0 @@ - - ------------- Thu Feb 2 15:26:45 2023 ---------------------------------- - diff --git a/trbflash.log b/trbflash.log deleted file mode 100644 index 06e0a2e..0000000 --- a/trbflash.log +++ /dev/null @@ -1,4 +0,0 @@ - - ------------- Thu Jan 26 11:47:57 2023 ---------------------------------- - -- 2.43.0