GPIO Analog - Digital Pins advice

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
Anonymous
Not applicable

Hi, 

   

I'm trying to read some sensors[QTR-8RC - https://www.pololu.com/docs/0J13/2] and then i got on and dead end...

   

Need some advice, the sensors need a 10us pulse for charging some capacitance, and the we read the cap discharge. I generate the pulses with a PWM and i can see the waveforms on an oscilloscope and they display correctly but only if i put the pin on "Open drain, drives high" 

   

Then I try to get the cap discharge signal to a comparator to get a pulse width proportional to sensor measurement.

   

Well.. after days of reading, i think i need another "pin driving" so i can "read" the signal with the comparator.

   

Came here to seek some advice, or if i can get another way of achieve the measurement of this sensors.

   

 

   

Thank you, and sorry to bother you!

0 Likes
1 Solution
Bob_Marlowe
Level 10
Level 10
First like given 50 questions asked 10 questions asked

No bothering. I would suggest you to do something with an output enable signal which will pit your cap loading into Hi-Z when sensing. OE is a property of the pin and you can feed it using your PWM signals.

   

 

   

Bob

View solution in original post

0 Likes
3 Replies
Bob_Marlowe
Level 10
Level 10
First like given 50 questions asked 10 questions asked

No bothering. I would suggest you to do something with an output enable signal which will pit your cap loading into Hi-Z when sensing. OE is a property of the pin and you can feed it using your PWM signals.

   

 

   

Bob

0 Likes
Anonymous
Not applicable

I tried with something similar, but if i change the pin configuration to Hi-Z the cap don't discharges... basically I need to read this "time of discharge" but i can only discharge it if its in "open drain" configuration. Maybe i'm messed up... any form to read this cap discharge and pulse it? have tried bidirectional pins... enabling digital input and digital output of one pin.. but not success.

0 Likes
Anonymous
Not applicable

Still going on with this problem... have to do this.

   

The procedure for using them is:
1. Make the I/O an ouput
2. Allow at least 10 us for the 10 nF capacitor to charge
3. Make the I/O an input
4. Measure the time for the capacitor to discharge by waiting for the I/O line to go low
 

   

I'm usign PSoC 5LP Kit CY8CKIT-059. I'll try to change the gpio on firmware like..

   

1. Strong drive output <- PWM 10us ton

   

2. High Z Dig <- Timer

   

I think it's the way to do it... but not sure.

0 Likes