1) I am not sure what is causing cross-coupling between the breath pressure analog input and the reference voltages. One method to try out would be to use a buffer (a unity gain PGA or Voltage Follower) at the sensor input before applying it to the comparator.
2) Voltage less than Vdda can be applied as input to the Analog Mux. Can you please elaborate on what discharge resistor is?
3) To use dithering method to increase the resolution of the DAC, the data source of the VDAC has to be chosen as 'DAC Bus', but there is only 1 DAC bus, hence multiple VDACs cannot have independant hardware data sources.
Hi, thanks for the reply, here's some more clarifications:
1. The breath pressure sensor is going into a PGA block already. It's the sawtooth voltage that is going into the comparitors and it's the comparitor reference voltages that seem to be getting affected by the voltage on the breath pressure. So I'm not sure which signal I would try to buffer.
2. I'm actually using the Mux as a current-carrying switch (maybe this isn't supposed to be done, since I noticed that I couldn't route the DAC outputs directly to the Mux; I had to route it out to pins and then connect to another pin to route back to the Mux. I am currently using 2 DAC's, one to charge the sawtooth integration capacitor and one to discharge it. In order to increase frequency resolution, I was thinking to use the 2 DAC's together to charge it (using different current r ranges for eac) and t hen discharge it through a resistor. But if the resistor is too small, then the current may be too high. Or is this design a violation of the restrictions of the chip?
1)Can you please tell what is used as a reference for the comparator? If it is a voltage divider, then it must be ensured that the ground which it is connected to should be isolated from high current carrying paths. Else there will be cross-talk between two points.
2) Also, to reduce the cross talk, you can keep the pins (Breath pressure sensor input and reference) far apart (atleast not one beside the other).
3) You were not able to route through the analog mux because you must have chosen Hardware Analog Mux. Hardware Mux requires that the input channels be connected to pins. If you choose Software Analog Mux, then you can connect DAC directly without any Pin in between. You can use APIs to select the channel.
4) Are you using VDAC or IDAC to charge the capacitor? If you need symmetric waveform, then it would be advisable to use the single IDAC to both charge and discharge the capacitor (using source and sink respectively).
Charging capacitor using IDAC will result in linear waveform.
If VDAC is used, it will not be linear because of the resistor associated with the VDAC component.
If two IDACs are used, one for charging and other for discharging, then slight variation in the current capability of the IDACs (which is not uncommon), then there will be accumulation of residual charge on the capacitor which might bring about an offset.
I would discuss about the dithering of the DAC you talking about in one of the previous questions. It is right that the DAC bus is just one that has to be shared between 4 DAC blocks. But you have to understand that the DAC bus is a data bus can be multiplexed onto the 4 DAC blocks with the use of strobe signal.
If you would want to use the same DAC bus on multiple DACs you can have different data coming on the DAC bus but the DAC corresponding to the incoming data getting strobed at the exact point of time. For this you can use the external strobe signal in the DAC component.
Hi, thanks for the extra info.
Regarding the comparitors, one of them is using 1.024V as the '-' reference and the other is using Vdda/2 as '-' reference and the capacitor ramp voltage. It's the Vdda/2 reference voltage that's changing from the other unrelated input changing. I do have my complete design files and schematics uploaded if you would like to refer to them (Touch-sensitive recorder). I'm not sure how to isolate its ground from the other ones, and I don't think the breath analog in should be a high-current signal (though it is going into a PGA that also uses Vdda/2 as its reference voltage), unless I have a problem with my design. I did try using a different analog input pin but then it failed to route the design.
I am using IDAC's to charge/discharge the capacitor, and indeed I do get the expected linear ramp. I can't use the same one for both discharge and charge since the direction flag is only settable by software and not hardware and I'm using hardware logic to toggle between charge and discharge in order to minimize quantization errors.
Hi, just a bit of followup info. I did a test using the on-board pot voltage as the comparator voltage, and it seems to take care of the problem. So at least for now, I think that's good enough, as long as the pot doesn't get bumped!