ADF4372
Recommended for New Designs
The ADF4372 allows implementation of fractional-N or integer-N phase-locked loop (PLL) frequency synthesizers when used with an external loop filter and...
Datasheet
ADF4372 on Analog.com
Hi OlvertNygren ,
Could you please provide some more details to clarify what GPIO controls you are referring to?
If you could provide a screenshot of your ACE application, as well as the version number of your ADF4372 plug-in that would help.
The version number can be found in the ACE plug-in manager.
Thanks,
Eoin
Hi Eoin!
Im using ACE version 1.30.3323.1470 and ADF4372 plugin version 1.2020.5500.
I failed to upload screenshots ... could I e-mail you some pictures?
Clicking in the GUI gives the impression the port are set ok even though they are not.
I have used wireshark to see if any USB traffic is generated by the clicking (or replaying recorded macros) ... but there is none.
When I configure my ADF4372 I see a lot of usb traffic.
Thanks!
Hi OlvertNygren ,
Thank you for the details,
There are no GPIO controls in the ADF4372 plug-in itself, however there is a view of the SDP-S that has GPIO controls that are non-functional, shown below:
If this is the GPIO control you are referring to, unfortunately it is non-functional and was for testing only, it was not meant to be released publicly, apologies for this.
However, if you do want to control the GPIO pins on the SDP-S via remoting, it can be done using the WriteGPIO method, which is documented in the Remoting API Help that can be accessed by clicking the ACE help button on the bottom left, opening the Application Resources dropdown and selecting the Remote Control Interface Documentation option.
This will open a new window, if you select the search tab and search for GPIO you will see the available methods and their parameters. Note that some will only affect software values and some will affect both hardware and software values. In your case, it sounds like you are looking for the WriteGPIO method.
Hopefully this helps, let me know if you have further questions,
Thanks
Eoin
Thanks!
You are right ... thats the control I was referring to.
However I find the help pages a bit brief and I fail to use the WriteGPIO method in the remoting console.
I run:
set context \System\Subsystem_1\SDP-S
help run WriteGpioDirection
Where do I find the correct values for [PortName][PinName] and [Data]?
I tried with something like this:
> set context \System\Subsystem_1\SDP-S
Context set to \System\Subsystem_1\SDP-S
> run WriteGpioDirection "GPIO","0","true"
ERROR> Operation failed in ACE:
+ Object reference not set to an instance of an object.
>
Could you possibly assist with the a corrects set of commands and arguments to set GPIO 0 as output and high?
Thanks again!
EoinM Do you have any more information that may help me? I'm running out of time for my project ... it would be highly appreciated.
Hi OlvertNygren ,
Apologies for the delayed reply,
I have looked in to this further, unfortunately it does not seem like you will be able to control the GPIOs of the SDP-S via remoting with the ADF4372, although there are pins defined, which are shown in the view you had mentioned, the underlying methods to actually write the pins are not defined.
As I had mentioned, the view with the GPIO pins in the SDP-S was intended to be a test view only. All this allows is for software pin definitions to be changed, but the part itself needs to contain the method definition to actually write these changes to the SDP-S hardware, which is not defined in the ADF4372 unfortunately.
Just to clarify and provide the commands in case you or someone else reading this thread are trying to achieve this with another part, you can use the following to set the pin data in the SDP-S context, then change to the context of the chip to use the @WriteGpios context transaction if it is present
RUN SetBoolParameter "gpio-4-data-sdp-con-a", False, -1
RUN SetBoolParameter "gpio-4-direction-sdp-con-a", False, -1
Then change to the context of the chip you are using (typically "set context 0" will achieve this)
Run @WriteGpios
If this transaction fails, it is likely the the GPIO transaction has not been defined for this part. You can tell for sure by running "help run context" from the chip context, if @WriteGpios is not present in the output list then this will not work for that part. This is the case for the ADF4372 unfortunately.
Additionally, if the @WriteGpios transaction is present, you can use the previously suggested command as follows:
RUN WriteGpioDirection "Con A", "GPIO 0 Direction, Con A", "true"
Apologies again that this will not work for your use case,
Let me know if you have any further questions,
Thanks
Eoin