Quantcast
Channel: EngineerZone : Discussion List - All Communities
Viewing all 51060 articles
Browse latest View live

Negative Flag

$
0
0

in sigma studio, is there a way of flagging a negative number?

I need an output if the number is negative so I can encode it.


Is ADSST-GPSRF01 in production?

$
0
0

I saw some old literature regarding ADSST-GPSRF01. It's not clear to me if it is still in production or it was only announced. Also, is there any Analog Devices similar replacement for GNNS signals?

 

Thanks

HMC457's IP3 problem

$
0
0

Hi Sir,

 

As Data sheet, the IP3 is 45dBm(typ.) and I would like to know how many dBc in this IP3 spec. ?

Thanks~

ADIsimPLL Vr level

$
0
0

I am designing an active loop filter using ADIsimPLL for ADF4159. In the topology, there is a voltage level of Vr.

From help document, Vr is calculated as 0.5(Vmax+Vmin).

In the ADIsimPLL interface, there is a group of Vmax and Vmin values, as shown in the attachment. 

Can I use them for Vr calculation?

Specifically, does it mean Vr = 0.5*3.3 = 1.65V in my design? Thanks

EV-RADAR dev kit Power Supply

$
0
0
We  have bought your EV-RADAR MMIC2 and  EV-ADAR-D2S(supporting board for EV-RADAR MMIC) board for use in one of our projects. We note that these boards require +5V, +9V and -9 V supplies for their operation. However, we have not been able to get information on the current rating of these supplies. 
We have gone through the documentation you have on your web-site w.r.t this development kit and have failed to get the required information.
Request you to give us the maximum current ratings required for each of these supplies and also the voltage tolerances of these supplies.
In addition, please let us know as to the suitability of switching power supplies for these development kits and the impact if any on the performance due to the same.

using shunt with ADE7953 Demo Board is giving large error readings, please help me!

$
0
0

dlath Please I was using CT before and now using shunt resistor, I have configured the ADE7953 EVAL board as directed in the UG-194. I used shunt resistor of 200microOhms. on the board there is no way to bypass the 51ohms burden resistor, so I removed it. I used the filter circuit of 1K resistor with 0.033microFarads capacitor. pls kindly attend to the challenges I'm facing using shunt, I look forward to reading from you. 

Here are my configuration values and error readings.

  • default reading ( without calibration) are:

error reading at

  1.  50A is 3.9909 at p.f of 1, and 9..0542 at p.f of 0.5L
  2.  5A is 1.6528 at p.f of 1, and 2.6420 at p.f of 0.5L
  3.  0.05A is -4.6647 at p.f of 1
  •  reading ( after AWGAIN calibration) are

error reading at

  1.  50A is 0.9670 at p.f of 1, and 0.5543 at p.f of 0.5L
  2.  5A is -0.0284 at p.f of 1, and -1.6135 at p.f of 0.5L
  3.  2.5A is -0.7582 at p.f of 1, and -3.1289 at p.f of 0.5L
  4.  0.5A is -7.0258 at p.f of 1, and -16.128 at p.f of 0.5L

 reading ( after PHACAL and AWGAIN calibration)  it gives correct accuracy at 5A, p.f of 1 and  0.5L. 

  • After offset,PHACAL,AWGAIN calibration, the reading at 5A  is 1.018. at p.f of 1 and 1.6584 at p.f of 0.5L

my question goes does; 

  1. what am i doing wrong ?
  2. how do i solve this problem?
  3. i discovered that after some time the reading goes higher again, does temperature affects the accuracy of the metering IC?
  4. culled from the AN118 "Do not perform offset calibration with grounded inputs because a low level signal is necessary to accurately measure the offset." explain this pls? because i am using shunt and its single ended. from the configuration, the phase is connected to ground.

AD9361 data_clk始终存在相位噪声

$
0
0

我们现在配置AD9361,DATA CLK出现了一个问题。我需要的数据采样率为40MHz,端口模式为DUAL Port,数据速率为SDR。按照Evaluation Software生成的配置文件配置,得到的DATA_CLK频率正确,但是始终存在相位噪声,导致数据采样不准确。示波器采集的DATA_CLK信号如下:

配置 BB DC 和 TX QUANDRATE 校准的 DATA CLK

把DC Calibration和TX Quanture Calibration去掉之后,DATA_CLK的相位噪声较小。但是校准无法完成。

没有配置 BB DC 和 TX QUANDRATE 校准的 DATA CLK

按照原配置,DC校准能够完成。我想问下,为什么DC校准和TX Quanture校准会导致我DATA_CLK质量下降?

 

配置的文件见附件。

De-asserting ADI_ENABLE in IIO device when destroying a buffer?

$
0
0

HI,

I'd like to make a change request. I'm specifically interested in using the ADI_ENABLE signal (signal "up_adc_enable" in hdl/up_adc_channel.v at dev · analogdevicesinc/hdl · GitHub ) for synchronization/packetization on a DMA channel.

 

This signal is currently set when "update_scan_mode()" is called for a particular IIO device. From a LIBIIO perspective, this happens when "iio_device_create_buffer()" is run, after which "up_adc_enable" is asserted. However, when executing "iio_buffer_destroy()", "up_adc_enable" is unchanged and will remain asserted.

 

Can there please be a call an "update_scan_mask" when destroying a buffer so that "up_adc_enable" is de-asserted?

 

Thanks!


ADRV9371 GPIO

$
0
0

Hi!

 

I have an ADRV9371-W/PCBZ card from Analog Devices. It is a 2 channel radio card.

 

So I am using Linux to control the radio, and I want to write a bash script to automate what I am doing(I don't know much about C programming). I'm using the commands from this page which lets me change the frequency that comes out of the transmitter.

 

There is also a bunch of header pins labelled P502 which look like they are supposed to be GPIOs. I'd like to use these pins for blinking some status LEDs. What I'm worried about is that I think the radio chip on this card can sometimes use these GPIOs for other things, and I don't want to break anything.

 

On the IIO Oscilloscope webpage it looks like you can manually configure the GPIOs to do what you want, so I figure there must be some kind of command to make the radio chip not use the GPIO pins.

 

Can someone tell me what the command line instruction would be to set the GPIOs to user mode? And what the command would be to set the voltage level?

 

I'm guessing the command should be something like

 

root:/sys/bus/iio/devices/iio:device3> echo 0 > out_altvoltage1_GPIO

because that's kind of what all the other commands look like. I just don't know what exactly it is.

 

Thanks for your help!

 

-Ryan

Is it possible to use iio_device_reg_read()/write() to set and get values from AXI registers?

$
0
0

Hello!

My DUT is PicoZed SDR development kit board. I am trying to read "axi_ad9361 block" 32-bit register inside ad9361-iiosream.c example with a help of iio_device_reg_read() API provided by Libiio framework, but still no succeed with error code -13. I do it like this:

assert(get_ad9361_stream_dev(ctx,RX,&rx) && "No rx dev found"); // from ad9361-iiostream.c example

ret = iio_device_reg_read(rx,0x800000BC,&value); 

Trying to find solution I found the followind post why iio_device_reg_read() doesn't work?  and as I understood I have two options using these API:

1) if I use physical addresses starting from 0x0 for specific device I get access to its SPI registers

2) if I use virtual addresses starting from 0x80000000 I get access to the AXI registers, because they are mmaped by Libiio drivers to this virtual address in OS.

In my case I would like to use the 2-nd option. Here are my AXI blocks:

In order to check my understanding I used iio-oscilloscope software provided by AD (debug tab) in order to write 32-bit value inside register 0x790200BC of "axi_ad9361" block. This register I choosed from hld reg map. I found that "cf-ad9361-lpc" is the exact device which is MMAPED to axi block and used 0x800000BC virtual address in order to write values there. And I can succesfully read these values with AXI-JTAG debugger from Vivado using address 0x790200BC. I would like to do the same but inside ad9361-iiostream.c. So my questions are:

1) Is my understaning of the whole workflow correct ?

2) How to read and write AXI registers with a help of iio_device_reg_read()/write() if it is possible? 

3) Are all these axi blocks already mmaped in ad9361-iiostream.c to some specific devices. For example axi_ad9361 to cf-ad9361-lpc device? 

4) What do I need to do in order to mmap custom AXI block if I would like to do it somewhen ? 

I will be very grateful to receive any advice and help. Thank you!

Measuring magnetic field (-10000 to +5000 Gauss) using AD22151

$
0
0

I made a magnetic field module using the AD22151 sensor based on the bipolar configuration in the datasheet. The sensitivity S is determined by R3 and R2. Theoretically speaking, my sensor module should be able to measure -8000 to +8000 Gauss.

However, when I measured the magnetic field over a hard magnet, the output voltage easily got to 4.69 V which is the maximum output of the sensor. I measured the same magnet using a Gaussmeter, the reading is 3300 Gauss. Do I misunderstand the gain equation given by the datasheet?

Someone asked questions about AD22151 in the forum. The answer said the sensor could only measure -2500 to +2500 Gauss in bipolar configuration and 0 to +5000 Gauss in the unipolar configuration. If this is true, then it may answer my question. But the thing is that the datasheet shows that the magnetic flux density that can be measured is Unlimited which is different from what was answered in the forum.

If the sensor has a limitation on the measured flux density, is there any other magnetic field sensor that has a larger range of measurement?

 

 

 

AD538 Two Quadrant Division

$
0
0

I am building a detector that has two output voltages that I need to divide. The numerator could have positive or negative voltage depending on the location of a laser beam on the detector. The denominator will always be positive. 

 

I have been trying to build a circuit to divide two voltages using the AD538 Real-Time Analog Computational Unit (ACU). The circuit diagram for two quadrant division using the AD538 is shown below and the data sheet is attached.

 

Two Quadrant Division Circuit Figure

The trimming potentiometer labeled R2 10kOhms, should this have a center at 10kOhms or a maximum at 10kOhms? In the data sheet it says that the center of the trimming potentiometer should give a gain of 1.4, and I am not sure if that means set the resistance to 5kOhms or 10kOhms. 

 

Further, I have tried many values for the R2 potentiometer, but have not been able to accurately divide two voltages consistently. I am able to get a correct value for negative numerator voltages when I adjust R2, but when I change the fraction I do not get the correct value. And when I test with positive numerator voltages, I am never able to get an accurate value. The output voltage is a small negative value (I don't know why it would be negative if both voltages in the fraction are positive?) and doesn't change when I vary the input voltage values. 

 

Any help with the two quadrant division circuit would be greatly appreciated.

 

Thank you!

Shock&vibration environment for Hittite PLL

$
0
0

Hello,

We are using with HMC840 PLL in Fractional Mode and 100MhZ REF. We experience some issues at vibration&shock even when Reference don't pass through same vibration environment. I see some spurious near carrier and even loss of lock with RF power loss at some situation until I write all the registers again. Please suggest if you have some vibration sensitivity tests?

I experienced that kind of problems in cavity resonator VCO is the same problem I experience now at integrated VCO?

ADIS-EVAL and ADIS16488 endless update

$
0
0

Hi,

I have a ADIS-16488AMLZ with ADIS-EVAL board. I didnt use it for more than 2 years and grab it out few weeks ago and connect to pc and start IMU Evaluation software. Everything works OK but 10 days ago after I start Eval software, it says "updating EVAL-ADIS Firmware" and then "waiting for operation to complete and reattach". It was not done after 8 hours.

Now when I connect to USB and start the IMU software then I get always the update message. When I abort the updtae then no connection is made to ADIS-16488.

 

Any Idea how can I solve this problem?

 

Thanks,

Osto

High Frequency generation IC through interface?

$
0
0

Hello, I am new with RF, I need to generate 2.00 GHz to 2.20 square wave depending upon selection through controller. On every 10us(minimum time) new data come and frequency change between given range. so i need frequency change time <1us Is there any suitable IC which can interface with controller for frequency selection with that much speed?frequency generation rf blockseticghz


ADRF 6850 Automatic Gain Control (AGC)

$
0
0

Hello,

 

My application needs to operate in the ISM-915 MHz on the RF side. At the same time,my application requires analog baseband with 1 V p2p IQ (for each IN, IP, QN, QP).

 

I'm using ADRF6850 as RX front-end since it provides analog IQ. The internal gain from 0 to 60 dB is set by external voltage (VGAIN) from 0 to 1.5V. ADRF6850 provides baseband  outputs up to 2.5 V p2p.

 

I need a circuit that adjusts the gain such that baseband output stays around 1 V p2p, regardless of RF input power (unless it is too low). I see two possible options:

 

1) Get automatic AGC on the RF side and manually set VGAIN such that baseband never exceeds 1 V p2p. This option is less desirable since combined RF from all frequencies will be used to set the gain.

 

2) Set up closed loop feedback from baseband to VGAIN. This option is proffered since gain is set based on the in-band down-converted power.

 

Ideally, I want to use a part that can be configured to my specifications, instead of designing my own feedback loop (I don't know what is the feed-forward function of ADRF6850 is to properly design the closed loop).

 

As a note, 1 V p2p signal will be interfacing with the low-voltage integrated circuit. Attenuator. from 2.5 V to 1 V is not desired because it will lower SNR of the signal, which is critical. Similarly, clipping the BB at 1 V is not possible since it will alter the signal.

 

Thank you,

Ivan

Controlling AD5372 Using 64-bit MATLAB

$
0
0

Hi,

 

I am trying to control the DAC EVAL-AD5372 from the MATLAB software environment.

I was able to do this successfully from 32bit MATLAB using the loadlibrary function and DLL ADI_CYUSB_USB4.dll found from http://ez.analog.com/thread/11105 and a wrapper I created.

 

However, when I try to do the same for 64bit MATLAB, the board fails to be detected. Has anyone been successful using this DLL in a 64bit application? Is it a problem of MATLAB using a specific compiler?

 

Thanks,

Luke

ADRV9364-Z7020 design files

$
0
0

I am looking for the design files for the ADRV9364-Z7020, and was told by AD support to post a request on this forum.

 

For reference, the email I received is below.

 

------------------

Hi Frank,
I was informed to have you post your questions regarding the reference design pricing on our Engineer Zone forum.  

https://ez.analog.com/community/wide-band-rf-transceivers/design-support-ad9371

 

They will likely take this out of the forum and email you directly but this is where they noted you should request this since it is still not fully released. 

SC589 Hangs when testing MCAPI Test Code

$
0
0

Hello,
 
I am following 'Multicore support->Loading of multicore apps by the boot ROM' from Document 'Linux_Add-in_User's_Guide-1.1.0'  to Generate LDR image.If the generated LDR image is flashed the device hangs/does not boot.

Below is the message displayed after board reset.

 

sc # reset
resetting ...
 
 
Below are steps followed :
 
1) To generate LDR image  
 
    elfloader.exe -proc ADSP-SC589 -si-revision 0.1 -b spimaster -f binary -width 8 -bcode 1 -init init-sc58x-ezkit-hpc.elf -core0=u-boot-sc58x-ezkit-hpc -core1=mcapi_send_recv_Core1.dxe -NoFinalTag=u-boot-sc58x-ezkit-hpc -o u-boot-sc58x-ezkit-hpc-init-sc58x-ezkit-hpc-elf-mcapi.ldr
     
    Note:  
    The init and u-boot files are copied taken from Linux environment after installing adi-CrossCoreEmbeddedStudio-linux-x86-2.3.0.deb and adi-LinuxAddinForCCES-linux-x86-1.1.0.deb files (PATH:\opt\analog\cces-linux-add-in\1.1.0\uboot-sc58x-1.1.0\bin\)
    The mcapi_send_recv_Core1.dxe file is generated using import function from CCES studio (PATH:/opt/analog/cces-linux-add-in/1.1.0/examples/cces_mcapi_test)
 
 
2) To flash generated LDR image
    The generated LDR image is copied to SD card for writing it into flash
     
    a) ext2load mmc 0:1 ${loadaddr} u-boot-sc58x-ezkit-hpc-init-sc58x-ezkit-hpc-elf-mcapi.ldr
    b) sf probe 2:1
    c) sf erase 0 0x80000
    d) sf write ${loadaddr} 0 ${filesize}
 
 
3) TO flash dtb command
    The dtb file is copied to SD card for writing it into flash
     
    a) ext2load mmc 0:1 ${loadaddr} sc58x-ezkit-hpc.dtb
    b) sf probe 2:1
    c) sf erase 0x900000 0x40000
    d) sf write 0xc2000000 0x900000 ${filesize}
 
4) TO boot Linux
    To save environment and reset
     
    a) set sdargs set bootargs root=/dev/mmcblk0p1 rw rootwait rootfstype=ext3 clkin_hz=(25000000) earlyprintk console=ttySC0,57600
    b) set sdboot 'run sdargs; sf probe 2:1;sf read 0xc4000000 0x900000 0x40000;ext2load mmc 0:1 0xc2000000 vmImage-sc58x-ezkit-hpc;bootm ${loadaddr} - ${dtbaddr}'
    c) set bootcmd run sdboot
    d) save
    e) reset
 

 

Please help me to resolve this issue.
Thank You,
Deepak Agasibagil

ADF5355 correct programming sequence?

$
0
0

Hey Guys,

i am using for a custom evaluation board the ADF5355 as a LO for a QAM modulator/demodulator. Allthough I use the programming software there is something wrong.

I want the ADF5355 to give a LO at 8,571428GHz using RFOutB and a 20MHz reference. Here is my programming sequence. Sadly I don't see my error:

/**
* @brief          ADF5355 for 8,5714 GHz operation configuration function during power up
* @author          Benjamin Brammer
* @date          15.05.2017
*
* This function configures the ADF5355 for 8,5714 GHz operation during power up.
*
*/

voidADF5355_8_5714GHz_config_startup(void)
{
     /* asserting CE */
     ENABLE_ADF5355;

     /* configure register 12 (default value) */
     adf5355_data[0]=1;
     adf5355_data[1]=0x041C;

     CS_ADF5355_LOW;
     HAL_SPI_Transmit_DMA(&hspi2,&adf5355_data[0],2);//transfer
     while(HAL_SPI_GetState(&hspi2)== HAL_SPI_STATE_BUSY_TX);
     CS_ADF5355_HIGH;

     /* configure register 11 (reserved! don't change!) */
     adf5355_data[0]=0x0061;
     adf5355_data[1]=0x300B;

     CS_ADF5355_LOW;
     HAL_SPI_Transmit_DMA(&hspi2,&adf5355_data[0],2);//transfer
     while(HAL_SPI_GetState(&hspi2)== HAL_SPI_STATE_BUSY_TX);
     CS_ADF5355_HIGH;

     /* configure register 10 (ADC_CLK_DIV = 50) */
     adf5355_data[0]=0x00C0;
     adf5355_data[1]=0x0CBA;          //ToDo: maybe there is a mistake here!

     CS_ADF5355_LOW;
     HAL_SPI_Transmit_DMA(&hspi2,&adf5355_data[0],2);//transfer
     while(HAL_SPI_GetState(&hspi2)== HAL_SPI_STATE_BUSY_TX);
     CS_ADF5355_HIGH;

     /* configure register 9 (VCO Band Division = 9 ;
      * ALC = 30 ; Synth lock timeout = 12 ; timeout = 34) */

     adf5355_data[0]=0x0908;
     adf5355_data[1]=0xBCC9;          // ToDo: maybe there is a mistake here!

     CS_ADF5355_LOW;
     HAL_SPI_Transmit_DMA(&hspi2,&adf5355_data[0],2);//transfer
     while(HAL_SPI_GetState(&hspi2)== HAL_SPI_STATE_BUSY_TX);
     CS_ADF5355_HIGH;

     /* configure register 8 (reserved! don't change!) */
     adf5355_data[0]=0x102D;
     adf5355_data[1]=0x0428;

     CS_ADF5355_LOW;
     HAL_SPI_Transmit_DMA(&hspi2,&adf5355_data[0],2);//transfer
     while(HAL_SPI_GetState(&hspi2)== HAL_SPI_STATE_BUSY_TX);
     CS_ADF5355_HIGH;

     /* configure register 7 (LE sync = 1 ; LDC = 2048 ;
      * LOL = 1 ; LDP = 12ns ; LDM = Fractional N) */

     adf5355_data[0]=0x1200;
     adf5355_data[1]=0x0067;          // ToDo: maybe there is a mistake here!

     CS_ADF5355_LOW;
     HAL_SPI_Transmit_DMA(&hspi2,&adf5355_data[0],2);//transfer
     while(HAL_SPI_GetState(&hspi2)== HAL_SPI_STATE_BUSY_TX);
     CS_ADF5355_HIGH;

     /* configure register 6 (gated bleed = 0 ; negative bleed = 1 ;
      * feedback select = 1 ; divider select = 1 ; CPbc = 15µA ;
      * Mute till lock = 0 ; RFoutB = On ; RFoutA = Off ; Output Power = -4dBm) */

     adf5355_data[0]=0x3500;
     adf5355_data[1]=0x8036;          // ToDo: maybe Output power is too weak and Register is double buffered!

     CS_ADF5355_LOW;
     HAL_SPI_Transmit_DMA(&hspi2,&adf5355_data[0],2);//transfer
     while(HAL_SPI_GetState(&hspi2)== HAL_SPI_STATE_BUSY_TX);
     CS_ADF5355_HIGH;

     /*DOUBLE BUFFERING!!!!!*/
     /* configure register 0 (AUTOCAL = 1 ; PrescalerValue = 1 ; INT = 214)  */
     adf5355_data[0]=0x0030;
     adf5355_data[1]=0x0D60;

     CS_ADF5355_LOW;
     HAL_SPI_Transmit_DMA(&hspi2,&adf5355_data[0],2);//transfer
     while(HAL_SPI_GetState(&hspi2)== HAL_SPI_STATE_BUSY_TX);
     CS_ADF5355_HIGH;

     /* configure register 5 (reserved! don't change!) */
     adf5355_data[0]=0x0080;
     adf5355_data[1]=0x0025;

     CS_ADF5355_LOW;
     HAL_SPI_Transmit_DMA(&hspi2,&adf5355_data[0],2);//transfer
     while(HAL_SPI_GetState(&hspi2)== HAL_SPI_STATE_BUSY_TX);
     CS_ADF5355_HIGH;

     /* configure register 4 (MUXOUT = Three-state ; RefDoubler = 0;
      * RDIV = 0 ; R Counter = 1 ; Doublebuffer = 0 ; CPcs = 0,9mA ;
      * RefMode = single ended ; Lvlselect = 3,3V ; PDp = 1 ; PWRDown = 0 ;
      * CPThree-state = 0 ; CounterReset = 0) */

     adf5355_data[0]=0x3000;
     adf5355_data[1]=0x8984;          // ToDo: maybe there is a mistake here!

     CS_ADF5355_LOW;
     HAL_SPI_Transmit_DMA(&hspi2,&adf5355_data[0],2);//transfer
     while(HAL_SPI_GetState(&hspi2)== HAL_SPI_STATE_BUSY_TX);
     CS_ADF5355_HIGH;

     /*DOUBLE BUFFERING!!!!!*/
     /* configure register 0 (AUTOCAL = 1 ; PrescalerValue = 1 ; INT = 214)  */
     adf5355_data[0]=0x0030;
     adf5355_data[1]=0x0D60;

     CS_ADF5355_LOW;
     HAL_SPI_Transmit_DMA(&hspi2,&adf5355_data[0],2);//transfer
     while(HAL_SPI_GetState(&hspi2)== HAL_SPI_STATE_BUSY_TX);
     CS_ADF5355_HIGH;

     /* configure register 3 (SDLoadReset = 0 ; PhaseResync = 0 ; PhaseAdjust = 0 ;
      * PhaseValue = 0) */

     adf5355_data[0]=0x0000;
     adf5355_data[1]=0x003;          // ToDo: maybe there is a mistake here!

     CS_ADF5355_LOW;
     HAL_SPI_Transmit_DMA(&hspi2,&adf5355_data[0],2);//transfer
     while(HAL_SPI_GetState(&hspi2)== HAL_SPI_STATE_BUSY_TX);
     CS_ADF5355_HIGH;

     /*DOUBLE BUFFERING!!!!!*/
     /* configure register 0 (AUTOCAL = 1 ; PrescalerValue = 1 ; INT = 214)  */
     adf5355_data[0]=0x0030;
     adf5355_data[1]=0x0D60;

     CS_ADF5355_LOW;
     HAL_SPI_Transmit_DMA(&hspi2,&adf5355_data[0],2);//transfer
     while(HAL_SPI_GetState(&hspi2)== HAL_SPI_STATE_BUSY_TX);
     CS_ADF5355_HIGH;

     /* configure register 2 (FRAC2 = 571 ; MOD2 = 2000) */
     adf5355_data[0]=0x9C77;
     adf5355_data[1]=0xFFF2;

     CS_ADF5355_LOW;
     HAL_SPI_Transmit_DMA(&hspi2,&adf5355_data[0],2);//transfer
     while(HAL_SPI_GetState(&hspi2)== HAL_SPI_STATE_BUSY_TX);
     CS_ADF5355_HIGH;

     /*DOUBLE BUFFERING!!!!!*/
     /* configure register 0 (AUTOCAL = 1 ; PrescalerValue = 1 ; INT = 214)  */
     adf5355_data[0]=0x0030;
     adf5355_data[1]=0x0D60;

     CS_ADF5355_LOW;
     HAL_SPI_Transmit_DMA(&hspi2,&adf5355_data[0],2);//transfer
     while(HAL_SPI_GetState(&hspi2)== HAL_SPI_STATE_BUSY_TX);
     CS_ADF5355_HIGH;

     /* configure register 1 (FRAC2 = 571 ; MOD2 = 2000) */
     adf5355_data[0]=0x0492;
     adf5355_data[1]=0x3A21;

     CS_ADF5355_LOW;
     HAL_SPI_Transmit_DMA(&hspi2,&adf5355_data[0],2);//transfer
     while(HAL_SPI_GetState(&hspi2)== HAL_SPI_STATE_BUSY_TX);
     CS_ADF5355_HIGH;

     /* configure register 0 (AUTOCAL = 1 ; PrescalerValue = 1 ; INT = 214) */
     adf5355_data[0]=0x0030;
     adf5355_data[1]=0x0D60;

     CS_ADF5355_LOW;
     HAL_SPI_Transmit_DMA(&hspi2,&adf5355_data[0],2);//transfer
     while(HAL_SPI_GetState(&hspi2)== HAL_SPI_STATE_BUSY_TX);
     CS_ADF5355_HIGH;
}

With this sequence I get a LO at 4,71394GHz at RFOUTB . Why?

I would really appreciate some help, because I don't see my fault here..

 

best regards

 

Benbjamin

Viewing all 51060 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>