use Getopt::Long;
use HADES::TrbNet;
-use lib '/d/jspc37/mimosis/scripts/';
use Mimosis;
use Time::HiRes qw(usleep sleep);
use Data::Dump qw(dump);
"help|h" => \$help,
);
-if ($help)
+if ($help) {
my $message = <<'END_MESSAGE';
-f, --fpga HEX -> Hex address of the FPGA. Optional. Default is 0xa000.
-s, --slow=NUM -> Execute I2C commands with a pause of NUM microseconds in between.
my $address = ( $val0->{$fpga} ) & 0xff;
my $control = ( ( $val0->{$fpga} ) >> 8 ) & 0xff;
- # dump($val0);
+ # dump($val0);
my $val1 = trb_register_read( $fpga, 0xd60b ); usleep($slow);
my $transID = ( $val1->{$fpga} ) & 0xff;
my $error = ( $val1->{$fpga} >> 16 ) & 0xff;
my $length = ( $val1->{$fpga} >> 24 ) & 0xff;
- # dump($val1);
+ # dump($val1);
my $val2 = trb_register_read( $fpga, 0xd60c ); usleep($slow);
my $data = ( $val2->{$fpga} ) & 0xffffffff;
- # dump($val2);
+ # dump($val2);
printf("Address: 0x%x\nControl: 0x%x\nTransID: 0x%x\nChannel: 0x%x\nError: 0x%x\nLength: 0x%x\nData: 0x%x\n", $address, $control, $transID, $channel, $error, $length, $data);
}
trb_register_write( $fpga, 0xd600, $scaAddress); usleep($slow);
my $payload = ($command << 16) + ($channel << 8) + $transID;
- # printf( "%x %x %x %x %x\n", $transID, $channel, $command, $data, $payload );
+ printf( "%x %x %x %x %x\n", $transID, $channel, $command, $data, $payload );
trb_register_write( $fpga, 0xd602, $payload); usleep($slow);
trb_register_write( $fpga, 0xd603, $data); usleep($slow);
trb_register_write( $fpga, 0xd601, 0x4); usleep($slow);