Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

DTMF dialing MT8880 interface with PIC16F877A programming problem...

Status
Not open for further replies.

lazyhut

Member level 1
Joined
Feb 14, 2011
Messages
33
Helped
1
Reputation
2
Reaction score
1
Trophy points
1,288
Activity points
1,467
Hi, I'm currently doing a project using PIC16f877a interfacing with MT8880CE to produce a DTMF signal and make a dial out through telephone line. I've tried so many times but it still doesnt generate any DTMF tone. Is it because of my coding? I did follow the datasheet of MT8880 but it still doesnt work. Please HELP!!!

Circuit connection from PIC to MT8880:
RB0 = D0
RB1 = D1
RB2 = D2
RB3 = D3
RB4 = Read/Write
RB5 = RS0
RB6 = CS

Here's my coding in C language:

Code:
void main() {
TRISB = 0;

while(1){
portb = 0x2d;         //Write to Control Register A
    delay_ms(250);

portb = 0x20;         //Write to Control Register B(burst mode)
    delay_ms(250);

portb = 0x0a ;         //Write to Transmit Data Register(digit 0)
    delay_ms(250);

portb = 0x30 ;         //Read the Status Register
    delay_ms(250);

portb = 0x01 ;         //Write to Transmit Data Register(digit 1)
    delay_ms(250);

portb = 0x30 ;         //Read the Status Register
    delay_ms(250);

portb = 0x06 ;         //Write to Transmit Data Register(digit 6)
    delay_ms(250);

         }

}
 

Post your full circuit diagram and code, so that some one can find out what is going wrong
 

Post your full circuit diagram and code, so that some one can find out what is going wrong

11111111111111.JPG

coding at above
 
Last edited:
anyone can help me to solve this problem ?
 

Your sequence seems to be described in datasheet, but you have to start the software reset only after 100ms.

Include a delay for say200ms at the startup
 

Your sequence seems to be described in datasheet, but you have to start the software reset only after 100ms.

Include a delay for say200ms at the startup

hi expert, i not so understand...
can u edit my coding? i will test it..

by the way,without the PIC i cant even manually control the mt8880 to send dtmf tone...izzit the circuit got problem ?
 

anyone can help me?


Dont keep asking.. You have to do your homework MOD
 

mod..i really cant find any info from internet already = =" i already tried my best to solve it...but still cant work...really headache...
i just want to check whether my circuit is correct or not...zz
 

without the PIC i cant even manually control the mt8880 to send dtmf tone...izzit the circuit got problem ?
 

Did you have any sucess yet??
I have the same problem with DTMF tones sending by PIC16F877.
If your cct works , can nyou pls help me to do the same ..

THX
 

You can try one path line (TX or RX) at a time. And check w/c path is working or not working at all. For Transmission of DTMF, if still not working, you can try coupling capacitor from tone to the transformer.
 

First you have to set your hardware. When manually setting input to tone generator, it shoud generate tone at its output. You can check it with signal tracer. You aso need to amplify the tone to make it compatible with line requirment. If you attach a phone in parallel to line , you shoud hear a loud tone. IC maybe working but as out put is not amlified, you can,t haer the tone. A single transistor stage can do the required amplification.
 

Status
Not open for further replies.

Similar threads

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top