Ejemplo n.º 1
0
        public uint LockDetectCount()
        {
            uint data = m_hmc.ReadRegister(HMC704LP4E_REGS.REG7_LockDetect);

            m_allRegs.regLockDetect = BF.CreateBitField <REG7_LockDetect>(data);
            return(m_allRegs.regLockDetect.lkd_wincnt_max);
        }
Ejemplo n.º 2
0
        void SetRFDevideBy2(bool devide)
        {
            uint data = m_hmc.ReadRegister(HMC704LP4E_REGS.REG8_AnalogEN);

            m_allRegs.regAnalogEn = BF.CreateBitField <REG8_AnalogEN>(data);
            m_allRegs.regAnalogEn._8GHzDivideBy2En = (uint)(devide == true ? 1 : 0);
            m_hmc.WriteRegister(HMC704LP4E_REGS.REG8_AnalogEN, m_allRegs.regAnalogEn.ToUInt32());
        }
Ejemplo n.º 3
0
        public void LockDetectCount(int count)
        {
            uint data = m_hmc.ReadRegister(HMC704LP4E_REGS.REG7_LockDetect);

            m_allRegs.regLockDetect = BF.CreateBitField <REG7_LockDetect>(data);
            //m_allRegs.reg1Rst.EnFromSPI = (uint)mode;
            m_hmc.WriteRegister(HMC704LP4E_REGS.REG7_LockDetect, m_allRegs.regLockDetect.ToUInt32());
        }
Ejemplo n.º 4
0
        public void Power(PowerMode mode)
        {
            uint data = m_hmc.ReadRegister(HMC704LP4E_REGS.RST);

            m_allRegs.reg1Rst = BF.CreateBitField <REG1_RST>(data);
            //m_allRegs.reg1Rst.EnFromSPI = (uint)mode;
            m_hmc.WriteRegister(HMC704LP4E_REGS.RST, m_allRegs.reg1Rst.ToUInt32());
        }
Ejemplo n.º 5
0
        public bool CheckLockDetect()
        {
            uint data = m_hmc.ReadRegister(HMC704LP4E_REGS.REG12_GPO2);

            m_allRegs.regGP02 = BF.CreateBitField <REG18_GPO2>(data);
            if (m_allRegs.regGP02.LockDetect == 1)
            {
                return(true);
            }
            return(false);
        }
Ejemplo n.º 6
0
        public void SetOperationMode(OperationModes mode)
        {
            if (mode == OperationModes.Integer)
            {
                uint data = m_hmc.ReadRegister(HMC704LP4E_REGS.REG6_SD_CFG);
                m_allRegs.reg6SdCfg             = BF.CreateBitField <REG6_SDCFG>(data);
                m_allRegs.reg6SdCfg.frac_rstb   = 0;
                m_allRegs.reg6SdCfg.frac_bypass = 1;
                m_hmc.WriteRegister(HMC704LP4E_REGS.REG6_SD_CFG, m_allRegs.reg6SdCfg.ToUInt32());


                data = m_hmc.ReadRegister(HMC704LP4E_REGS.FrequencyRegisterFractionalPart);
                m_allRegs.regFreqFrac      = BF.CreateBitField <REG4_FrequencyFractionaPart>(data);
                m_allRegs.regFreqFrac.frac = 1;
                m_hmc.WriteRegister(HMC704LP4E_REGS.FrequencyRegisterFractionalPart, m_allRegs.regFreqFrac.ToUInt32());

                // R = 1 - we will use the default which set to 1 already
            }
            m_operationMode = mode;
        }
Ejemplo n.º 7
0
        void ReadAllRegisters()
        {
            uint data;

            data             = m_hmc.ReadRegister(HMC704LP4E_REGS.ID);
            m_allRegs.chipId = BF.CreateBitField <CHIP_ID>(data);
            Console.WriteLine("m_allRegs.ID {0:X}", m_allRegs.chipId.ToUInt32());
            if (m_allRegs.chipId.ToUInt32() != 0xA7975)
            {
                throw (new SystemException("Chip ID expected to be 0xA7975"));
            }

            data = m_hmc.ReadRegister(HMC704LP4E_REGS.RST);
            m_allRegs.reg1Rst = BF.CreateBitField <REG1_RST>(data);
            Console.WriteLine("m_allRegs.reg1Rst {0:X}", m_allRegs.reg1Rst.ToUInt32());

            data = m_hmc.ReadRegister(HMC704LP4E_REGS.REFDIV);
            m_allRegs.regRefDiv = BF.CreateBitField <REG2_REFDIV>(data);
            Console.WriteLine("m_allRegs.regRefDiv {0:X}", m_allRegs.regRefDiv.ToUInt32());

            data = m_hmc.ReadRegister(HMC704LP4E_REGS.FrequencyRegisterIntegerPart);
            m_allRegs.regFreqInt = BF.CreateBitField <REG3_FrequencyIntegerPart>(data);
            Console.WriteLine("m_allRegs.regFreqInt {0:X}", m_allRegs.regFreqInt.ToUInt32());

            data = m_hmc.ReadRegister(HMC704LP4E_REGS.FrequencyRegisterFractionalPart);
            m_allRegs.regFreqFrac = BF.CreateBitField <REG4_FrequencyFractionaPart>(data);
            Console.WriteLine("m_allRegs.regFreqFrac {0:X}", m_allRegs.regFreqFrac.ToUInt32());

            data = m_hmc.ReadRegister(HMC704LP4E_REGS.REG5_Seed);
            m_allRegs.regAuxSPI = BF.CreateBitField <REG5_AuxSPI>(data);
            Console.WriteLine("m_allRegs.regSeed {0:X}", m_allRegs.regAuxSPI.ToUInt32());

            data = m_hmc.ReadRegister(HMC704LP4E_REGS.REG6_SD_CFG);
            m_allRegs.reg6SdCfg = BF.CreateBitField <REG6_SDCFG>(data);
            Console.WriteLine("m_allRegs.regSdCfg {0:X}", m_allRegs.reg6SdCfg.ToUInt32());

            data = m_hmc.ReadRegister(HMC704LP4E_REGS.REG7_LockDetect);
            m_allRegs.regLockDetect = BF.CreateBitField <REG7_LockDetect>(data);
            Console.WriteLine("m_allRegs.regLockDetect {0:X}", m_allRegs.regLockDetect.ToUInt32());

            data = m_hmc.ReadRegister(HMC704LP4E_REGS.REG8_AnalogEN);
            m_allRegs.regAnalogEn = BF.CreateBitField <REG8_AnalogEN>(data);
            Console.WriteLine("m_allRegs.regAnalogEn {0:X}", m_allRegs.regAnalogEn.ToUInt32());

            data = m_hmc.ReadRegister(HMC704LP4E_REGS.REG9_ChargePump);
            m_allRegs.regChargePump = BF.CreateBitField <REG9_ChargePump>(data);
            Console.WriteLine("m_allRegs.regChargePump {0:X}", m_allRegs.regChargePump.ToUInt32());

            data = m_hmc.ReadRegister(HMC704LP4E_REGS.REGA_AuxSPITrigger);
            m_allRegs.regAuxSPITrigger = BF.CreateBitField <REG10_AuxSPITrigger>(data);
            Console.WriteLine("m_allRegs.regModulationStep {0:X}", m_allRegs.regAuxSPITrigger.ToUInt32());

            data            = m_hmc.ReadRegister(HMC704LP4E_REGS.REGB_PD);
            m_allRegs.regPd = BF.CreateBitField <REG11_PD>(data);
            Console.WriteLine("m_allRegs.regPd {0:X}", m_allRegs.regPd.ToUInt64());

            data             = m_hmc.ReadRegister(HMC704LP4E_REGS.REGF_GPO);
            m_allRegs.regGPO = BF.CreateBitField <REG15_GPO>(data);
            Console.WriteLine("m_allRegs.regGPO {0:X}", m_allRegs.regGPO.ToUInt32());

            data = m_hmc.ReadRegister(HMC704LP4E_REGS.REG12_GPO2);
            m_allRegs.regGP02 = BF.CreateBitField <REG18_GPO2>(data);
            Console.WriteLine("m_allRegs.regGP02 {0:X}", m_allRegs.regGP02.ToUInt32());

            data = m_hmc.ReadRegister(HMC704LP4E_REGS.REG13_BISTStatus);
            m_allRegs.regBitsStatus = BF.CreateBitField <REG19_BISTStatus>(data);
            Console.WriteLine("m_allRegs.regBitsStatus {0:X}", m_allRegs.regBitsStatus.ToUInt32());
        }