A strange behavior

Sep 01, 2005 2 Replies

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


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,

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

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required