CM8880 DTMF decoding:How to "zero" memory after tone turns off
FlyingFishFinger
Posts: 461
Hello!
My application depends on the length of the DTMF tone for duration timings. However, it seems like the CM8880 always "remembers" the last tone recieved instead of showing a zero when no tone is present. I could always send a zero at the end of a transmission, but since these are most likely going to come from a human operator, he might forget, and also an extra tone messes up my timing scheme a bit.
Is there any way to tell the chip to show a zero when there is no tone instead of the last one?
Thanks
Rafael
Post Edited (flyingfishfinger) : 12/26/2005 10:47:46 PM GMT
My application depends on the length of the DTMF tone for duration timings. However, it seems like the CM8880 always "remembers" the last tone recieved instead of showing a zero when no tone is present. I could always send a zero at the end of a transmission, but since these are most likely going to come from a human operator, he might forget, and also an extra tone messes up my timing scheme a bit.
Is there any way to tell the chip to show a zero when there is no tone instead of the last one?
Thanks
Rafael
Post Edited (flyingfishfinger) : 12/26/2005 10:47:46 PM GMT
Comments
The datasheet states that pin 18, "ESt", goes HI with detection of a valid tone pair.· Can you modify your program to poll the status (i.e. monitor and make use) of ESt?
-- PJA --
What I'm doing now is actually monitoring the data lines in a loop (how stupid, but then I'm new to the world of chip control). My application is remote control which checks for the lenght of the tone and activates corresponding equipement for the lenght of the tone.
Thanks
Rafael
-H-bridge: 2 pins (speed,dir)
-LCD driver: 1 pin (serial)
-CM8880: 8 pins with ESt, 7 pins without
-2x ACD0831: 4 pins (sharing DO and CLK)
-24LC256 EEPROM: 2 pins (I2C)
If anyone has any suggestion as to how to decrease pin usage, I'd be glad to hear it.
Or, back to my question, to keep the CM8880 at 7 pins.
Thanks
Rafael
Couldn't you combine the 4 bit address with a serial to parallel chip??? Would it be possible to do the same for all 8 lines
of the CM8800 ????
Bob N9LVU
Never mind that. I checked, the 4-bit ones need more than 4 pins anyway.
Also, I'm running low on board space, and my programming knowledge is very limited, too.
Rafael
Post Edited (flyingfishfinger) : 12/26/2005 11:12:27 PM GMT
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Chris Savage
Parallax Tech Support
csavage@parallax.com
So, fff, how many buttons/DTMFs are you using?· If you are using 8 or less, then just use D0,1,2 and then you can use "ESt".· Of course, you'll have to modify your polling routine to disqualify 0000, 1000-1111.
Post Edited (PJ Allen) : 12/27/2005 12:20:32 AM GMT
Could you use 1-wire???
www.maxim-ic.com/quick_view2.cfm/qv_pk/3818/ln/
Bob N9LVU
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Chris Savage
Parallax Tech Support
csavage@parallax.com
So what I'll do is move the EEPROM to AUXIO, I noticed I do have a few pins free over there (I hadn't noticed) that are not connected to the board expansion header, then I'll use the ESt.
Thanks everyone
Rafael
I have worked with the CM8880 in the past, this link might be helpful:
http://forums.parallax.com/showthread.php?p=466523
Mike
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
"OEM NMEA GPS Module" Now available on ebay for only $19.99, FREE shipping until 2006!
Product web site: http://www.allsurplus.net/Axiom/
With it you would not have to monitor "ESt", and the output would always be 0000 when "ESt" is LO.· [noparse][[/noparse] But detection of DTMF-D would be in doubt. ]