PING ))) Sensor TTL Logic?
underworldman
Posts: 22
Hello,
I'm using PIC16f84 MCU and the ultrasonic PING ))) sensor from parallax. According to the manual, it produces TTL signal that can be read by any TTL uC. So, the real question is... What is supposed to be the delay between the low-high-low pulse to be output to the sensor, and how long does the sensor take to start up. Because i've noticed that when i power my application, the sensor takes some time before it blinks the activity LED. The other important thing i wanted to know is... when the sensor is active, does the led show status of receiving and sending signals? or does it just signal that the sensor just active?
Thanks in advance.
I'm using PIC16f84 MCU and the ultrasonic PING ))) sensor from parallax. According to the manual, it produces TTL signal that can be read by any TTL uC. So, the real question is... What is supposed to be the delay between the low-high-low pulse to be output to the sensor, and how long does the sensor take to start up. Because i've noticed that when i power my application, the sensor takes some time before it blinks the activity LED. The other important thing i wanted to know is... when the sensor is active, does the led show status of receiving and sending signals? or does it just signal that the sensor just active?
Thanks in advance.
Comments
Page 1 describes the activity LED as a burst indicator that comes on when the ultrasonic pulse is transmitted as shown on the timing diagram.
I'm using floating point to calculate distance, which is already a precise type in c. I'm running the MCU with the internal 8 MHz clock. Could that be a reason?
Post Edited (underworldman) : 5/16/2010 8:26:12 PM GMT
If your values are varying widely, there could be noise on the signal line from the PING. There could be some problem with the process of triggering the PING, then timing the pulse coming back from it. You could have some kind of programming error.
Pretty big difference shocked
Whats the best clock frequencey suitable to run this thing?
If you are using a hardware counter to time the pulse, and your detect loop is 17 cycles that would explain it.
Other than, that I don't know what would cause that.
Bean
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Use BASIC on the Propeller with the speed of assembly language.
PropBASIC thread http://forums.parallax.com/showthread.php?p=867134
March 2010 Nuts and Volts article·http://www.parallax.com/Portals/0/Downloads/docs/cols/nv/prop/col/nvp5.pdf
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
There are two rules in life:
· 1) Never divulge all information
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
If you choose not to decide, you still have made a choice. [noparse][[/noparse]RUSH - Freewill]
I think you're very right. Because the datasheet of the MCU says that
"When the internal clock source is selected the
TMR1H:TMR1L register pair will increment on multiples
of FOSC as determined by the Timer1 prescaler."
And the internal clock is 8 MHz. So, probably i'm getting readings as multiples of 8 or close to that. I'm confused a little. I should do a little more reading before i get back to the problem.