diff --git a/+adi/+AD9361/Rx.m b/+adi/+AD9361/Rx.m index 25887b9..eae3b32 100644 --- a/+adi/+AD9361/Rx.m +++ b/+adi/+AD9361/Rx.m @@ -95,6 +95,12 @@ isOutput = false; end + properties (Hidden) + %EnableRx1Rx2PhaseInversion + % If enabled, RX1 and RX2 are phase aligned + EnableRx1Rx2PhaseInversion = 0; + end + properties(Nontunable, Hidden, Constant) Type = 'Rx'; channel_names = {'voltage0','voltage1','voltage2','voltage3'}; @@ -239,6 +245,15 @@ obj.setDebugAttributeLongLong('loopback',value); end end + function set.EnableRx1Rx2PhaseInversion(obj, value) + validateattributes( value, { 'double','single', 'uint32' }, ... + { 'real', 'nonnegative','scalar', 'finite', 'nonnan', 'nonempty','integer','>=',0,'<=',1}, ... + '', 'EnableRx1Rx2PhaseInversion'); + obj.EnableRx1Rx2PhaseInversion = value; + if obj.ConnectedToDevice + obj.setDebugAttributeLongLong('adi,rx1-rx2-phase-inversion-enable',value); + end + end end %% API Functions @@ -271,7 +286,9 @@ function setupInit(obj) obj.setAttributeLongLong(id,'frequency',obj.CenterFrequency ,true,4); % Loopback Mode obj.setDebugAttributeLongLong('loopback', obj.LoopbackMode); - + % Enable Rx1-Rx2 Phase Inversion + obj.setDebugAttributeLongLong('adi,rx1-rx2-phase-inversion-enable', obj.EnableRx1Rx2PhaseInversion); + % Sample rates and RF bandwidth if ~obj.EnableCustomFilter if libisloaded('libad9361')