A strange behavior

Hallo, I have made a small microcontroller based on microblaze. I have connected a differential 16 bit adc to my system. The adc takes input from a opamp for testing.

The system works well only if I measure voltage between chipselect of adc and gnd. In this way it shows every hex number in range: 0 to 7FFF (it is two complementer).

If not, I can see only 4-5 numbers of the acquisition range: FB, 1F1F, 3E3E,

7C7C.

Which trouble could produce a so strange behavior?

Many Thanks Marco

Reply to
Marco
Loading thread data ...

Look closely at the datasheet for the A/D converter. How do they say you should acquire a reading and how are you trying to acquire it?

3E3E,
Reply to
John_H

To start acquiring chipselect must go high for 1 clock cycle. At the falling edge the adc starts conversion. (it's falling edge sensitive). After 5 clock cycles the serial data out goes from Hi-Z state to 0. After 1 clock cycle it starts sending data through serial data out for 16 clock cycles. Then it goes into power down state and waits for a chipselect.

I have made a state machine which follows that. Into post-place simulation works well.

Marco

Reply to
Marco

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.