Project: PIC microcontroller-based DTMF phone dialer

Thanks much, Alex...This is a very creative design. I am a student and in research of DTMF. I want try program the assembly code you have into PIC16F690 but i don't have the PICkit 2 Starter Kit you recommended. I just have a Leap PSTART USB programmer which programs assembly code for PIC of 8, 18, 28 and 40 pins. Can anyone here teach or suggest a way on how to edit this code such that it can program the PIC16F877A (40pin) so that i can use the programmer i have. Sorry because i am not good in assembly language. Another qs, can i use the AX141 transformer as a replacement as shown in avtanski's schematic. I get this idea from circuit from as attached. Thanks all.



Joined Jul 17, 2007
Have a look at this Microchip Application Note and source code:
D/A Conversion Using PWM and R-2R Ladders to Generate Sine and DTMF Waveforms

Your PIC16F877A has plenty of I/O pins to create an R-2R ladder output. You'll need to use the 3.57945MHz color burst crystal referenced in the App Note to get the DTMF tones the correct frequencies.

The big advantage is that you won't need to spend an extra $10 or more on a DTMF generator IC that probably won't be available for long anyway, as microcontrollers have made them obsolete.

Your challenge will be to port Alex's code over to the PIC16F877A, and merge it with the DTMP.ASM source code from the AN655.ZIP file.

Most of the hard part is done, really - you should be able to learn a lot just from looking at the source code and documentation. Everything else is in the PIC16F87xA datasheet, programming guide, and your compiler's help files.