Jump to content
  • 0

1.8 V (SPI + Digital In + Digital Out) with Digital Discovery or Analog Discovery 2


Nico G

Question

I want to do the following with WaveForms SDK:

  • communicate through 1.8 V SPI
  • read 2 digital 1.8 V inputs
  • generate a digital 1.8 V output
  • generate a digital clock of 32768 Hz (low level 0 V and high level 1.8 V)

Is this possible with a Digital Discovery or with an Analog Discovery 2 (or both)?

I wanted to use an Analog Discovery 2, but I think I cannot set the digital voltage to 1.8 V (it is always 3.3 V).

On the other hand, I do not know if a Digital Discovery does the trick, since:

Quote

The protocols use the Digital-In/Out resources to create various communication protocols. Only one of the protocols can be used at a time and no digital-io or out other functions.

(Source: https://reference.digilentinc.com/reference/software/waveforms/waveforms-sdk/reference-manual#digital_protocols)
This means that I cannot communicate through 1.8 V SPI and read digital inputs/write digital outputs; am I right?

 

Link to comment
Share on other sites

3 answers to this question

Recommended Posts

Hi @Nicolas Gammarano

The DD digital voltage is adjustable between 1.2 and 3.3V. The input logic threshold changes accordingly.
With AD the digital output is always 3.3V The 5th and 7th configuration makes the input logic threshold ~0.5V suitable inspecting low voltage signals.

The protocols use the digital-in and -out resources of the device, so SPI and capture with digital-in or pattern generator with digital-out can't be used at the same time, only sequential. The 32kiHz clock signal generation would require digital-out so this can't be generated with the same device at the same with with SPI transfers.

The static/digital-io can be used together with protocols on the unused pins. Note the I2C with clock stretching option uses addition DIO lines to keep track of states.

Link to comment
Share on other sites

Thank you for the quick reply @attila.

So with a Digital Discovery, I can

  • communicate through 1.8 V SPI (with function FDwfDigitalSpiWriteRead16)
  • generate a digital 1.8 V output (with function FDwfDigitalIOOutputSet)
  • read 2 digital 1.8 V inputs (with functions FDwfDigitalIOStatus + FDwfDigitalIOInputStatus)

All these 3 simulaneously?

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...