From 43dc0c577a24e5c99830fc3cb2f5feb6ba8abeac Mon Sep 17 00:00:00 2001 From: Andreas Neiser Date: Mon, 22 Apr 2013 19:31:28 +0200 Subject: [PATCH] Added CtsMod for the second external trigger module --- web/CtsPlugins/CtsMod61.pm | 44 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 web/CtsPlugins/CtsMod61.pm diff --git a/web/CtsPlugins/CtsMod61.pm b/web/CtsPlugins/CtsMod61.pm new file mode 100644 index 0000000..01bb8c2 --- /dev/null +++ b/web/CtsPlugins/CtsMod61.pm @@ -0,0 +1,44 @@ +# Module: Mainz A2 External Trigger Module +# + +package CtsMod61; + +@ISA = (CtsBaseModule); + +use warnings; +use strict; + +sub moduleName {"Mainz A2"} + +sub init { + my $self = $_[0]; + my $address = $_[1]; + + my $trb = $self->{'_cts'}{'_trb'}; + + my $regs = $self->{'_registers'}; + my $expo = $self->{'_exportRegs'}; + my $prop = $self->{'_properties'}; + + my $header = $self->{'_cts'}{'_enum'}{0x61}->read(); + + $regs->{'trg_a2_status'} = new TrbRegister($address + 1, $trb, { + 'value' => {'lower' => 0, 'len' => 32, 'type' => 'hex'}, + }, { + 'accessmode' => "ro", + 'label' => "Mainz A2 Status Register", + 'monitor' => '1' + }); + + $regs->{'trg_a2_control'} = new TrbRegister($address + 2, $trb, {}, + { + 'accessmode' => "rw", + 'label' => "Mainz A2 Control Register", + 'monitor' => '1', + 'export' => 1 + }); + + $self->{'_cts'}->getProperties->{'itc_assignments'}[$header->{'itc_base'}] = "Ext. Logic - A2"; +} + +1; -- 2.43.0